diff --git a/1.txt b/1.txt
deleted file mode 100644
index 4db7b2a..0000000
--- a/1.txt
+++ /dev/null
@@ -1,18 +0,0 @@
-orlova@mokselle.ru
-arhipov@mokselle.com
-robert@mokselle.ru
-nemtsev@mokselle.ru
-grebennikova@mokselle.com
-a.rybalov@mokselle.ru
-isaev@mokselle.ru
-kravchenko@mokselle.ru
-volosnikov@mokselle.com
-korneva@mokselle.com
-ivanova@mokselle.ru
-shilin@mokselle.com
-grishchenko@mokselle.ru
-iskusnov@mokselle.ru
-dolya@mokselle.com
-dolia@mokselle.ru
-vorobjova@mokselle.com
-plavko@mokselle.ru
diff --git a/_practice/queue.py b/_practice/queue.py
deleted file mode 100644
index 3cb0ce1..0000000
--- a/_practice/queue.py
+++ /dev/null
@@ -1,11 +0,0 @@
-queue = tuple(i for i in range(0, 99999))
-point = 0
-
-
-def handler():
- print()
-
-
-def switch():
- for count in queue:
- handler()
\ No newline at end of file
diff --git a/_tools/__init__.py b/_tools/__init__.py
deleted file mode 100644
index e69de29..0000000
diff --git a/_utils/1.txt b/_utils/1.txt
index e044867..9b9f02c 100644
--- a/_utils/1.txt
+++ b/_utils/1.txt
@@ -1,71 +1,71 @@
-einzheev@itl.com.kz
-dmitry.sedov@inbox.ru
-ivanpokalyuk@gmail.com
- baho9208@mail.ru
-feyorz@gmail.com
-waximov@gmail.com
-alvo_05@mail.ru
-redkuk@gmail.com
-petrichv@gmail.com
-tagfelix500@gmail.com
- ikey0172@mail.ru
-gb.gayane@gmail.com
-eco.pun@gmail.com
-sanzharsurshanov@gmail.com
-dennis.loboda@gmail.com
-webar4i@gmail.com
-zvetaan@gmail.com
-svelavs@gmail.com
-art@magicdesign.ru
-mbf23tb@gmail.com
-andrievskiydmitriy@gmail.com
-pulya7@gmail.com
-mikhail.a.gusev@gmail.com
-elena@citrus-soft.ru
-kropev@rarus.ru
-nikonorov@labizum.ru
-gulin@labizum.ru
-vladfedorovich@gmail.com
-Gfgaliya@gmail.com
-romqa.guard@gmail.com
- srfedotov@gmail.com
-vinjuli4ka2008@rambler.ru
-kuzzzal@gmail.com
-zvetaan@gmail.com
-lepon@bk.ru
-y.robocopov@gmail.com
-enchervinskaya@gmail.com
-volokos@gmail.com
-mtsalka@scnsoft.com
-dubnyak404@gmail.com
-o.tibirkova@yandex.ru
-a.nikiforov@uplab.ru
-dmytriy.suslov@gmail.com
-s.shtukaturka@gmail.com
-alex.dntv@gmail.com
-m.chelyadenkov@gmail.com
-timur.shulgin@infocraft.ru
-sp.rusanov@gmail.com
-zyabra@gmail.com
-timakova@fistashki.org
-aknoraz@deloitte.ru
-sesyunin@realweb.ru
-bravo.johnny@yandex.ru
-didenko@braind.agency
-whysecondjuly@gmail.com
-yuzik.74@gmail.com
-art@amado-id.ru
-9330733@mail.ru
-ek.design11@gmail.com
-danila.zarechnev@gmail.com
-kira.yakuhina@gmail.com
-geiz@yandex.ru
-tuning_a@mail.ru
-suonarama@gmail.com
-abrakadavr@gmail.com
-irina_z_z@mail.ru irina.huchak@gmail.com
-ha@brightstudio.ru
-smorozov@qsoft.ru
-a.reva@qsoft.ru
-d.pogodin@itech-group.ru
+einzheev@itl.com.kz
+dmitry.sedov@inbox.ru
+ivanpokalyuk@gmail.com
+ baho9208@mail.ru
+feyorz@gmail.com
+waximov@gmail.com
+alvo_05@mail.ru
+redkuk@gmail.com
+petrichv@gmail.com
+tagfelix500@gmail.com
+ ikey0172@mail.ru
+gb.gayane@gmail.com
+eco.pun@gmail.com
+sanzharsurshanov@gmail.com
+dennis.loboda@gmail.com
+webar4i@gmail.com
+zvetaan@gmail.com
+svelavs@gmail.com
+art@magicdesign.ru
+mbf23tb@gmail.com
+andrievskiydmitriy@gmail.com
+pulya7@gmail.com
+mikhail.a.gusev@gmail.com
+elena@citrus-soft.ru
+kropev@rarus.ru
+nikonorov@labizum.ru
+gulin@labizum.ru
+vladfedorovich@gmail.com
+Gfgaliya@gmail.com
+romqa.guard@gmail.com
+ srfedotov@gmail.com
+vinjuli4ka2008@rambler.ru
+kuzzzal@gmail.com
+zvetaan@gmail.com
+lepon@bk.ru
+y.robocopov@gmail.com
+enchervinskaya@gmail.com
+volokos@gmail.com
+mtsalka@scnsoft.com
+dubnyak404@gmail.com
+o.tibirkova@yandex.ru
+a.nikiforov@uplab.ru
+dmytriy.suslov@gmail.com
+s.shtukaturka@gmail.com
+alex.dntv@gmail.com
+m.chelyadenkov@gmail.com
+timur.shulgin@infocraft.ru
+sp.rusanov@gmail.com
+zyabra@gmail.com
+timakova@fistashki.org
+aknoraz@deloitte.ru
+sesyunin@realweb.ru
+bravo.johnny@yandex.ru
+didenko@braind.agency
+whysecondjuly@gmail.com
+yuzik.74@gmail.com
+art@amado-id.ru
+9330733@mail.ru
+ek.design11@gmail.com
+danila.zarechnev@gmail.com
+kira.yakuhina@gmail.com
+geiz@yandex.ru
+tuning_a@mail.ru
+suonarama@gmail.com
+abrakadavr@gmail.com
+irina_z_z@mail.ru irina.huchak@gmail.com
+ha@brightstudio.ru
+smorozov@qsoft.ru
+a.reva@qsoft.ru
+d.pogodin@itech-group.ru
lemma.ka@gmail.com
\ No newline at end of file
diff --git a/_utils/2.txt b/_utils/2.txt
index 5b27483..a7a573c 100644
--- a/_utils/2.txt
+++ b/_utils/2.txt
@@ -1,117 +1,117 @@
-makspirogov@gmail.com
-velesart@gmail.com
-dmitrij.pastushenko@gmail.com
-pavlov@complexsys.ru
-ceo@pride-m.ru
-spinngewebex@gmail.com
-an_b@inbox.ru
-ilyuha86@gmail.com
-juniperland@gmail.com
-egor@yugs.ru
-kashlatch@gmail.com
-niozuki@mail.ru
-Gnatovych@gmail.com
-sahem@mail.ru
-zfalevich@gmail.com
-lalaviva@yandex.ru
-z.ilnurri@gmail.com
-mmaslennikov@mail.ru
-info@wbest.ru
-arthur.subbota@gmail.com
-goha@kiosov.com
-Igorfedorenko@mail.ru
-annazayidova@gmail.com
-anton.reznichenko@gmail.com
-me@flexure.ru
-es@vipro.ru
-km@colary.ru
-kiselev_s_l@mail.ru
-a.reznichenko@clientlab.ru
-soldakov.p@yandex.ru
-ap@ds-p.ru
-702752@gmail.com
-shpakova@sebbia.com
-skugarov@sebbia.com
-taranov@sebbia.com
-rusakovevgen@gmail.com
-frostoffman@gmail.com
- a.khadeko@gmail.com
-trogatyuk@gmail.com
-hello@aokunev.com
-dengenich@gmail.com
-Alexpozdnyakof@gmail.com
-korobajr@ya.ru
-pavlov@complexsys.ru
-elizaveta.bandalet@gmail.com
-deniskondrashov@yahoo.com
-prokosha10@gmail.com
- i.flinn@yandex.ru
-s.darbaidze@inostudio.com
-zhurakoff@gmail.com
-krylya@inbox.ru
-146133@gmail.com
-i.flinn@yandex.ru
-sasha.melbourne@gmail.com
-tiano_taurus747@mail.ru
-hip-hop-org@yandex.ru
-j.tolkova@yandex.ru
-jaglin@itsoft.ru
-den.volchkevich@gmail.com
-yakimov.dmitriy@gmail.com
-994677@mail.ru
-rumbeshta@userstory.ru
-ylkin_list@mail.ru
-salofoot@fermastudio.ru
-smiley1776@gmail.com
-info@darneo.ru
-egor@studiofact.ru
-alevtina.i.danilova@gmail.com
-puponina.irina@gmail.com
-yevseev@mail.ru
-ekde@wide-web.spb.ru
-corpas@gmail.com
-nitrohlorid@gmail.com
-kayl24brof@gmail.com
-skovalska@mail.ru
-Dmitry.eremin7@gmail.com
-Nikolebedev@mail.ru
-ishulga86@gmail.com
-bobafas@gmail.com
-kalina531345@gmail.com
-dsgn.shots@gmail.com
-dsukhanova@gmail.com
-kizilov.s@gmail.com
-zlk.marjana@gmail.com
-nava011235@gmail.com
-i.shymanskyi@gmail.com
-anastasy.petrenko87@gmail.com
-dinozavrix@gmail.com
-yana.berezhnaya999@gmail.com
-person.ira@gmail.com
-bershonok@gmail.com
-vivi_bvo@mail.ru
-lens2002@gmail.com
-ohmeinkot@gmail.com
-d22s@ya.ru
-masha49@yandex.ru
-biz.trp@gmail.com
-leo55506@gmail.com
-ksenia.vitkova@gmail.com
-e.poberezhnik@artw.ru
-alexzarkov@gmail.com
-ekde@wide-web.spb.ru
-vemelin@gmail.com
-gausf2@gmail.com
-vd@wearewowagency.com
-va@wearewowagency.com
-domrachv@gmail.com
-ad@wearewowagency.com
-jalalovna@yandex.ru
-mohov-g@yandex.ru
-st.wasp@yandex.ru
-Irina.lisofa@gmail.com
-Kornblumchen@yandex.ru
-albytime@gmail.com
-as.plyaskin@gmail.com
-trunovaon@gmail.com
+makspirogov@gmail.com
+velesart@gmail.com
+dmitrij.pastushenko@gmail.com
+pavlov@complexsys.ru
+ceo@pride-m.ru
+spinngewebex@gmail.com
+an_b@inbox.ru
+ilyuha86@gmail.com
+juniperland@gmail.com
+egor@yugs.ru
+kashlatch@gmail.com
+niozuki@mail.ru
+Gnatovych@gmail.com
+sahem@mail.ru
+zfalevich@gmail.com
+lalaviva@yandex.ru
+z.ilnurri@gmail.com
+mmaslennikov@mail.ru
+info@wbest.ru
+arthur.subbota@gmail.com
+goha@kiosov.com
+Igorfedorenko@mail.ru
+annazayidova@gmail.com
+anton.reznichenko@gmail.com
+me@flexure.ru
+es@vipro.ru
+km@colary.ru
+kiselev_s_l@mail.ru
+a.reznichenko@clientlab.ru
+soldakov.p@yandex.ru
+ap@ds-p.ru
+702752@gmail.com
+shpakova@sebbia.com
+skugarov@sebbia.com
+taranov@sebbia.com
+rusakovevgen@gmail.com
+frostoffman@gmail.com
+ a.khadeko@gmail.com
+trogatyuk@gmail.com
+hello@aokunev.com
+dengenich@gmail.com
+Alexpozdnyakof@gmail.com
+korobajr@ya.ru
+pavlov@complexsys.ru
+elizaveta.bandalet@gmail.com
+deniskondrashov@yahoo.com
+prokosha10@gmail.com
+ i.flinn@yandex.ru
+s.darbaidze@inostudio.com
+zhurakoff@gmail.com
+krylya@inbox.ru
+146133@gmail.com
+i.flinn@yandex.ru
+sasha.melbourne@gmail.com
+tiano_taurus747@mail.ru
+hip-hop-org@yandex.ru
+j.tolkova@yandex.ru
+jaglin@itsoft.ru
+den.volchkevich@gmail.com
+yakimov.dmitriy@gmail.com
+994677@mail.ru
+rumbeshta@userstory.ru
+ylkin_list@mail.ru
+salofoot@fermastudio.ru
+smiley1776@gmail.com
+info@darneo.ru
+egor@studiofact.ru
+alevtina.i.danilova@gmail.com
+puponina.irina@gmail.com
+yevseev@mail.ru
+ekde@wide-web.spb.ru
+corpas@gmail.com
+nitrohlorid@gmail.com
+kayl24brof@gmail.com
+skovalska@mail.ru
+Dmitry.eremin7@gmail.com
+Nikolebedev@mail.ru
+ishulga86@gmail.com
+bobafas@gmail.com
+kalina531345@gmail.com
+dsgn.shots@gmail.com
+dsukhanova@gmail.com
+kizilov.s@gmail.com
+zlk.marjana@gmail.com
+nava011235@gmail.com
+i.shymanskyi@gmail.com
+anastasy.petrenko87@gmail.com
+dinozavrix@gmail.com
+yana.berezhnaya999@gmail.com
+person.ira@gmail.com
+bershonok@gmail.com
+vivi_bvo@mail.ru
+lens2002@gmail.com
+ohmeinkot@gmail.com
+d22s@ya.ru
+masha49@yandex.ru
+biz.trp@gmail.com
+leo55506@gmail.com
+ksenia.vitkova@gmail.com
+e.poberezhnik@artw.ru
+alexzarkov@gmail.com
+ekde@wide-web.spb.ru
+vemelin@gmail.com
+gausf2@gmail.com
+vd@wearewowagency.com
+va@wearewowagency.com
+domrachv@gmail.com
+ad@wearewowagency.com
+jalalovna@yandex.ru
+mohov-g@yandex.ru
+st.wasp@yandex.ru
+Irina.lisofa@gmail.com
+Kornblumchen@yandex.ru
+albytime@gmail.com
+as.plyaskin@gmail.com
+trunovaon@gmail.com
yuri.a.k.design@gmail.com
\ No newline at end of file
diff --git a/_utils/check_lesson_open_near_homework.py b/_utils/check_lesson_open_near_homework.py
index 1c000b4..8965481 100644
--- a/_utils/check_lesson_open_near_homework.py
+++ b/_utils/check_lesson_open_near_homework.py
@@ -3,33 +3,45 @@ import os
import django
import sys
import datetime
-
+print(1)
start = datetime.datetime.now()
sys.path.append("/var/www/projects/codemy/")
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "lms.settings")
django.setup()
+print(2)
from courses.models import CourseMap
from journals.models import TeacherJ, LessonJ, HomeworkJ, HomeworkTry, CourseThemeJ
-
# Получить все журналы, где начато обучение
-for journal in TeacherJ.objects.filter(status='W').order_by('-id'):
- if HomeworkTry.objects.filter(parent__parent__parent=journal).exists():
+print(3)
+last = TeacherJ.objects.filter(status='W').order_by('-id').last().id
+print(4)
+
+for journal in TeacherJ.objects.filter(id=26933).order_by('-id'):
+ print(journal.id)
+ if HomeworkTry.objects.filter(material__course__id=journal.course.id, student__id=journal.student.id).exists():
+ print('4a')
hw = int(CourseMap.objects.get(
homework=HomeworkTry.objects.filter(parent__parent__parent=journal).order_by('id').last().material).sort)
- before = []
+ print(hw)
for i in LessonJ.objects.filter(parent__parent=journal):
- if int(CourseMap.objects.get(lesson=i.material).sort):
+ if int(CourseMap.objects.get(lesson=i.material).sort) > hw:
i.date = None
i.f_date = None
i.success = False
i.save()
else:
- i.saw_this()
+ try:
+ i.saw_this()
+ except Exception as e:
+ print(e)
+ print(i)
+
for ct in CourseThemeJ.objects.filter(parent=journal):
if LessonJ.objects.filter(parent=ct).count() == LessonJ.objects.filter(parent=ct, date=None).count():
ct.date = None
ct.save()
-for i in HomeworkJ.objects.filter(f_date=None).exclude(date=None):
- i.open_next()
+print(5)
+#for i in HomeworkJ.objects.filter(f_date=None).exclude(date=None):
+# i.open_next()
diff --git a/_utils/clean_twice_journals.py b/_utils/clean_twice_journals.py
index 5ef0cd1..89a7398 100644
--- a/_utils/clean_twice_journals.py
+++ b/_utils/clean_twice_journals.py
@@ -66,7 +66,7 @@ for _user in User.objects.all():
_ft = datetime.datetime.now()
_about_time.append((_ft - _st).microseconds)
_average = (((_all - _n) * (sum(_about_time) / len(_about_time)))/1000000)/60
- show_progress(_all, _n, post=' // {0:6.4} мин '.format(_average))
+ show_progress(_all, _n, post=' // "Удаление дуближей журналов" // Расчетное оставщееся время Этапа: {0:6.4} мин '.format(_average))
_n += 1
finish = datetime.datetime.now()
diff --git a/_utils/get_big_fake_module.py b/_utils/get_big_fake_module.py
index 146b883..8ac9fb8 100644
--- a/_utils/get_big_fake_module.py
+++ b/_utils/get_big_fake_module.py
@@ -18,7 +18,7 @@ _themes = {}
for i in CourseTheme.objects.filter(course__id=20):
_themes[i.sort] = 0
- for _j in CourseThemeJ.objects.filter(material=i, parent__progress__gt=1, f_date=None,
+ for _j in CourseThemeJ.objects.filter(material=i, parent__progress__gt=1, f_date=None,
success=False).exclude(date=None):
if Bill.objects.filter(user=_j.student, status='F', service__course=20).exists():
_themes[i.sort] += 1
diff --git a/_utils/get_reports.py b/_utils/get_reports.py
index dab2935..931f949 100644
--- a/_utils/get_reports.py
+++ b/_utils/get_reports.py
@@ -1,4 +1,3 @@
-# coding=utf-8
# Получить список файлов папки reports
# Выдать выбор отчета
# Запустить файл
diff --git a/_utils/lessons_comments_hc.xml b/_utils/lessons_comments_hc.xml
index 6b5e94e..375fc1d 100644
--- a/_utils/lessons_comments_hc.xml
+++ b/_utils/lessons_comments_hc.xml
@@ -86,16 +86,16 @@
Я уже писал об этом и после четвёртого урока, и после пятого, но рассинхронизация становится всё хуже и хуже. Что-то понять, когда ты видишь одно, а слышишь совсем другое - это просто взрыв мозга. Кроме того, не было ни слова сказано о хотя это было анонсировано в описании урока. Или только я этого не услышал? Я уже писал об этом и после четвёртого урока, и после пятого, но рассинхронизация становится всё хуже и хуже. Что-то понять, когда ты видишь одно, а слышишь совсем другое - это просто взрыв мозга. Кроме того, не было ни слова сказано о хотя это было анонсировано в описании урока. Или только я этого не услышал? К сожалению, на 30 минуте просто взял и закрыл. и стал смотреть подобные видео уроки на ютубе. Просто невозможно смотреть из-за этого рассинхрона. Очень жаль. Писали выше "Да логики как-то нет!!!! Получается что тупо читают лекцию... ((((( Ожидал большего. В начале была в лекциях жизнь, интерес... желание... А сейчас как-то это напоминает вебинар, на котором рассказывают обо всем, но не о чем. Хотя где-то и затрагиваться моменты и логика работы скрипта. Я понимаю что нельзя все рассказать за 1,5 часа, но можно было бы тогда хоть материал дать, шпаргалку в которой бы написано было все что надо знать." - полностью с этим согласен :( К сожалению, на 30 минуте просто взял и закрыл. и стал смотреть подобные видео уроки на ютубе. Просто невозможно смотреть из-за этого рассинхрона. Очень жаль. Писали выше "Да логики как-то нет!!!! Получается что тупо читают лекцию... ((((( Ожидал большего. В начале была в лекциях жизнь, интерес... желание... А сейчас как-то это напоминает вебинар, на котором рассказывают обо всем, но не о чем. Хотя где-то и затрагиваться моменты и логика работы скрипта. Я понимаю что нельзя все рассказать за 1,5 часа, но можно было бы тогда хоть материал дать, шпаргалку в которой бы написано было все что надо знать." - полностью с этим согласен :( - полностью с этим согласен :( s vami siwu В начале была в лекциях жизнь, интерес... желание... А сейчас как-то это напоминает вебинар, на котором рассказывают обо всем, но не о чем. - полностью с этим согласен :( s vami siwu В начале была в лекциях жизнь, интерес... желание... А сейчас как-то это напоминает вебинар, на котором рассказывают обо всем, но не о чем. На многих бесплатных курсах на ютубе и то доходчивее обьясняют и видео от звука не отстаёт:(( На многих бесплатных курсах на ютубе и то доходчивее обьясняют и видео от звука не отстаёт:(( Всем привет! Мне то-же не понравилась рассинхронизация звука и видео, просто монтаж видео делался не программистом :) Преподаватель дает материал компактно и доходчиво. Мне нравится. Предлагаю перередактировать видео всего курса с нормальной синхронизацией, убрать косяки и добавить оптимизацию пространства картинки как на рисунке (ссылка). Готов выполнить. Всем привет! Мне то-же не понравилась рассинхронизация звука и видео, просто монтаж видео делался не программистом :) Преподаватель дает материал компактно и доходчиво. Мне нравится. Предлагаю перередактировать видео всего курса с нормальной синхронизацией, убрать косяки и добавить оптимизацию пространства картинки как на рисунке (ссылка). Готов выполнить. Я просто возмущена тем, что в таком режиме (рассинхронизации) невозможно учиться и что-то вообще понять... А главное, рассказывает преподаватель доходчиво... и очень обидно, что просто кто-то слепил все тяп-ляп, испортив хорошую вещь... А еще - переделать всё это элементарно, имея исходники... Почему ничего не меняется как минимум месяц, судя по первым комментариям? Кто-нибудь кроме недовольных учеников вообще их читает? Я просто возмущена тем, что в таком режиме (рассинхронизации) невозможно учиться и что-то вообще понять... А главное, рассказывает преподаватель доходчиво... и очень обидно, что просто кто-то слепил все тяп-ляп, испортив хорошую вещь... А еще - переделать всё это элементарно, имея исходники... Почему ничего не меняется как минимум месяц, судя по первым комментариям? Кто-нибудь кроме недовольных учеников вообще их читает? Интересно, а у всех получается повторить, что демонстрируется на лекции, у меня уже на предыдущей и этой лекции некоторые элементы не работают как у лектора. Делал все как и лектор, на прошлом занятии даже сравнивал с "рыбой" присланной к заданию - визуально всё правильно, но у меня, в отличие от "рыбы" не все работает! Интересно, а у всех получается повторить, что демонстрируется на лекции, у меня уже на предыдущей и этой лекции некоторые элементы не работают как у лектора. Делал все как и лектор, на прошлом занятии даже сравнивал с "рыбой" присланной к заданию - визуально всё правильно, но у меня, в отличие от "рыбы" не все работает! Пару раз за прошлую лекцию он делал опечатки и у него тоже не работало. Потом их поправлял "незаметно", по ходу рассказа о других вещах. А еще попробуйте пропустить Ваш код через HTML-валидатор, вот этот: https://validator.w3.org/#validate_by_upload . Возможно выдаваемые им ошибки подскажут, где Вы ошиблись. А так обычное для программирования дело: опечатки в одной букве, пропущенная точка с запятой и т.п. Пару раз за прошлую лекцию он делал опечатки и у него тоже не работало. Потом их поправлял "незаметно", по ходу рассказа о других вещах. А еще попробуйте пропустить Ваш код через HTML-валидатор, вот этот: https://validator.w3.org/#validate_by_upload . Возможно выдаваемые им ошибки подскажут, где Вы ошиблись. А так обычное для программирования дело: опечатки в одной букве, пропущенная точка с запятой и т.п. P.S. Если Вы так и не сможете найти почему не работает, попробуйте еще открыть текст в "умном" текстовом редакторе, например Notepad++. Он подсвечивает синтаксис, возможно заметите опечатку или незакрытый тег. Еще есть средства разработчика во всех популярных браузерах, тоже полезны для поиска ошибок. P.S. Если Вы так и не сможете найти почему не работает, попробуйте еще открыть текст в "умном" текстовом редакторе, например Notepad++. Он подсвечивает синтаксис, возможно заметите опечатку или незакрытый тег. Еще есть средства разработчика во всех популярных браузерах, тоже полезны для поиска ошибок. " Потом их поправлял "незаметно", по ходу рассказа о других вещах. " - тоже подметил. Правильнее, грамотнее и полезнее для новичков было бы, если б лектор указывал на ошибки, опечатки и их исправление, а не делал бы это молча, как бы тайком. " Потом их поправлял "незаметно", по ходу рассказа о других вещах. " - тоже подметил. Правильнее, грамотнее и полезнее для новичков было бы, если б лектор указывал на ошибки, опечатки и их исправление, а не делал бы это молча, как бы тайком. Запись уже невозможно открыть. Может быть на ремонте? Запись уже невозможно открыть. Может быть на ремонте? Вторая часть лекции - очень сумбурная и непонятная. Похоже, что чем сложнее тема - тем хуже объяснение! Кто-нибудь, кроме студентов, видит, что изображение и речь рассинхронизированы! С уважением, Вторая часть лекции - очень сумбурная и непонятная. Похоже, что чем сложнее тема - тем хуже объяснение! Кто-нибудь, кроме студентов, видит, что изображение и речь рассинхронизированы! С уважением,
-
-
-
+
+
+
-D
+D
Когда с рассинхроном разберётесь?? Вообще теряется нить повествования. Невозможно так обучаться.
+Когда с рассинхроном разберётесь?? Вообще теряется нить повествования. Невозможно так обучаться.
Сильно раздражает не соответствие лекции и "рыбы", а так же отставание экрана. Куда теперь отправлять ДЗ тоже не понятно.Подскажите!
+Сильно раздражает не соответствие лекции и "рыбы", а так же отставание экрана. Куда теперь отправлять ДЗ тоже не понятно.Подскажите!
Мое предложение - подать совместную жалобу и запросить возврат средств. Никакой обратной связи, обучаться невозможно изза недостатка информации, услуга оказывается не должным образом. Кто за - пишите whatsapp 79251879198 будем придумывать что делать)
+Мое предложение - подать совместную жалобу и запросить возврат средств. Никакой обратной связи, обучаться невозможно изза недостатка информации, услуга оказывается не должным образом. Кто за - пишите whatsapp 79251879198 будем придумывать что делать)
Вот люди пишут:"Я понимаю что нельзя все рассказать за 1,5 часа", а за 50 минут? Лекции становятся все короче и сумбурнее, полностью согласна, что качество услуги никак не соответствует цене.
+Вот люди пишут:"Я понимаю что нельзя все рассказать за 1,5 часа", а за 50 минут? Лекции становятся все короче и сумбурнее, полностью согласна, что качество услуги никак не соответствует цене.
%s
' % theme.description - - if theme.lessons_length() > 1: - result += u'%s
' % theme.description + + if theme.lessons_length() > 1: + result += u'\u0421\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a \u043f\u043e html \u0438 css - htmlbook.ru
", "video": "", "video_id": "6648358", "video_date": null, "materials": [], "comments": [1893, 2220, 2609, 3355, 5108, 5626, 5882, 6291, 12118, 13614, 15609, 15610, 18436, 18523, 18580, 18650, 18846, 21446, 22400, 24319, 24320, 24322, 24331, 25134, 25171, 25708]}}, {"model": "courses.lesson", "pk": 5, "fields": {"free": false, "token": "1#8", "title": "\u041f\u043e\u0437\u0438\u0446\u0438\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 CSS", "sort": 1, "course": 1, "theme": 5, "description": "\u0421\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a \u043f\u043e html \u0438 css - htmlbook.ru
", "video": "", "video_id": "6648367", "video_date": null, "materials": [], "comments": [1029, 1450, 2104, 3169, 9907, 10508, 10633, 11901, 15608, 26733]}}, {"model": "courses.lesson", "pk": 6, "fields": {"free": false, "token": "1#10", "title": "Javascript \u2014 \u0437\u043d\u0430\u043a\u043e\u043c\u0441\u0442\u0432\u043e, \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044f, \u043b\u043e\u0433\u0438\u043a\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u043e\u043c", "sort": 1, "course": 1, "theme": 6, "description": "\u0421\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a \u043f\u043e javascript - learn.javascript.ru
", "video": "", "video_id": "7201737", "video_date": null, "materials": [], "comments": [1766, 1857, 2138, 2301, 2678, 2805, 3602, 3841, 3948, 4439, 4593, 5494, 5495, 5653, 5654, 5940, 6181, 7719, 8843, 9236, 9345, 9483, 9562, 9950, 10086, 11314, 11523, 11659, 11660, 12709, 12710, 13743, 16966, 21447, 24318, 24328, 24330, 24333, 25934, 26975]}}, {"model": "courses.lesson", "pk": 7, "fields": {"free": false, "token": "1#12", "title": "Javascript \u2013 \u0441\u043e\u0431\u044b\u0442\u0438\u044f. \u041c\u043e\u0434\u0435\u043b\u044c \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0441\u043e\u0431\u044b\u0442\u0438\u0439", "sort": 1, "course": 1, "theme": 7, "description": "\u0421\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a \u043f\u043e javascript - learn.javascript.ru
", "video": "", "video_id": "6648377", "video_date": null, "materials": [], "comments": [861, 1168, 1169, 1954, 2947, 3135, 3364, 3423, 4471, 4905, 4942, 9344, 9743, 10202, 11852, 18186, 18517, 24332, 27186]}}, {"model": "courses.lesson", "pk": 8, "fields": {"free": false, "token": "1#14", "title": "Javascript \u2013 \u0441\u043e\u0431\u044b\u0442\u0438\u044f", "sort": 1, "course": 1, "theme": 8, "description": "\u0421\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a \u043f\u043e javascript - learn.javascript.ru
", "video": "", "video_id": "6648396", "video_date": null, "materials": [], "comments": [2147, 2984, 4704, 7984, 8847, 17943, 18385, 24334, 24335]}}, {"model": "courses.lesson", "pk": 9, "fields": {"free": false, "token": "1#16", "title": "Javascript \u2013 \u0441\u043e\u0431\u044b\u0442\u0438\u044f", "sort": 1, "course": 1, "theme": 9, "description": "\u0421\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a \u043f\u043e javascript - learn.javascript.ru
", "video": "", "video_id": "6648416", "video_date": null, "materials": [], "comments": [13951, 14334, 24585, 24633, 26877]}}, {"model": "courses.lesson", "pk": 10, "fields": {"free": false, "token": "1#18", "title": "PHP. \u041c\u0435\u0441\u0442\u043e \u0432 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0435 \u0441\u0430\u0439\u0442\u0430", "sort": 1, "course": 1, "theme": 10, "description": "\u0414\u043e \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443 \u043d\u0430 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440.
\u0421\u043a\u0430\u0447\u0430\u0439\u0442\u0435 \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u043d\u0430 30 \u0434\u043d\u0435\u0439 \u0437\u0434\u0435\u0441\u044c:
https://creative.adobe.com/ru/products/download/ph...
", "video": "", "video_id": "6648575", "video_date": null, "materials": [], "comments": [10775, 10777, 24346, 25865, 27955]}}, {"model": "courses.lesson", "pk": 18, "fields": {"free": false, "token": "1#33", "title": "\u041f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u0435 \u043b\u0438\u0447\u043d\u043e\u0433\u043e \u0431\u0440\u0435\u043d\u0434\u0430 \u0438 \u0438\u043c\u0435\u043d\u0438 \u0432 \u0441\u0444\u0435\u0440\u0435 \u0432\u0435\u0431-\u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438", "sort": 1, "course": 1, "theme": 17, "description": "\u0418\u0437 \u0432\u0438\u0434\u0435\u043e \u0432\u044b \u0443\u0437\u043d\u0430\u0435\u0442\u0435:
- \u041a\u0430\u043a \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043b\u0438\u0447\u043d\u044b\u0439 \u0431\u0440\u0435\u043d\u0434 \u0432 \u0441\u0444\u0435\u0440\u0435 \u0432\u0435\u0431-\u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438?
- \u041f\u0440\u043e\u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0435 \u0432\u0430\u0448\u0435\u0433\u043e \u0438\u043c\u0435\u043d\u0438, \u043a\u0430\u043a \u0432\u0435\u0431-\u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430.
- \u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0437\u0430\u043a\u0430\u0437\u043e\u0432 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u043b\u0438\u0447\u043d\u043e\u0433\u043e \u0431\u0440\u0435\u043d\u0434\u0430.
- \u041a\u043e\u043d\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0438 \u0438 \u0436\u0438\u0432\u044b\u0435 \u0432\u044b\u0441\u0442\u0443\u043f\u043b\u0435\u043d\u0438\u044f.
- \u0421\u041c\u0418 \u0438 \u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u043e\u0440\u0442\u0430\u043b\u044b. \u041a\u0430\u043a \u0442\u0443\u0434\u0430 \u043f\u043e\u043f\u0430\u0441\u0442\u044c.
- \u041f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u0435 \u043a\u0430\u0440\u044c\u0435\u0440\u044b \u0438 \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u0435 \u043b\u0438\u0447\u043d\u043e\u0433\u043e \u0431\u0440\u0435\u043d\u0434\u0430. \u041d\u0430 \u0447\u0435\u043c \u0430\u043a\u0446\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f?
\u0414\u0430\u043d\u043d\u0430\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u0432\u0430\u043c \u0440\u0430\u0437\u0432\u0438\u0442\u044c \u0441\u0435\u0431\u044f, \u043a\u0430\u043a \u044d\u043a\u0441\u043f\u0435\u0440\u0442\u0430, \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u043e\u0432\u044b\u0445 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u0445 \u0437\u0430\u043a\u0430\u0437\u043e\u0432 \u0438 \u043a\u043e\u043c\u043c\u0435\u0440\u0447\u0435\u0441\u043a\u0438\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432
", "video": "", "video_id": "6648598", "video_date": null, "materials": [], "comments": [14017]}}, {"model": "courses.lesson", "pk": 19, "fields": {"free": true, "token": "4#1", "title": "\u0417\u043d\u0430\u043a\u043e\u043c\u0441\u0442\u0432\u043e \u0441 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u043c Excel, \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u00ab\u0440\u0430\u0431\u043e\u0447\u0430\u044f \u043a\u043d\u0438\u0433\u0430-\u043b\u0438\u0441\u0442-\u0441\u0442\u0440\u043e\u043a\u0430, \u0441\u0442\u043e\u043b\u0431\u0435\u0446-\u044f\u0447\u0435\u0439\u043a\u0430\u00bb", "sort": 2, "course": 4, "theme": 18, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": [23218]}}, {"model": "courses.lesson", "pk": 20, "fields": {"free": true, "token": "4#2", "title": "\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043f\u0435\u0440\u0432\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u044b, \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u00ab\u0448\u0430\u043f\u043a\u0438\u00bb \u0438 \u0437\u0430\u043f\u0438\u0441\u0435\u0439. \u0424\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435. \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0448\u0438\u0440\u0438\u043d\u044b \u0441\u0442\u0440\u043e\u043a \u0438 \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432.", "sort": 3, "course": 4, "theme": 18, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": [23400, 23401, 24531]}}, {"model": "courses.lesson", "pk": 21, "fields": {"free": true, "token": "4#3", "title": "\u0421\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043a\u0430 (\u0443\u043f\u043e\u0440\u044f\u0434\u043e\u0447\u0435\u043d\u0438\u0435 \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u043f\u043e \u043a\u0440\u0438\u0442\u0435\u0440\u0438\u044e). \u041f\u043e \u043e\u0434\u043d\u043e\u043c\u0443 \u043f\u043e\u043b\u044e.", "sort": 4, "course": 4, "theme": 18, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 22, "fields": {"free": true, "token": "4#4", "title": "\u041c\u043d\u043e\u0433\u043e\u043a\u0440\u0438\u0442\u0435\u0440\u0438\u0430\u043b\u044c\u043d\u0430\u044f \u0441\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043a\u0430 (\u043f\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c \u043f\u043e\u043b\u044f\u043c \u0432 \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u0435)", "sort": 5, "course": 4, "theme": 18, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 23, "fields": {"free": true, "token": "4#5", "title": "\u0424\u0438\u043b\u044c\u0442\u0440\u044b \u0432 Excel. \u0424\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u044f \u043f\u043e \u043e\u0434\u043d\u043e\u043c\u0443 \u043f\u043e\u043b\u044e", "sort": 6, "course": 4, "theme": 18, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 24, "fields": {"free": true, "token": "4#6", "title": "\u0424\u0438\u043b\u044c\u0442\u0440\u044b \u0432 Excel. \u0424\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u044f \u043f\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c \u043f\u043e\u043b\u044f\u043c", "sort": 7, "course": 4, "theme": 18, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 25, "fields": {"free": true, "token": "4#7", "title": "\u0424\u0438\u043b\u044c\u0442\u0440\u044b \u0432 Excel. \u0421\u043b\u043e\u0436\u043d\u044b\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u044f \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u0438 (\u0447\u0438\u0441\u043b\u043e\u0432\u044b\u0435 \u0444\u0438\u043b\u044c\u0442\u0440\u044b, \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0435 \u0444\u0438\u043b\u044c\u0442\u0440\u044b, \u0444\u0438\u043b\u044c\u0442\u0440 \u043f\u043e \u0434\u0430\u0442\u0435)", "sort": 8, "course": 4, "theme": 18, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 26, "fields": {"free": true, "token": "4#8", "title": "\u041e\u0442\u043c\u0435\u043d\u0430 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439 \u0432 Excel. \u00ab\u0413\u043e\u0440\u044f\u0447\u0438\u0435\u00bb \u043a\u043b\u0430\u0432\u0438\u0448\u0438 Ctrl+Z \u0438 Ctrl+Y", "sort": 9, "course": 4, "theme": 18, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 27, "fields": {"free": true, "token": "4#9", "title": "\u0424\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u043e \u043e\u0431\u0440\u0430\u0437\u0446\u0443 (\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0444\u043e\u0440\u043c\u0430\u0442\u0430 \u0438\u0437 \u043e\u0434\u043d\u043e\u0439 \u044f\u0447\u0435\u0439\u043a\u0438 \u0432 \u0434\u0440\u0443\u0433\u0443\u044e). \u0410\u0432\u0442\u043e\u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435 \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432 \u0438 \u0441\u0442\u0440\u043e\u043a \u043f\u043e \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u043c\u0443. \u0412\u044b\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u043d\u0438\u0435 \u0432 \u044f\u0447\u0435\u0439\u043a\u0430\u0445. \u0413\u0440\u0430\u043d\u0438\u0446\u044b \u044f\u0447\u0435\u0435\u043a", "sort": 10, "course": 4, "theme": 18, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 28, "fields": {"free": true, "token": "4#10", "title": "\u0420\u0430\u0431\u043e\u0442\u0430 \u0441 \u043b\u0438\u0441\u0442\u0430\u043c\u0438 \u0440\u0430\u0431\u043e\u0447\u0435\u0439 \u043a\u043d\u0438\u0433\u0438 Excel. \u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435, \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435, \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0435\u043d\u0438\u0435, \u043f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u043d\u0438\u0435, \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435.", "sort": 11, "course": 4, "theme": 18, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 29, "fields": {"free": true, "token": "2#1", "title": "\u041a\u0430\u043a\u0438\u0435 \u0431\u044b\u0432\u0430\u044e\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b?", "sort": 2, "course": 2, "theme": 19, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043d\u0430 \u0432\u0441\u0435 \u0441\u0432\u043e\u0438 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u043c\u0435\u0441\u0441\u0435\u043d\u0434\u0436\u0435\u0440 Telegram.
- \u0418\u0437\u0443\u0447\u0438\u0442\u044c, \u043a\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043c\u0435\u0441\u0441\u0435\u043d\u0434\u0436\u0435\u0440 Telegram \u0438 \u0447\u0442\u043e \u0432 \u043d\u0451\u043c \u0435\u0441\u0442\u044c.
- \u0420\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f, \u043a\u0430\u043a \u0432 Telegram \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044f \u0438 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u044f.
", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": [16704, 17217, 18838, 19437, 20152, 22575, 24433, 24635, 25856, 26229, 26395, 26994]}}, {"model": "courses.lesson", "pk": 30, "fields": {"free": true, "token": "2#2", "title": "\u041a\u0430\u043a \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0439 \u043a\u043e\u0434?", "sort": 3, "course": 2, "theme": 19, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": [20154]}}, {"model": "courses.lesson", "pk": 31, "fields": {"free": true, "token": "2#3", "title": "\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0441\u0440\u0435\u0434\u044b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438.", "sort": 4, "course": 2, "theme": 19, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u2014 \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c JDK \u0438 IntelliJ Idea Community Edition \u043d\u0430 \u0441\u0432\u043e\u0439 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440
\u0421\u0441\u044b\u043b\u043a\u0438 \u0434\u043b\u044f \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u043d\u0438\u044f
\u2014 Java SE Development Kit 8 (Java \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432)
\u2014 IntelliJ IDEA (\u0441\u0440\u0435\u0434\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438)
\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0421\u043a\u0430\u0447\u0430\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442 RoadCamera.zip, \u0440\u0430\u0437\u0430\u0440\u0445\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438 \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u0432 \u0441\u0440\u0435\u0434\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 IntelliJ Idea. \u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0435\u0433\u043e \u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c, \u043a\u0430\u043a \u043e\u043d \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442.
- \u0418\u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043a\u043e\u0434 \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u043a\u0430\u043c\u0435\u0440\u0430 \u043d\u0435 \u0432\u044b\u043f\u0438\u0441\u044b\u0432\u0430\u043b\u0430 \u0448\u0442\u0440\u0430\u0444 \u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044e, \u0435\u0441\u043b\u0438 \u0435\u0433\u043e \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u043d\u0435 \u043f\u0440\u0435\u0432\u044b\u0448\u0430\u0435\u0442 60 \u043a\u043c/\u0447.
- \u0418\u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043a\u043e\u0434 \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u0448\u0442\u0440\u0430\u0444 \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u043b\u0441\u044f \u0432 2 \u0440\u0430\u0437\u0430.
\u0415\u0441\u043b\u0438 \u043f\u043e\u0441\u043b\u0435 \u0432\u044b\u0431\u043e\u0440\u0430 \u0432\u0435\u0440\u0441\u0438\u0438 1.8 \u0432 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0445 Project Structure \u0438 \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0441\u0440\u0435\u0434\u044b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438, \u2014 \u043f\u0440\u043e\u0435\u043a\u0442 \u0432\u0441\u0451 \u0440\u0430\u0432\u043d\u043e \u043f\u043e\u0434\u0447\u0435\u0440\u043a\u043d\u0443\u0442 \u043a\u0440\u0430\u0441\u043d\u044b\u043c \u0438 \u043f\u0440\u0438 \u043f\u043e\u043f\u044b\u0442\u043a\u0435 \u0435\u0441\u0442\u044c \u0437\u0430\u043f\u0443\u0441\u043a\u0430 (Run) \u0432\u044b\u0434\u0430\u0435\u0442\u0441\u044f \u043e\u0448\u0438\u0431\u043a\u0430, \u2014 \u0441\u043a\u0430\u0447\u0430\u0439\u0442\u0435 \u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u0442\u0435 \u0444\u0430\u0439\u043b Java_fix1.pdf
\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u043f\u043e\u0432\u0442\u043e\u0440\u0438\u0432 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f, \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0435 \u0432 \u0432\u0438\u0434\u0435\u043e \u0443\u0440\u043e\u043a\u0430. \u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0435\u0433\u043e \u0438 \u0443\u0431\u0435\u0434\u0438\u0442\u044c\u0441\u044f, \u0447\u0442\u043e \u0434\u0430\u0442\u0430 \u0442\u0435\u043a\u0443\u0449\u0430\u044f \u0440\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u0430\u043b\u0430\u0441\u044c \u0432\u0435\u0440\u043d\u043e.
- \u0418\u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043a\u043e\u0434 \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u0434\u0430\u0442\u0430 \u043f\u0435\u0447\u0430\u0442\u0430\u043b\u0430\u0441\u044c \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435: \"15:30 28.08.2015\".
", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": [2684, 6645, 9611, 10388, 14230, 18844, 20748, 21894, 22981, 23122, 23302, 23438, 24136, 26119, 28419, 28875]}}, {"model": "courses.lesson", "pk": 34, "fields": {"free": true, "token": "2#6", "title": "\u041f\u0435\u0440\u0432\u043e\u0435 \u043e\u043a\u043e\u043d\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435", "sort": 7, "course": 2, "theme": 19, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043f\u0440\u043e\u0441\u0442\u043e\u0435 \u043e\u043a\u043e\u043d\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u043f\u043e\u0432\u0442\u043e\u0440\u0438\u0432 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f, \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0435 \u0432 \u0432\u0438\u0434\u0435\u043e \u0443\u0440\u043e\u043a\u0430.
- \u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u043a\u043e\u0434 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u0440\u0430\u0437\u043c\u0435\u0440 \u043e\u043a\u043d\u0430 \u0441\u0442\u0430\u043b \u0440\u0430\u0432\u043d\u044b\u043c 800*600 \u043f\u0438\u043a\u0441\u0435\u043b\u0435\u0439.
\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0432\u044b\u0448\u0435\u043d\u043d\u043e\u0439 \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u0438.
- \u041d\u0430\u0439\u0442\u0438 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Google, \u043a\u0430\u043a \u0440\u0430\u0437\u043c\u0435\u0449\u0430\u0442\u044c JFrame \u043f\u043e \u0446\u0435\u043d\u0442\u0440\u0443 \u044d\u043a\u0440\u0430\u043d\u0430. \u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u043a\u043e\u0434 \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u043e\u043a\u043d\u043e \u043f\u043e\u044f\u0432\u043b\u044f\u043b\u043e\u0441\u044c \u043f\u043e \u0446\u0435\u043d\u0442\u0440\u0443 \u044d\u043a\u0440\u0430\u043d\u0430.
", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": [2692, 3770, 9617, 20326, 20430, 20749, 21496, 21914, 22024, 23124, 25890, 26130, 26144, 26145, 26561, 28643, 28882, 29313, 29352]}}, {"model": "courses.lesson", "pk": 35, "fields": {"free": false, "token": "2#9", "title": "\u0427\u0442\u043e \u0432\u043e\u043e\u0431\u0449\u0435 \u0431\u044b\u0432\u0430\u0435\u0442 \u0432 \u043a\u043e\u0434\u0435", "sort": 2, "course": 2, "theme": 20, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u041e\u0442\u043a\u0440\u044b\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442 RoadController, \u0444\u0430\u0439\u043b RoadController.java \u0438 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c.
- \u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u043d\u043e \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u0438. \u041f\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u043a\u043e\u0434 \u0438 \u043f\u043e\u043f\u044b\u0442\u0430\u0442\u044c\u0441\u044f \u043f\u043e\u043d\u044f\u0442\u044c, \u0447\u0442\u043e \u043e\u043d \u0434\u0435\u043b\u0430\u0435\u0442. \u041e\u043f\u0438\u0441\u0430\u0442\u044c \u0442\u0435\u043a\u0441\u0442\u043e\u043c.
", "video": "", "video_id": "7242524", "video_date": null, "materials": [5473], "comments": [11100, 11271, 11559, 11776, 13978, 18219, 20801, 21721, 22679, 24423]}}, {"model": "courses.lesson", "pk": 36, "fields": {"free": false, "token": "2#10", "title": "\u041f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0432 Java", "sort": 3, "course": 2, "theme": 20, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0412 \u043a\u043e\u0434\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 RoadController \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0438\u0442\u044c \u0432 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f\u0445 \u0432\u0441\u0435 \u043c\u0435\u0441\u0442\u0430, \u0433\u0434\u0435 \u0441\u043e\u0437\u0434\u0430\u044e\u0442\u0441\u044f \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435.
", "video": "", "video_id": "7242556", "video_date": null, "materials": [], "comments": [13984, 15076, 16393, 17874, 19527, 20761, 20803, 21723, 24539, 27885, 27914]}}, {"model": "courses.lesson", "pk": 37, "fields": {"free": false, "token": "2#11", "title": "\u0411\u0443\u043b\u0435\u0432\u0430 \u0430\u043b\u0433\u0435\u0431\u0440\u0430", "sort": 4, "course": 2, "theme": 20, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u041e\u0442\u043a\u0440\u044b\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442 Booleans \u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0443\u0441\u043b\u043e\u0432\u0438\u044f \"if\" \u0441 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430\u043c\u0438 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u0438\u043d\u0433\u0440\u0435\u0434\u0438\u0435\u043d\u0442\u043e\u0432 \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u0440\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u044b\u0432\u0430\u043b\u0438\u0441\u044c \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0436\u043d\u043e \u0438\u0437 \u043d\u0438\u0445 \u043f\u0440\u0438\u0433\u043e\u0442\u043e\u0432\u0438\u0442\u044c.
- \u041f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u043c\u0435\u043d\u044f\u0442\u044c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u0438\u043d\u0433\u0440\u0435\u0434\u0438\u0435\u043d\u0442\u043e\u0432 \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u0432\u044b\u0434\u0430\u0432\u0430\u043b\u0438\u0441\u044c \u0440\u0430\u0437\u043d\u044b\u0435 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u044b.
", "video": "", "video_id": "7242599", "video_date": null, "materials": [5474], "comments": [14541, 17783, 19866, 20486, 20793, 20975, 21187, 21726, 24139, 24629, 24642, 24646, 24658, 24895]}}, {"model": "courses.lesson", "pk": 38, "fields": {"free": false, "token": "2#12", "title": "\u0423\u0441\u043b\u043e\u0432\u043d\u044b\u0435 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u044b", "sort": 5, "course": 2, "theme": 20, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0412 \u043d\u043e\u0432\u043e\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u0435 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0441 \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430\u043c\u0438 \u0442\u0440\u0451\u0445 \u0447\u0435\u043b\u043e\u0432\u0435\u043a \u0438 \u0435\u0449\u0451 \u0442\u0440\u0438 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0443\u0436\u043d\u043e \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0439, \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0439 \u0438 \u0441\u0440\u0435\u0434\u043d\u0438\u0439 \u0432\u043e\u0437\u0440\u0430\u0441\u0442. \u0421\u0434\u0435\u043b\u0430\u0442\u044c \u044d\u0442\u043e \u0442\u0430\u043a, \u043a\u0430\u043a \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u043e \u043d\u0430 \u0432\u0438\u0434\u0435\u043e, \u0430 \u0437\u0430\u0442\u0435\u043c \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u0434, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u0441\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u0442\u044c \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430 \u0438 \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u0438\u0445 \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435. \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u043e\u0442 \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0443\u043a\u0430\u0437\u0430\u043d\u044b \u0432 \u043f\u0435\u0440\u0432\u044b\u0445 \u0442\u0440\u0451\u0445 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445, \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u0438 \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u044b \u0432\u0435\u0440\u043d\u043e: \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0439, \u0441\u0440\u0435\u0434\u043d\u0438\u0439 \u0438 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0439.
", "video": "", "video_id": "7242612", "video_date": null, "materials": [], "comments": [10223, 13411, 21294, 21745, 21758]}}, {"model": "courses.lesson", "pk": 39, "fields": {"free": false, "token": "2#13", "title": "\u0426\u0438\u043a\u043b\u044b", "sort": 6, "course": 2, "theme": 20, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0418\u0437\u0443\u0447\u0438\u0442\u044c \u0446\u0438\u043a\u043b do...while \u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c, \u0447\u0435\u043c \u043e\u043d \u043e\u0442\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f \u043e\u0442 \u0446\u0438\u043a\u043b\u0430 while.
- \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u0434 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0446\u0438\u043a\u043b\u0430 do... while, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0440\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u0438 \u043d\u043e\u043c\u0435\u0440\u0430 \u0431\u0438\u043b\u0435\u0442\u043e\u0432 \u043e\u0442 200000 \u0434\u043e 210000.
", "video": "", "video_id": "7242617", "video_date": null, "materials": [], "comments": [19882, 21300, 21775]}}, {"model": "courses.lesson", "pk": 40, "fields": {"free": false, "token": "2#14", "title": "\u0420\u0430\u0437\u0431\u0438\u0440\u0430\u0435\u043c \u0441\u043b\u043e\u0436\u043d\u044b\u0439 \u043a\u043e\u0434", "sort": 7, "course": 2, "theme": 20, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u041e\u0442\u043a\u0440\u044b\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442 RoadController \u0438 \u0432\u043d\u0435\u0441\u0442\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0432 \u043a\u043e\u0434 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b:
- \u0423\u043c\u0435\u043d\u044c\u0448\u0438\u0442\u044c \u0432\u044b\u0441\u043e\u0442\u0443 \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u043d\u043e\u0433\u043e \u043f\u0443\u043d\u043a\u0442\u0430 \u0434\u043e 3,5 \u043c\u0435\u0442\u0440\u043e\u0432
- \u041d\u0435 \u0448\u0442\u0440\u0430\u0444\u043e\u0432\u0430\u0442\u044c \u0442\u0435\u0445, \u043a\u0442\u043e \u043f\u043e\u0434\u044a\u0435\u0437\u0436\u0430\u0435\u0442 \u0441\u043e \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c\u044e \u043c\u0435\u043d\u0435\u0435 60 \u043a\u043c/\u0447
- \u0418\u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043e\u0448\u0438\u0431\u043a\u0443: \u043d\u0435\u0432\u0435\u0440\u043d\u043e \u0432\u044b\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0446\u0435\u043d\u0430 \u0437\u0430 \u0433\u0440\u0443\u0437\u043e\u0432\u044b\u0435 \u0438 \u043b\u0435\u0433\u043a\u043e\u0432\u044b\u0435
- \u0418\u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043e\u0448\u0438\u0431\u043a\u0443: \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043d\u0435 \u043b\u043e\u0432\u0438\u0442 (\u043f\u0440\u043e\u043f\u0443\u0441\u043a\u0430\u0435\u0442) \u0443\u0433\u043d\u0430\u043d\u043d\u044b\u0435 \u043f\u043e\u043b\u0438\u0446\u0435\u0439\u0441\u043a\u0438\u0435 \u0430\u0432\u0442\u043e\u043c\u043e\u0431\u0438\u043b\u0438
- \u041f\u043e \u0434\u0438\u043f\u043b\u043e\u043c\u0443: \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u0438 \u043f\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044e \u0441\u0432\u043e\u0435\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f Telegram \u043d\u0430 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u043c \u0441\u0430\u0439\u0442\u0435 Telegram. \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043f\u0440\u0438\u0441\u043b\u0430\u0442\u044c \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u043e\u0433\u043e \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0433\u043e \u0437\u0430\u0434\u0430\u043d\u0438\u044f.
- \u041f\u043e \u0434\u0438\u043f\u043b\u043e\u043c\u0443: \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f \u0441 \u043c\u0435\u0442\u043e\u0434\u0430\u043c\u0438 API \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u0438 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u0438 \u043f\u043e\u043d\u044f\u0442\u044c, \u0432 \u043a\u0430\u043a\u043e\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u043a\u0430\u043a\u0438\u0435 \u0438\u0437 \u043d\u0438\u0445 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0442\u0441\u044f \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c Telegram.
", "video": "", "video_id": "7242639", "video_date": null, "materials": [], "comments": [20125, 20335, 21776, 21799, 21800, 21801, 23143, 26199, 29307]}}, {"model": "courses.lesson", "pk": 41, "fields": {"free": false, "token": "2#17", "title": "\u041f\u043e\u043d\u044f\u0442\u0438\u0435 \u043a\u043b\u0430\u0441\u0441\u0430 \u0438 \u043e\u0431\u044a\u0435\u043a\u0442\u0430", "sort": 2, "course": 2, "theme": 21, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u0421\u043e\u0437\u0434\u0430\u0442\u044c 5-7 \u043a\u043e\u0448\u0435\u043a \u0438 \u043f\u043e\u0432\u044b\u0437\u044b\u0432\u0430\u0442\u044c \u0443 \u043d\u0438\u0445 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u043c\u0435\u0442\u043e\u0434\u044b:
- \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c, \u043a\u0430\u043a\u043e\u0439 \u0443 \u043d\u0438\u0445 \u0432\u0435\u0441
- \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u0438\u0445 \u043f\u043e\u043a\u043e\u0440\u043c\u0438\u0442\u044c \u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c, \u0447\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0441 \u0432\u0435\u0441\u043e\u043c
- \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u043f\u0435\u0440\u0435\u043a\u043e\u0440\u043c\u0438\u0442\u044c \u043a\u043e\u0448\u043a\u0443, \u0447\u0442\u043e\u0431\u044b \u043e\u043d\u0430 \u0432\u0437\u043e\u0440\u0432\u0430\u043b\u0430\u0441\u044c
- \"\u0437\u0430\u043c\u044f\u0443\u043a\u0430\u0442\u044c\" \u043a\u043e\u0448\u043a\u0443 \u0434\u043e \u0441\u043c\u0435\u0440\u0442\u0438.
", "video": "", "video_id": "7242649", "video_date": null, "materials": [5476], "comments": [10623, 10709]}}, {"model": "courses.lesson", "pk": 42, "fields": {"free": false, "token": "2#18", "title": "\u041c\u0435\u0442\u043e\u0434, \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b, return", "sort": 3, "course": 2, "theme": 21, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0432 \u043a\u043b\u0430\u0441\u0441\u0435 Cat \u043c\u0435\u0442\u043e\u0434, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0442\u044c \u043c\u0430\u0441\u0441\u0443 \u0441\u044a\u0435\u0434\u0435\u043d\u043d\u043e\u0439 \u0435\u0434\u044b.
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0432 \u043a\u043b\u0430\u0441\u0441\u0435 Cat \u043c\u0435\u0442\u043e\u0434 \u201c\u0441\u0445\u043e\u0434\u0438\u0442\u044c \u0432 \u0442\u0443\u0430\u043b\u0435\u0442\u201d, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u0443\u043c\u0435\u043d\u044c\u0448\u0430\u0442\u044c \u0432\u0435\u0441 \u043a\u043e\u0448\u043a\u0438 \u0438 \u0447\u0442\u043e-\u00ad\u043d\u0438\u0431\u0443\u0434\u044c \u043f\u0435\u0447\u0430\u0442\u0430\u0442\u044c.
", "video": "", "video_id": "7242688", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 43, "fields": {"free": false, "token": "2#19", "title": "\u0421\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043c\u0435\u0442\u043e\u0434\u044b \u0438 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435", "sort": 4, "course": 2, "theme": 21, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0443 \u043a\u043b\u0430\u0441\u0441\u0430 Cat \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e count, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0431\u0443\u0434\u0435\u0442 \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u0442\u044c\u0441\u044f, \u0435\u0441\u043b\u0438 \u043a\u043e\u0448\u043a\u0443 \u0441\u043e\u0437\u0434\u0430\u043b\u0438, \u0438 \u0443\u0431\u044b\u0432\u0430\u0442\u044c, \u0435\u0441\u043b\u0438 \u043a\u043e\u0448\u043a\u0430 \u0432\u0437\u043e\u0440\u0432\u0430\u043b\u0430\u0441\u044c \u0438\u043b\u0438 \u0443\u043c\u0435\u0440\u043b\u0430, \u0438 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043c\u0435\u0442\u043e\u0434 getCount(), \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0442\u044c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043a\u043e\u0448\u0435\u043a.
", "video": "", "video_id": "7242702", "video_date": null, "materials": [], "comments": [18654, 18656, 21578]}}, {"model": "courses.lesson", "pk": 44, "fields": {"free": false, "token": "2#20", "title": "\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u0438 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440", "sort": 5, "course": 2, "theme": 21, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0432 \u043a\u043b\u0430\u0441\u0441\u0435 Cat \u0435\u0449\u0451 \u043e\u0434\u0438\u043d \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440 \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u043c\u0430\u0441\u0441\u0443 \u043a\u043e\u0448\u043a\u0438 \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0437\u0430\u0434\u0430\u0432\u0430\u0442\u044c \u043f\u0440\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u043a\u043e\u0448\u043a\u0438, \u0438 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0432 \u0433\u043b\u0430\u0432\u043d\u043e\u043c \u043a\u043b\u0430\u0441\u0441\u0435 \u043c\u0435\u0442\u043e\u0434 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043a\u043e\u0448\u043a\u0438, \u043a\u0430\u043a \u043e\u043f\u0438\u0441\u0430\u043d\u043e \u0432 \u0432\u0438\u0434\u0435\u043e\u0443\u0440\u043e\u043a\u0435.
", "video": "", "video_id": "7242715", "video_date": null, "materials": [], "comments": [18720, 20344]}}, {"model": "courses.lesson", "pk": 45, "fields": {"free": false, "token": "2#21", "title": "\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432", "sort": 6, "course": 2, "theme": 21, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0443 \u043a\u043e\u0448\u043a\u0438 \u043c\u0435\u0442\u043e\u0434 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0435\u0451 \u201c\u0433\u043b\u0443\u0431\u043e\u043a\u043e\u0439\u201d \u043a\u043e\u043f\u0438\u0438.
", "video": "", "video_id": "7242727", "video_date": null, "materials": [], "comments": [9740]}}, {"model": "courses.lesson", "pk": 46, "fields": {"free": false, "token": "2#22", "title": "\u0412\u043d\u0435\u0448\u043d\u0438\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u043a\u043b\u0430\u0441\u0441\u043e\u0432", "sort": 7, "course": 2, "theme": 21, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u041f\u043e\u0432\u0442\u043e\u0440\u0438\u0442\u044c \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f, \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0432 \u0432\u0438\u0434\u0435\u043e: \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043d\u043e\u0432\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442, \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043a \u043d\u0435\u043c\u0443 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 telegram-\u00adapi-\u00adbridge.jar, \u0434\u043e\u0431\u0438\u0442\u044c\u0441\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043d\u043e\u043c\u0435\u0440\u0430 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0437\u0430\u0434\u0430\u0451\u0442\u0441\u044f \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u0438.
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0431\u0443\u0434\u0435\u0442 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u043e\u0432\u044b\u0432\u0430\u0442\u044c\u0441\u044f \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 Telegram \u0438 \u043f\u0435\u0447\u0430\u0442\u0430\u0442\u044c \u0438\u043c\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f, \u043f\u043e\u0434 \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u043f\u0440\u043e\u0438\u0437\u043e\u0448\u043b\u0430 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u044f. \u041d\u043e\u043c\u0435\u0440 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430 \u0438 \u043a\u043e\u0434 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f \u0434\u043e\u043b\u0436\u043d\u044b \u0432\u0432\u043e\u0434\u0438\u0442\u044c\u0441\u044f \u0438\u0437 \u043a\u043e\u043d\u0441\u043e\u043b\u0438. \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043f\u0440\u0438\u043b\u043e\u0436\u0438\u0442\u044c \u0432 \u0432\u0438\u0434\u0435 zip-\u00ad\u0430\u0440\u0445\u0438\u0432\u0430 \u043f\u0430\u043f\u043a\u0438 \u0441 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u043c.
", "video": "", "video_id": "6815978", "video_date": null, "materials": [5477], "comments": [9731, 10281, 10453, 10895, 17662, 18644, 18645, 20272, 20383, 20534, 21338, 23524]}}, {"model": "courses.lesson", "pk": 47, "fields": {"free": false, "token": "2#23", "title": "\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 JAR-\u00ad\u0444\u0430\u0439\u043b\u043e\u0432", "sort": 8, "course": 2, "theme": 21, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0423\u043f\u0430\u043a\u043e\u0432\u0430\u0442\u044c \u0432 JAR-\u00ad\u0444\u0430\u0439\u043b \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u043e\u0435 \u0432 \u043f\u0435\u0440\u0432\u043e\u043c \u043c\u043e\u0434\u0443\u043b\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442 \u043e\u043a\u043d\u043e \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u043c 800*600 \u043f\u043e \u0446\u0435\u043d\u0442\u0440\u0443 \u044d\u043a\u0440\u0430\u043d\u0430. \u041d\u0430\u0443\u0447\u0438\u0442\u044c\u0441\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u044d\u0442\u043e\u0442 JAR-\u00ad\u0444\u0430\u0439\u043b \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043a\u043b\u0438\u043a\u043e\u043c \u043c\u044b\u0448\u044c\u044e, \u043d\u043e \u0438 \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443. \u041f\u0440\u0438\u043b\u043e\u0436\u0438\u0442\u044c \u0444\u0430\u0439\u043b \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0433\u043e \u0437\u0430\u0434\u0430\u043d\u0438\u044f.
", "video": "", "video_id": "6815986", "video_date": null, "materials": [], "comments": [9635, 9853, 13484, 19157]}}, {"model": "courses.lesson", "pk": 48, "fields": {"free": false, "token": "2#26", "title": "\u041f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u044b \u0438 \u043e\u0431\u044a\u0435\u043a\u0442\u044b", "sort": 2, "course": 2, "theme": 22, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0412 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u0445 RoadCamera \u0438 RoadController \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u0432\u0441\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u044b \u043d\u0430 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u0438\u043c \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u044b. \u041f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c, \u0432\u0441\u0451 \u043b\u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442. \u041f\u0440\u0438\u0441\u043b\u0430\u0442\u044c \u0434\u0432\u0430 zip-\u00ad\u0430\u0440\u0445\u0438\u0432\u0430 \u0441 \u0438\u0437\u043c\u0435\u043d\u0451\u043d\u043d\u044b\u043c\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u043c\u0438.
", "video": "", "video_id": "7242741", "video_date": null, "materials": [], "comments": [13380]}}, {"model": "courses.lesson", "pk": 49, "fields": {"free": false, "token": "2#27", "title": "\u0422\u0438\u043f\u044b \u0447\u0438\u0441\u0435\u043b \u0438 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435", "sort": 3, "course": 2, "theme": 22, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u041f\u043e\u0441\u0447\u0438\u0442\u0430\u0439\u0442\u0435 24.0 * 0.1. \u0427\u0442\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c \u0432 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435? \u0415\u0441\u0442\u044c \u043b\u0438 \u0443 \u0432\u0430\u0441 \u0432\u043e\u043f\u0440\u043e\u0441\u044b?
- \u0420\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u0430\u0442\u044c \u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043e\u0442\u0432\u0435\u0442\u0430 \u043a \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u043c\u0443 \u0437\u0430\u0434\u0430\u043d\u0438\u044e \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0438 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f Double.
", "video": "", "video_id": "7242768", "video_date": null, "materials": [], "comments": [10748, 14044, 16770]}}, {"model": "courses.lesson", "pk": 50, "fields": {"free": false, "token": "2#28", "title": "\u041e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0441 \u0447\u0438\u0441\u043b\u0430\u043c\u0438", "sort": 4, "course": 2, "theme": 22, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u041f\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044e \u043a \u043a\u043b\u0430\u0441\u0441\u0443 Math \u043d\u0430 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u043c \u0441\u0430\u0439\u0442\u0435 Oracle.
- \u0412\u044b \u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0435 \u0433\u0443\u043c\u0430\u043d\u0438\u0442\u0430\u0440\u043d\u0443\u044e \u043f\u043e\u043c\u043e\u0449\u044c \u0432 \u0432\u0438\u0434\u0435 \u044f\u0449\u0438\u043a\u043e\u0432 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u043e\u0433\u043e \u0440\u0430\u0437\u043c\u0435\u0440\u0430. \u0423 \u0432\u0430\u0441 \u0435\u0441\u0442\u044c \u0433\u0440\u0443\u0437\u043e\u0432\u0438\u043a\u0438 \u0438 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u044b. \u0412 \u043a\u0430\u0436\u0434\u044b\u0439 \u0433\u0440\u0443\u0437\u043e\u0432\u0438\u043a \u0432\u043b\u0435\u0437\u0430\u0435\u0442 \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c 12 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432. \u0412 \u043a\u0430\u0436\u0434\u044b\u0439 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u00ad \u043d\u0435 \u0431\u043e\u043b\u0435\u0435 27 \u044f\u0449\u0438\u043a\u043e\u0432. \u042f\u0449\u0438\u043a\u0438, \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u044b \u0438 \u0433\u0440\u0443\u0437\u043e\u0432\u0438\u043a\u0438 \u043f\u0440\u043e\u043d\u0443\u043c\u0435\u0440\u043e\u0432\u0430\u043d\u044b. \u041d\u0430\u043f\u0438\u0448\u0438\u0442\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0442\u044c \u044f\u0449\u0438\u043a\u0438 \u043f\u043e \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430\u043c \u0438 \u0433\u0440\u0443\u0437\u043e\u0432\u0438\u043a\u0430\u043c \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0438\u0445 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442, \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u0441\u0435\u0433\u043e \u043d\u0443\u0436\u043d\u043e \u0433\u0440\u0443\u0437\u043e\u0432\u0438\u043a\u043e\u0432 \u0438 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432. \u041d\u0430 \u0432\u0445\u043e\u0434 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u043d\u0441\u043e\u043b\u044c \u0434\u043e\u043b\u0436\u043d\u043e \u043f\u043e\u0434\u0430\u0432\u0430\u0442\u044c\u0441\u044f \u0447\u0438\u0441\u043b\u043e \u044f\u0449\u0438\u043a\u043e\u0432. \u041d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0434\u043e\u043b\u0436\u0435\u043d \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:
\u0413\u0440\u0443\u0437\u043e\u0432\u0438\u043a 1:
\u041a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 1:
\u042f\u0449\u0438\u043a 1
\u042f\u0449\u0438\u043a 2
\u042f\u0449\u0438\u043a 3
...
\u041a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 2:
\u042f\u0449\u0438\u043a 28
\u042f\u0449\u0438\u043a 29
...
", "video": "", "video_id": "7242786", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 51, "fields": {"free": false, "token": "2#29", "title": "\u0421\u0442\u0440\u043e\u043a\u0438, \u0441\u0438\u043c\u0432\u043e\u043b\u044b \u0438 \u043f\u043e\u0434\u0441\u0442\u0440\u043e\u043a\u0438", "sort": 5, "course": 2, "theme": 22, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0420\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u0430\u0442\u044c \u0441\u0438\u043c\u0432\u043e\u043b\u044b \u0441 \u043a\u043e\u0434\u0430\u043c\u0438 \u043e\u0442 0 \u0434\u043e 512 \u0438 \u043d\u0430\u0439\u0442\u0438 \u0440\u0443\u0441\u0441\u043a\u0438\u0435 \u0432\u0441\u0435 \u0431\u0443\u043a\u0432\u044b. \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043e\u0442\u0432\u0435\u0442\u0430 \u043a \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u043c\u0443 \u0437\u0430\u0434\u0430\u043d\u0438\u044e \u043a\u043e\u0434\u044b \u0440\u0443\u0441\u0441\u043a\u0438\u0445 \u0431\u0443\u043a\u0432.
- \u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043c\u0435\u0442\u043e\u0434\u043e\u0432 indexOf(), lastIndexOf(), substring() \u0438 trim() \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u0434 \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0435 StringExperiments, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u0447\u0438\u0442\u0430\u0435\u0442 \u0441\u0443\u043c\u043c\u0443 \u0437\u0430\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0412\u0430\u0441\u0438 \u0438 \u041c\u0430\u0448\u0438.
- \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043d\u0430 \u0432\u0445\u043e\u0434\u0435 \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u043d\u0441\u043e\u043b\u044c \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u0444\u0430\u043c\u0438\u043b\u0438\u044e, \u0438\u043c\u044f \u0438 \u043e\u0442\u0447\u0435\u0441\u0442\u0432\u043e \u043e\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u043e\u0439 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u201c\u0418\u0432\u0430\u043d\u043e\u0432 \u0421\u0435\u0440\u0433\u0435\u0439 \u041f\u0435\u0442\u0440\u043e\u0432\u0438\u0447\u201d) \u0438 \u0432\u044b\u0432\u043e\u0434\u0438\u0442 \u0444\u0430\u043c\u0438\u043b\u0438\u044e, \u0438\u043c\u044f \u0438 \u043e\u0442\u0447\u0435\u0441\u0442\u0432\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u0444\u043e\u0440\u043c\u0430\u0442\u0435:
\u0424\u0430\u043c\u0438\u043b\u0438\u044f: \u0418\u0432\u0430\u043d\u043e\u0432
\u0418\u043c\u044f: \u0421\u0435\u0440\u0433\u0435\u0439
\u041e\u0442\u0447\u0435\u0441\u0442\u0432\u043e: \u041f\u0435\u0442\u0440\u043e\u0432\u0438\u0447
", "video": "", "video_id": "7242819", "video_date": null, "materials": [5486], "comments": [16847]}}, {"model": "courses.lesson", "pk": 52, "fields": {"free": false, "token": "2#30", "title": "\u041a\u043e\u043d\u043a\u0430\u0442\u0435\u043d\u0430\u0446\u0438\u044f \u0438 \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0441\u0442\u0440\u043e\u043a", "sort": 6, "course": 2, "theme": 22, "description": "", "video": "", "video_id": "7242828", "video_date": null, "materials": [], "comments": [14109]}}, {"model": "courses.lesson", "pk": 53, "fields": {"free": false, "token": "2#31", "title": "\u0420\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u044b\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f", "sort": 7, "course": 2, "theme": 22, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0412 \u043f\u0440\u043e\u0435\u043a\u0442\u0435 StringExperiments \u0432\u043d\u0435\u0441\u0442\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u0441\u0443\u043c\u043c\u044b \u0437\u0430\u0440\u0430\u0431\u043e\u0442\u043a\u043e\u0432 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0430 \u0438\u0437\u0432\u043b\u0435\u043a\u0430\u043b\u0438\u0441\u044c \u0438\u0437 \u0442\u0435\u043a\u0441\u0442\u0430 \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u044b\u043c \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043c, \u0430 \u0432 \u043a\u043e\u043d\u0446\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u044b\u0432\u0430\u043b\u0430\u0441\u044c \u0438 \u0440\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u044b\u0432\u0430\u043b\u044c \u043e\u0431\u0449\u0430\u044f \u0441\u0443\u043c\u043c\u0430 \u0437\u0430\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0432\u0441\u0435\u0445. \u041f\u0440\u0438\u043b\u043e\u0436\u0438\u0442\u044c zip-\u00ad\u0430\u0440\u0445\u0438\u0432 \u0438\u0437\u043c\u0435\u043d\u0451\u043d\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430 StringExperiments.
- \u0412\u043e\u0437\u044c\u043c\u0438\u0442\u0435 \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u0438\u0439 \u0442\u0435\u043a\u0441\u0442 (\u043d\u0435 \u043c\u0435\u043d\u0435\u0435 100 \u0441\u043b\u043e\u0432) \u0438 \u043d\u0430\u043f\u0438\u0448\u0438\u0442\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0437\u0431\u0438\u0432\u0430\u0442\u044c \u0435\u0433\u043e \u043d\u0430 \u0441\u043b\u043e\u0432\u0430 \u0438 \u043f\u0435\u0447\u0430\u0442\u0430\u0442\u044c \u0441\u043b\u043e\u0432\u0430 \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u0438. \u041f\u0440\u0438\u043b\u043e\u0436\u0438\u0442\u044c zip-\u00ad\u0430\u0440\u0445\u0438\u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0430.
- \u0418\u0441\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u0443\u044e \u0432 \u0443\u0440\u043e\u043a\u0435 4 \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u0432\u0432\u043e\u0434\u0438\u043c\u0430\u044f \u0441\u0442\u0440\u043e\u043a\u0430 \u0441 \u0444\u0430\u043c\u0438\u043b\u0438\u0435\u0439, \u0438\u043c\u0435\u043d\u0435\u043c \u0438 \u043e\u0442\u0447\u0435\u0441\u0442\u0432\u043e\u043c \u0440\u0430\u0437\u0431\u0438\u0432\u0430\u043b\u0438\u0441\u044c \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u043e\u0433\u043e \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f. \u041f\u0440\u0438\u043b\u043e\u0436\u0438\u0442\u044c zip\u00ad\u0430\u0440\u0445\u0438\u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0430.
- \u041f\u043e \u0434\u0438\u043f\u043b\u043e\u043c\u0443: \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u0447\u0438\u0441\u0442\u043a\u0443 \u043d\u043e\u043c\u0435\u0440\u0430 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430, \u0432\u0432\u043e\u0434\u0438\u043c\u043e\u0433\u043e \u0438\u0437 \u043a\u043e\u043d\u0441\u043e\u043b\u0438, \u043e\u0442 \u043b\u0438\u0448\u043d\u0438\u0445 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432, \u0447\u0442\u043e\u0431\u044b \u0435\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0432\u0432\u043e\u0434\u0438\u0442\u044c \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 79091234567, \u043d\u043e \u0438 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043b\u0438\u0448\u043d\u0438\u0445 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440:
+7 909 123-\u00ad45-\u00ad67
+7 (909) 1234567
7\u00ad-909-\u00ad123-\u00ad45-\u00ad67
\u041f\u0440\u0438\u043b\u043e\u0436\u0438\u0442\u044c zip\u00ad-\u0430\u0440\u0445\u0438\u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0430.
", "video": "", "video_id": "7715320", "video_date": null, "materials": [], "comments": [11567, 16607, 16867, 16869, 16870, 18956, 24714, 24977, 25073, 25074, 25076, 25077, 25078, 25079, 25435, 25438, 25462, 25479]}}, {"model": "courses.lesson", "pk": 54, "fields": {"free": false, "token": "2#32", "title": "\u041a\u0430\u043b\u0435\u043d\u0434\u0430\u0440\u044c \u0438 \u043c\u0435\u0442\u043a\u0430 \u0432\u0440\u0435\u043c\u0435\u043d\u0438", "sort": 8, "course": 2, "theme": 22, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
-\u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u0412\u0430\u0448 \u0432\u043e\u0437\u0440\u0430\u0441\u0442, \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0439 \u0435\u043c\u0443 \u0434\u0435\u043d\u044c \u0440\u043e\u0436\u0434\u0435\u043d\u0438\u044f \u0438 \u0434\u0435\u043d\u044c \u043d\u0435\u0434\u0435\u043b\u0438. \u0434\u043e \u0442\u0435\u043a\u0443\u0449\u0435\u0433\u043e \u043c\u043e\u043c\u0435\u043d\u0442\u0430 \u0432\u0440\u0435\u043c\u0435\u043d\u0438. \u0424\u043e\u0440\u043c\u0430\u0442:
0 \u00ad- 13.02.1989 \u00ad- Mon
1 \u00ad- 13.02.1990 -\u00ad Tue
...
\u041f\u0440\u0438\u043b\u043e\u0436\u0438\u0442\u044c zip-\u00ad\u0430\u0440\u0445\u0438\u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0438\u043b\u0438 \u0444\u0430\u0439\u043b *.java \u0441 \u043a\u043e\u0434\u043e\u043c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b.
", "video": "", "video_id": "7242886", "video_date": null, "materials": [], "comments": [9543, 14796, 14818, 15586]}}, {"model": "courses.lesson", "pk": 55, "fields": {"free": false, "token": "2#35", "title": "\u041c\u0430\u0441\u0441\u0438\u0432\u044b", "sort": 2, "course": 2, "theme": 23, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u041f\u043e\u0432\u0442\u043e\u0440\u0438\u0442\u044c \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u0438 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0446\u0432\u0435\u0442\u0430\u043c\u0438 \u0440\u0430\u0434\u0443\u0433\u0438, \u043a\u0430\u043a \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u043e \u0432 \u0432\u0438\u0434\u0435\u043e, \u0430 \u0437\u0430\u0442\u0435\u043c \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u0434, \u043f\u0435\u0440\u0435\u0432\u043e\u0440\u0430\u0447\u0438\u0432\u0430\u044e\u0449\u0438\u0439 \u044d\u0442\u043e\u0442 \u043c\u0430\u0441\u0441\u0438\u0432.
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0438 \u0440\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u0430\u0442\u044c \u043c\u0430\u0441\u0441\u0438\u0432 \u0441\u0435\u0440\u0438\u0439 \u043f\u0430\u0441\u043f\u043e\u0440\u0442\u043e\u0432 \u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0438\u043d\u0430 \u0420\u0424.
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043c\u0430\u0441\u0441\u0438\u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 \u043a\u043b\u0435\u0442\u043e\u043a \u043d\u0430 \u0448\u0430\u0445\u043c\u0430\u0442\u043d\u043e\u0439 \u0434\u043e\u0441\u043a\u0435 \u0438 \u0440\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u0430\u0442\u044c \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u0438 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u044f \u043a\u043b\u0435\u0442\u043e\u043a \u0431\u044b\u043b\u0438 \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u043d\u044b \u0432 \u0444\u043e\u0440\u043c\u0435 \u0448\u0430\u0445\u043c\u0430\u0442\u043d\u043e\u0439 \u0434\u043e\u0441\u043a\u0438.
", "video": "", "video_id": "6819279", "video_date": null, "materials": [], "comments": [9276, 14364, 16398, 25299, 25941, 25946, 27209]}}, {"model": "courses.lesson", "pk": 56, "fields": {"free": false, "token": "2#36", "title": "\u0421\u043f\u0438\u0441\u043a\u0438. \u041e\u0447\u0435\u0440\u0435\u0434\u044c \u0438 \u0441\u0442\u044d\u043a", "sort": 3, "course": 2, "theme": 23, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0421\u0434\u0435\u043b\u0430\u0442\u044c \u0434\u0435\u0442\u0435\u043a\u0442\u043e\u0440 \u0431\u043b\u0430\u0442\u043d\u044b\u0445 \u043d\u043e\u043c\u0435\u0440\u043e\u0432 \u0434\u043b\u044f \u0413\u0418\u0411\u0414\u0414 (\u0432\u0441\u0435 \u0440\u0435\u0433\u0438\u043e\u043d\u044b): \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u043f\u0438\u0441\u043e\u043a \u043d\u043e\u043c\u0435\u0440\u043e\u0432 \u0438 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043c\u0435\u0442\u043e\u0434, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u044c \u043d\u0430\u043b\u0438\u0447\u0438\u0435 \u043d\u043e\u043c\u0435\u0440\u0430 \u0432 \u0441\u043f\u0438\u0441\u043a\u0435. \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u043d\u0441\u043e\u043b\u044c: \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0442\u044c \u043d\u043e\u043c\u0435\u0440, \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u044c, \u0432\u044b\u0434\u0430\u0432\u0430\u0442\u044c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0438 \u0441\u043d\u043e\u0432\u0430 \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0442\u044c \u043d\u043e\u043c\u0435\u0440. \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0434\u043e\u043b\u0436\u0435\u043d \u0432\u044b\u0434\u0430\u0432\u0430\u0442\u044c\u0441\u044f \u0432 \u0442\u0430\u043a\u043e\u043c \u0444\u043e\u0440\u043c\u0430\u0442\u0435: false (26 ms).
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440 \u0441\u0442\u043e\u044f\u043d\u043a\u0438 \u0441\u0430\u043c\u043e\u043b\u0451\u0442\u043e\u0432-\u0441\u0442\u044d\u043a. \u0420\u0430\u0437\u043c\u0435\u0440 \u0441\u0442\u043e\u044f\u043d\u043a\u0438 \u00ad 5- \u043c\u0435\u0441\u0442. \u0420\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c: \u0432\u0432\u043e\u0434\u0438\u043c \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u044c \u0431\u043e\u0440\u0442\u043e\u0432\u044b\u0435 \u043d\u043e\u043c\u0435\u0440\u0430 \u0441\u0430\u043c\u043e\u043b\u0451\u0442\u043e\u0432, \u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0438\u0445 \u0437\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u0435\u0442 (\u201c\u0441\u0442\u0430\u0432\u0438\u0442\u201d \u0438\u0445 \u043d\u0430 \u0441\u0442\u043e\u044f\u043d\u043a\u0443). \u041f\u0440\u0438 \u0432\u0432\u043e\u0434\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u201cexitAll\u201d \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u0440\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u0430\u0442\u044c \u043d\u043e\u043c\u0435\u0440\u0430 \u0441\u0430\u043c\u043e\u043b\u0451\u0442\u043e\u0432 \u0432 \u043f\u043e\u0440\u044f\u0434\u043a\u0435 \u043f\u043e\u043a\u0438\u0434\u0430\u043d\u0438\u044f \u0441\u0442\u043e\u044f\u043d\u043a\u0438 (\u0438 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0438\u0445 \u0432\u0441\u0435 \u0438\u0437 \u043f\u0430\u043c\u044f\u0442\u0438). \u041f\u0440\u0438 \u0432\u0432\u043e\u0434\u0435 \u201cexitLast\u201d \u00ad \u0434\u043e\u043b\u0436\u043d\u0430 \u0440\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u0430\u0442\u044c \u0438 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0438\u0437 \u043f\u0430\u043c\u044f\u0442\u0438 \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u043e\u0442 \u0441\u0430\u043c\u043e\u043b\u0451\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u0435\u0439\u0447\u0430\u0441 \u0432\u044b\u0435\u0437\u0436\u0430\u0435\u0442. \u0415\u0441\u043b\u0438 \u0441\u0442\u043e\u044f\u043d\u043a\u0430 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0430 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e, \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c\u0443 \u0441\u0430\u043c\u043e\u043b\u0451\u0442\u0443 \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u043e\u0442\u043a\u0430\u0437\u0430\u043d\u043e \u0432\u043e \u0432\u044a\u0435\u0437\u0434\u0435.
- \u041f\u043e \u0434\u0438\u043f\u043b\u043e\u043c\u0443: \u043f\u043e\u0441\u043b\u0435 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u0441\u043f\u0438\u0441\u043e\u043a \u0432\u0441\u0435\u0445 \u0441\u0432\u043e\u0438\u0445 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043e\u0432 \u0441 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430\u043c\u0438.
", "video": "", "video_id": "6819293", "video_date": null, "materials": [], "comments": [9278, 11863, 15698, 15711, 24841, 25065, 25463, 25465, 28886]}}, {"model": "courses.lesson", "pk": 57, "fields": {"free": false, "token": "2#37", "title": "\u041d\u0430\u0431\u043e\u0440\u044b \u0443\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432", "sort": 4, "course": 2, "theme": 23, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u0432 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u043e\u0436\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0442\u044c \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u043d\u0441\u043e\u043b\u044c \u0438 \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u043f\u0435\u0440\u0435\u0447\u0435\u043d\u044c \u043b\u0435\u043a\u0430\u0440\u0441\u0442\u0432, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0440\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u0432\u0435\u0441\u044c \u0438\u0445 \u0441\u043f\u0438\u0441\u043e\u043a \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 LIST.
", "video": "", "video_id": "6819326", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 58, "fields": {"free": false, "token": "2#38", "title": "\u041a\u0430\u0440\u0442\u044b \u0434\u0430\u043d\u043d\u044b\u0445. \u041a\u043b\u044e\u0447\u0438 \u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f", "sort": 5, "course": 2, "theme": 23, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0434\u0430\u0432\u0430\u0442\u044c \u0438\u043c\u044f \u0432\u043b\u0430\u0434\u0435\u043b\u044c\u0446\u0430 \u0430\u0432\u0442\u043e\u043c\u043e\u0431\u0438\u043b\u044f \u043f\u043e \u0435\u0433\u043e \u043d\u043e\u043c\u0435\u0440\u0443. \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u0431\u044b\u0442\u044c \u0443\u043c\u043d\u043e\u0439: \u0435\u0441\u043b\u0438 \u0443 \u043d\u0435\u0451 \u0432 \u043f\u0430\u043c\u044f\u0442\u0438 \u043d\u043e\u043c\u0435\u0440\u0430 \u043d\u0435\u0442, \u043e\u043d\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u043f\u043e\u043f\u0440\u043e\u0441\u0438\u0442\u044c \u0432\u0432\u0435\u0441\u0442\u0438 \u0435\u0433\u043e \u0438\u043c\u044f \u0438 \u0437\u0430\u043f\u043e\u043c\u043d\u0438\u0442\u044c.
- \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0443\u043c\u043d\u044b\u0439 \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043d\u043e\u0439 \u043a\u043d\u0438\u0433\u0438. \u0415\u0441\u043b\u0438 \u0432 \u043d\u0435\u0451 \u0432\u0432\u0435\u0441\u0442\u0438 \u043d\u043e\u0432\u043e\u0435 \u0438\u043c\u044f, \u043e\u043d\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0438\u0442\u044c \u043d\u043e\u043c\u0435\u0440 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430. \u0415\u0441\u043b\u0438 \u0432 \u043d\u0435\u0451 \u0432\u0432\u0435\u0441\u0442\u0438 \u043d\u043e\u0432\u044b\u0439 \u043d\u043e\u043c\u0435\u0440 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430, \u0434\u043e\u043b\u0436\u043d\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0438\u0442\u044c \u0438\u043c\u044f. \u0415\u0441\u043b\u0438 \u0432\u0432\u0435\u0434\u0451\u043d\u043d\u043e\u0435 \u0438\u043c\u044f \u0438\u043b\u0438 \u043d\u043e\u043c\u0435\u0440 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430 \u043d\u0430\u0439\u0434\u0435\u043d\u044b, \u0434\u043e\u043b\u0436\u043d\u0430 \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e: \u043d\u043e\u043c\u0435\u0440 \u0438\u043b\u0438 \u0438\u043c\u044f, \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e. \u041a\u043e\u043c\u0430\u043d\u0434\u0430 LIST \u0434\u043e\u043b\u0436\u043d\u0430 \u0432\u044b\u0432\u043e\u0434\u0438\u0442\u044c \u0432\u0441\u0435\u0445 \u0430\u0431\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u0432 \u0430\u043b\u0444\u0430\u0432\u0438\u0442\u043d\u043e\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u0435 \u0441 \u043d\u043e\u043c\u0435\u0440\u0430\u043c\u0438 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043e\u0432.
", "video": "", "video_id": "6819362", "video_date": null, "materials": [], "comments": [9098, 16795]}}, {"model": "courses.lesson", "pk": 59, "fields": {"free": false, "token": "2#39", "title": "\u041f\u043e\u0438\u0441\u043a \u0438 \u0441\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043a\u0430", "sort": 6, "course": 2, "theme": 23, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0412 \u0437\u0430\u0434\u0430\u0447\u0435 \u0441 \u0434\u0435\u0442\u0435\u043a\u0442\u043e\u0440\u043e\u043c \u0431\u043b\u0430\u0442\u043d\u044b\u0445 \u043d\u043e\u043c\u0435\u0440\u043e\u0432 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0439 \u043f\u043e\u0438\u0441\u043a, \u043f\u043e\u0438\u0441\u043a \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e HashSet \u0438 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e TreeSet. \u0418\u0437\u043c\u0435\u0440\u0438\u0442\u044c \u0438 \u0441\u0440\u0430\u0432\u043d\u0438\u0442\u044c \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c 4\u00ad\u0445 \u0432\u0438\u0434\u043e\u0432 \u043f\u043e\u0438\u0441\u043a\u0430 \u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0433\u043e \u0437\u0430\u0434\u0430\u043d\u0438\u044f.
", "video": "", "video_id": "6819370", "video_date": null, "materials": [], "comments": [9110, 28736]}}, {"model": "courses.lesson", "pk": 60, "fields": {"free": false, "token": "2#42", "title": "\u041d\u0430\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0435 \u043a\u043b\u0430\u0441\u0441\u043e\u0432", "sort": 2, "course": 2, "theme": 24, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0432\u043e\u0440\u043e\u0431\u044c\u044f, \u0441\u0442\u0440\u0430\u0443\u0441\u0430, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0434\u0432\u0430 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0445 \u043a\u043b\u0430\u0441\u0441\u0430 \u0434\u043b\u044f \u043b\u0435\u0442\u0430\u044e\u0449\u0438\u0445 \u0438 \u043d\u0435\u043b\u0435\u0442\u0430\u044e\u0449\u0438\u0445 \u043f\u0442\u0438\u0446, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u043e\u043b\u0436\u043d\u044b \u0440\u0430\u0441\u0448\u0438\u0440\u044f\u0442\u044c \u043a\u043b\u0430\u0441\u0441 Bird. \u041e\u0442\u043d\u0430\u0441\u043b\u0435\u0434\u0443\u0439\u0442\u0435 \u043e\u0442 \u044d\u0442\u0438\u0445 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0445 \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u043a\u043b\u0430\u0441\u0441\u044b \u0432\u0441\u0435\u0445 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0445 \u043f\u0442\u0438\u0446, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0435\u0441\u0442\u044c \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0435.
", "video": "", "video_id": "6819372", "video_date": null, "materials": [], "comments": [17282]}}, {"model": "courses.lesson", "pk": 61, "fields": {"free": false, "token": "2#43", "title": "\u0414\u043e\u0441\u0442\u0443\u043f \u043a \u043c\u0435\u0442\u043e\u0434\u0430\u043c \u0438 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u043c", "sort": 3, "course": 2, "theme": 24, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u041e\u0442\u0432\u0435\u0442\u044c\u0442\u0435, \u043f\u043e\u043d\u044f\u0442\u043d\u043e \u043b\u0438 \u0432\u0430\u043c, \u043f\u043e\u0447\u0435\u043c\u0443 \u0442\u0435 \u0438\u043b\u0438 \u0438\u043d\u044b\u0435 \u043c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u044b \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u044b \u0432 \u043a\u043b\u0430\u0441\u0441\u0430\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432 RoadCamera \u0438 RoadController. \u0417\u0430\u0434\u0430\u0439\u0442\u0435 \u0432\u043e\u043f\u0440\u043e\u0441\u044b, \u0435\u0441\u043b\u0438 \u0447\u0442\u043e-\u043b\u0438\u0431\u043e \u0431\u0443\u0434\u0435\u0442 \u043d\u0435\u043f\u043e\u043d\u044f\u0442\u043d\u043e.
", "video": "", "video_id": "6819379", "video_date": null, "materials": [], "comments": [14615]}}, {"model": "courses.lesson", "pk": 62, "fields": {"free": false, "token": "2#44", "title": "\u0410\u0431\u0441\u0442\u0440\u0430\u043a\u0442\u043d\u044b\u0435 \u043a\u043b\u0430\u0441\u0441\u044b", "sort": 4, "course": 2, "theme": 24, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0421\u0434\u0435\u043b\u0430\u0442\u044c \u0430\u0431\u0441\u0442\u0440\u0430\u043a\u0442\u043d\u044b\u043c\u0438 \u043a\u043b\u0430\u0441\u0441\u044b \u043b\u0435\u0442\u0430\u044e\u0449\u0438\u0445 \u0438 \u043d\u0435\u043b\u0435\u0442\u0430\u044e\u0449\u0438\u0445 \u043f\u0442\u0438\u0446.
", "video": "", "video_id": "6819387", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 63, "fields": {"free": false, "token": "2#45", "title": "\u0418\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u044b \u0438 \u043f\u043e\u043b\u0438\u043c\u043e\u0440\u0444\u0438\u0437\u043c", "sort": 5, "course": 2, "theme": 24, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044e \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0433\u043e \u0432\u0435\u0441\u0430 \u0443 \u0436\u0438\u0432\u043e\u0442\u043d\u043e\u0433\u043e \u0432 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440 \u0438 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043c\u0435\u0442\u043e\u0434 voice(), \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442 \u0433\u043e\u043b\u043e\u0441 \u0436\u0438\u0432\u043e\u0442\u043d\u043e\u0433\u043e (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u201c\u043a\u0440\u044f-\u043a\u0440\u044f\u201d) \u0438 \u0435\u0433\u043e \u0432\u0435\u0441.
- \u0421\u0434\u0435\u043b\u0430\u0442\u044c \u0432\u0441\u0435\u0445 \u0436\u0438\u0432\u043e\u0442\u043d\u044b\u0445 \u0441\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u0435\u043c\u044b\u043c\u0438 \u043f\u043e \u0432\u0435\u0441\u0443.
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043c\u043d\u043e\u0433\u043e \u0436\u0438\u0432\u043e\u0442\u043d\u044b\u0445, \u043e\u0442\u0441\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u043e \u0432\u0435\u0441\u0443 \u0438 \u0432\u044b\u0437\u0432\u0430\u0442\u044c \u0443 \u0432\u0441\u0435\u0445 \u043c\u0435\u0442\u043e\u0434 voice().
", "video": "", "video_id": "6819401", "video_date": null, "materials": [], "comments": [15803]}}, {"model": "courses.lesson", "pk": 64, "fields": {"free": false, "token": "2#46", "title": "\u041f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439", "sort": 6, "course": 2, "theme": 24, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u041f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0438\u0442\u044c \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u0443\u0434\u0443\u0442 \u0432 \u0432\u0430\u0448\u0435\u043c \u0434\u0438\u043f\u043b\u043e\u043c\u043d\u043e\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438, \u0441\u043e \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430\u043c\u0438 \u0438 \u043c\u0435\u0442\u043e\u0434\u0430\u043c\u0438. \u041f\u0440\u0438\u043c\u0435\u0440\u044b: Contact, Message...
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043a\u043b\u0430\u0441\u0441\u044b \u201c\u0421\u0442\u0443\u043b\u201d, \u201c\u0441\u0442\u043e\u043b\u201d \u0438 \u201c\u043c\u0435\u0431\u0435\u043b\u044c\u201d, \u0437\u0430\u0434\u0430\u0439\u0442\u0435 \u0438\u043c \u043c\u0435\u0442\u043e\u0434\u044b \u0438 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043e\u0442\u043d\u0430\u0441\u043b\u0435\u0434\u0443\u0439\u0442\u0435 \u044d\u0442\u0438 \u043a\u043b\u0430\u0441\u0441\u044b \u0434\u0440\u0443\u0433 \u043e\u0442 \u0434\u0440\u0443\u0433\u0430.
", "video": "", "video_id": "6819413", "video_date": null, "materials": [5493], "comments": [9078]}}, {"model": "courses.lesson", "pk": 65, "fields": {"free": true, "token": "4#0", "title": "\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435", "sort": 1, "course": 4, "theme": 18, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": [9948, 14071, 27597, 27954]}}, {"model": "courses.lesson", "pk": 66, "fields": {"free": true, "token": "2#0", "title": "\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435", "sort": 1, "course": 2, "theme": 19, "description": "", "video": "", "video_id": "0", "video_date": null, "materials": [], "comments": [8092, 11212, 11663, 15981, 19412, 20248, 22230, 28805]}}, {"model": "courses.lesson", "pk": 67, "fields": {"free": false, "token": "2#8", "title": "\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435", "sort": 1, "course": 2, "theme": 20, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": [11202, 11209, 17122, 20789, 21717, 24325]}}, {"model": "courses.lesson", "pk": 68, "fields": {"free": false, "token": "2#16", "title": "\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435", "sort": 1, "course": 2, "theme": 21, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": [10636, 23441]}}, {"model": "courses.lesson", "pk": 69, "fields": {"free": false, "token": "2#49", "title": "\u041e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439", "sort": 2, "course": 2, "theme": 26, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u041a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u0430\u044f \u0438\u0433\u0440\u0430 \u201c\u0413\u043e\u0440\u043e\u0434\u0430\u201d \u00ad \u043f\u0440\u043e\u0435\u043a\u0442 Cities.zip. \u0412 \u044d\u0442\u043e\u0439 \u0438\u0433\u0440\u0435 \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u0438 \u043d\u0443\u0436\u043d\u043e \u043f\u0435\u0447\u0430\u0442\u0430\u0442\u044c \u0433\u043e\u0440\u043e\u0434\u0430. \u041d\u043e \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0442\u044c \u0442\u043e, \u0447\u0442\u043e \u043f\u0440\u0438\u0432\u0435\u0434\u0451\u0442 \u043a \u043e\u0448\u0438\u0431\u043a\u0435 \u0438 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044e. \u041d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0437\u0430\u0449\u0438\u0442\u0438\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443 \u043e\u0442 \u043e\u0448\u0438\u0431\u043e\u043a \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 try...catch.
", "video": "", "video_id": "6819429", "video_date": null, "materials": [5496], "comments": []}}, {"model": "courses.lesson", "pk": 70, "fields": {"free": false, "token": "2#50", "title": "\u0422\u0438\u043f\u044b \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439", "sort": 3, "course": 2, "theme": 26, "description": "", "video": "", "video_id": "6819433", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 71, "fields": {"free": false, "token": "2#51", "title": "\u041e\u0442\u043b\u0430\u0434\u043a\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439", "sort": 4, "course": 2, "theme": 26, "description": "", "video": "", "video_id": "6819437", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 72, "fields": {"free": false, "token": "2#52", "title": "\u041c\u043e\u0434\u0443\u043b\u044c\u043d\u043e\u0435 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435", "sort": 5, "course": 2, "theme": 26, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u041c\u0435\u0442\u043e\u0434\u044b \u043a\u043b\u0430\u0441\u0441\u0430 TextAnalyzer (\u043f\u0440\u043e\u0435\u043a\u0442 TextAnalyzer.zip) \u043f\u043e\u043a\u0440\u044b\u0442\u044c \u0442\u0435\u0441\u0442\u0430\u043c\u0438.
", "video": "", "video_id": "6819446", "video_date": null, "materials": [5499], "comments": []}}, {"model": "courses.lesson", "pk": 73, "fields": {"free": false, "token": "2#55", "title": "\u0421\u043e\u0437\u0434\u0430\u0451\u043c \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441", "sort": 2, "course": 2, "theme": 27, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0444\u043e\u0440\u043c\u0443 \u0441 \u043f\u043e\u043b\u044f\u043c\u0438: \u201c\u0424\u0430\u043c\u0438\u043b\u0438\u044f\u201d, \u201c\u0418\u043c\u044f\u201d, \u201c\u041e\u0442\u0447\u0435\u0441\u0442\u0432\u043e\u201d, \u201c\u0414\u0430\u0442\u0430 \u0440\u043e\u0436\u0434\u0435\u043d\u0438\u044f\u201d \u0438 \u201c\u0413\u043e\u0440\u043e\u0434 \u043f\u0440\u043e\u0436\u0438\u0432\u0430\u043d\u0438\u044f\u201d.
", "video": "", "video_id": "6824663", "video_date": null, "materials": [], "comments": [12109]}}, {"model": "courses.lesson", "pk": 74, "fields": {"free": false, "token": "2#56", "title": "\u0421\u043e\u0431\u044b\u0442\u0438\u044f \u0438 \u0438\u0445 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430", "sort": 3, "course": 2, "theme": 27, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0434\u0432\u0435 \u0444\u043e\u0440\u043c\u044b: \u043f\u0435\u0440\u0432\u0443\u044e \u00ad \u0441 \u0442\u0440\u0435\u043c\u0430 \u043f\u043e\u043b\u044f\u043c\u0438 \u00ad \u201c\u0424\u0430\u043c\u0438\u043b\u0438\u044f\u201d, \u201c\u0418\u043c\u044f\u201d \u0438 \u201c\u041e\u0442\u0447\u0435\u0441\u0442\u0432\u043e\u201d \u0438 \u043a\u043d\u043e\u043f\u043e\u0439, \u0438 \u0432\u0442\u043e\u0440\u0443\u044e \u0441 \u043e\u0434\u043d\u0438\u043c \u043f\u043e\u043b\u0435\u043c \u201c\u0424.\u0418.\u041e.\u201d \u0438 \u043a\u043d\u043e\u043f\u043a\u043e\u0439. \u041f\u0440\u0438 \u043d\u0430\u0436\u0430\u0442\u0438\u0438 \u043d\u0430 \u043a\u043d\u043e\u043f\u043a\u0443 \u043f\u0435\u0440\u0432\u0430\u044f \u0444\u043e\u0440\u043c\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u043f\u043e\u0434\u043c\u0435\u043d\u044f\u0442\u044c\u0441\u044f \u0432\u0442\u043e\u0440\u043e\u0439, \u0438 \u043d\u0430\u043e\u0431\u043e\u0440\u043e\u0442. \u041f\u0440\u0438 \u044d\u0442\u043e\u043c \u043f\u043e\u043b\u044f \u0444\u043e\u0440\u043c\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0437\u0430\u043f\u043e\u043b\u043d\u044f\u0442\u044c\u0441\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438: \u0435\u0441\u043b\u0438 \u0432 \u043f\u0435\u0440\u0432\u043e\u0439 \u0444\u043e\u0440\u043c\u0435 \u0431\u044b\u043b\u0438 \u0432\u0432\u0435\u0434\u0435\u043d\u044b \u0434\u0430\u043d\u043d\u044b\u0435, \u043e\u043d\u0438 \u0434\u043e\u043b\u0436\u043d\u044b \u043e\u043a\u0430\u0437\u0430\u0442\u044c\u0441\u044f \u0432\u043e \u0432\u0442\u043e\u0440\u043e\u0439 \u0444\u043e\u0440\u043c\u0435, \u0438 \u043d\u0430\u043e\u0431\u043e\u0440\u043e\u0442.
- \u0421\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e \u0438\u0437\u0443\u0447\u0438\u0442\u044c, \u043a\u0430\u043a \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u0441\u043e\u0447\u0435\u0442\u0430\u043d\u0438\u044f \u043a\u043b\u0430\u0432\u0438\u0448.
- \u0423\u0441\u043b\u043e\u0436\u043d\u0451\u043d\u043d\u043e\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435: \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043c\u0435\u0436\u0434\u0443 \u0434\u0432\u0443\u043c\u044f \u0444\u043e\u0440\u043c\u0430\u043c\u0438 \u0432 \u043e\u0431\u0435 \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e \u0442\u0430\u043a\u0436\u0435 \u043f\u0440\u0438 \u043d\u0430\u0436\u0430\u0442\u0438\u0438 \u043d\u0430 <Ctrl+Enter>.
", "video": "", "video_id": "6824667", "video_date": null, "materials": [], "comments": [12110, 22494]}}, {"model": "courses.lesson", "pk": 75, "fields": {"free": false, "token": "2#57", "title": "\u0414\u0438\u0430\u043b\u043e\u0433\u043e\u0432\u044b\u0435 \u043e\u043a\u043d\u0430", "sort": 4, "course": 2, "theme": 27, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0412 \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u043e\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438, \u0435\u0441\u043b\u0438 \u043d\u0435 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u043e \u043f\u043e\u043b\u0435 \u0441 \u0444\u0430\u043c\u0438\u043b\u0438\u0435\u0439 \u0438\u043b\u0438 \u0438\u043c\u0435\u043d\u0435\u043c, \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0430\u0442\u044c, \u0447\u0442\u043e \u043d\u0443\u0436\u043d\u043e \u0437\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u044c. \u0415\u0441\u043b\u0438 \u043d\u0435 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u043e \u043e\u0442\u0447\u0435\u0441\u0442\u0432\u043e, \u0441\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0442\u044c, \u0443\u0432\u0435\u0440\u0435\u043d\u044b \u043b\u0438 \u0412\u044b \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u043d\u0435 \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043e\u0442\u0447\u0435\u0441\u0442\u0432\u043e.
- \u0423\u0441\u043b\u043e\u0436\u043d\u0451\u043d\u043d\u043e\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435: \u0443\u0431\u0440\u0430\u0442\u044c \u043a\u043d\u043e\u043f\u043a\u0443 \u201cCancel\u201d \u0432 \u0434\u0438\u0430\u043b\u043e\u0433\u043e\u0432\u043e\u043c \u043e\u043a\u043d\u0435 \u0438\u0437 \u0442\u0440\u0451\u0445 \u043a\u043d\u043e\u043f\u043e\u043a (\u043d\u0430\u0439\u0442\u0438 \u044d\u0442\u0443 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0438 \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e).
", "video": "", "video_id": "6824668", "video_date": null, "materials": [], "comments": [12111]}}, {"model": "courses.lesson", "pk": 76, "fields": {"free": false, "token": "2#58", "title": "\u041c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u044b \u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438", "sort": 5, "course": 2, "theme": 27, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0412 \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u043e\u0439 \u0444\u043e\u0440\u043c\u0435 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u043d\u0435 \u0440\u0430\u0437\u044a\u0435\u0437\u0436\u0430\u043b\u0438\u0441\u044c \u043f\u0440\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0438 \u0440\u0430\u0437\u043c\u0435\u0440\u0430 \u043e\u043a\u043d\u0430.
\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432 \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0432\u043e \u0432\u0442\u043e\u0440\u0443\u044e \u0444\u043e\u0440\u043c\u0443 JProgressBar \u0438 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0442\u044c \u043d\u0430 \u043d\u0451\u043c, \u0432 \u043a\u0430\u043a\u043e\u0439 \u043c\u0435\u0440\u0435 \u0444\u043e\u0440\u043c\u0430 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0430 (\u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u0434\u043b\u0438\u043d\u0430 \u00ad \u043d\u0430 \u0412\u0430\u0448\u0435 \u0443\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u0438\u0435).
\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u041f\u043e \u043d\u0435\u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u043d\u044b\u043c \u0432 \u0432\u0438\u0434\u0435\u043e \u044d\u043a\u0440\u0430\u043d\u0430\u043c \u0440\u0430\u0441\u043f\u0438\u0441\u0430\u0442\u044c, \u0438\u0437 \u0447\u0435\u0433\u043e \u043e\u043d\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u0442. \u041d\u0430\u0440\u0438\u0441\u043e\u0432\u0430\u0442\u044c \u0441\u0445\u0435\u043c\u0443 \u043d\u0430 \u0431\u0443\u043c\u0430\u0433\u0435, \u043e\u0442\u0441\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u043b\u0438 \u0441\u0444\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438 \u043f\u0440\u0438\u0441\u043b\u0430\u0442\u044c.
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0438\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0438\u0437 \u0442\u0440\u0451\u0445 \u044d\u043a\u0440\u0430\u043d\u043e\u0432 \u0431\u0435\u0437 \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u044f \u0438 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0439 (\u0442\u043e\u043b\u044c\u043a\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0444\u043e\u0440\u043c): \u0432\u0432\u043e\u0434 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430, \u0432\u0432\u043e\u0434 \u043a\u043e\u0434\u0430 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f \u0438 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0441\u043f\u0438\u0441\u043a\u0430 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043e\u0432.
", "video": "", "video_id": "6824677", "video_date": null, "materials": [5508], "comments": [12114]}}, {"model": "courses.lesson", "pk": 79, "fields": {"free": false, "token": "2#62", "title": "\u0421\u0442\u0438\u043b\u044c \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u044f", "sort": 1, "course": 2, "theme": 28, "description": "\u0443\u0440\u043e\u043a 9.1
", "video": "", "video_id": "6824679", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 80, "fields": {"free": false, "token": "2#63", "title": "\u041e\u0442\u0441\u0442\u0443\u043f\u044b \u0438 \u0432\u044b\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u043d\u0438\u0435", "sort": 2, "course": 2, "theme": 28, "description": "\u0443\u0440\u043e\u043a 9.2
", "video": "", "video_id": "6824682", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 81, "fields": {"free": false, "token": "2#64", "title": "\u0426\u0432\u0435\u0442\u0430 \u0438 \u043f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u043e\u0441\u0442\u044c", "sort": 3, "course": 2, "theme": 28, "description": "\u0443\u0440\u043e\u043a 9.3
", "video": "", "video_id": "6824688", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 82, "fields": {"free": false, "token": "2#65", "title": "\u0420\u0438\u0441\u043e\u0432\u0430\u043d\u0438\u0435 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0439 \u0438 \u0444\u0438\u0433\u0443\u0440", "sort": 4, "course": 2, "theme": 28, "description": "\u0443\u0440\u043e\u043a 9.4
", "video": "", "video_id": "6824693", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 83, "fields": {"free": false, "token": "2#66", "title": "\u0413\u0440\u0430\u043d\u0438\u0446\u044b \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432", "sort": 5, "course": 2, "theme": 28, "description": "\u0443\u0440\u043e\u043a 9.5
", "video": "", "video_id": "6824695", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 84, "fields": {"free": false, "token": "2#67", "title": "\u041d\u0430\u0434\u043f\u0438\u0441\u0438 \u0438 \u0448\u0440\u0438\u0444\u0442\u044b", "sort": 6, "course": 2, "theme": 28, "description": "\u0443\u0440\u043e\u043a 9.6
", "video": "", "video_id": "6824698", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 85, "fields": {"free": false, "token": "2#69", "title": "\u0427\u0442\u0435\u043d\u0438\u0435 \u0444\u0430\u0439\u043b\u043e\u0432", "sort": 1, "course": 2, "theme": 29, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u0434, \u043d\u0430 \u0432\u0445\u043e\u0434 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043f\u043e\u0434\u0430\u0451\u0442\u0441\u044f \u043f\u0443\u0442\u044c \u043a \u043f\u0430\u043f\u043a\u0435, \u0430 \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442\u0441\u044f \u0434\u0435\u0440\u0435\u0432\u043e \u0438\u0437 \u0444\u0430\u0439\u043b\u043e\u0432 \u0438 \u043f\u0430\u043f\u043e\u043a, \u043d\u0430\u0445\u043e\u0434\u044f\u0449\u0438\u0445\u0441\u044f \u0432 \u044d\u0442\u043e\u0439 \u043f\u0430\u043f\u043a\u0435. \u041f\u0440\u0438 \u044d\u0442\u043e\u043c \u0443 \u0444\u0430\u0439\u043b\u043e\u0432 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0443\u043a\u0430\u0437\u0430\u043d \u0440\u0430\u0437\u043c\u0435\u0440 \u0432 \u0431\u0430\u0439\u0442\u0430\u0445.
", "video": "", "video_id": "6819522", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 86, "fields": {"free": false, "token": "2#70", "title": "\u0417\u0430\u043f\u0438\u0441\u044c \u0432 \u0444\u0430\u0439\u043b", "sort": 2, "course": 2, "theme": 29, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u0434, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u0443\u044e \u043f\u0430\u043f\u043a\u0443 \u0441 \u0444\u0430\u0439\u043b\u0430\u043c\u0438 \u0441 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435\u043c \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0432 \u0434\u0440\u0443\u0433\u0443\u044e \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u0443\u044e \u043f\u0430\u043f\u043a\u0443.
", "video": "", "video_id": "6819548", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 87, "fields": {"free": false, "token": "2#71", "title": "\u0422\u0430\u0431\u043b\u0438\u0447\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b", "sort": 3, "course": 2, "theme": 29, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u044b\u0432\u0430\u0442\u044c \u0444\u0430\u0439\u043b\u044b \u0444\u043e\u0440\u043c\u0430\u0442\u0430 \u201cProbabilites.txt\u201d \u0432 \u0444\u0430\u0439\u043b\u044b \u0444\u043e\u0440\u043c\u0430\u0442\u0430 \u201cProbabilities \u00ad formatted.txt\u201d.
", "video": "", "video_id": "6819565", "video_date": null, "materials": [11264, 11265], "comments": []}}, {"model": "courses.lesson", "pk": 88, "fields": {"free": false, "token": "2#72", "title": "\u0424\u0430\u0439\u043b\u044b XML \u0438 HTML", "sort": 4, "course": 2, "theme": 29, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u0434, \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u044e\u0449\u0438\u0439 \u0441\u043f\u0438\u0441\u043e\u043a \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u044b\u0445 \u043f\u0443\u0442\u0435\u0439 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0439, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 \u043a\u0443\u0440\u0441\u0430 \u00ad http://ucancode.ru/java/
", "video": "", "video_id": "6819638", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 89, "fields": {"free": false, "token": "2#73", "title": "\u0424\u0430\u0439\u043b\u044b JSON", "sort": 5, "course": 2, "theme": 29, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043d\u043e\u0439 \u043a\u043d\u0438\u0433\u0438 \u0438\u0437 4\u00ad\u0433\u043e \u0443\u0440\u043e\u043a\u0430 5\u00ad\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f \u0432 JSON\u00ad \u0444\u043e\u0440\u043c\u0430\u0442 (\u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u0443 EXPORT\u0438 \u0437\u0430\u043f\u0440\u043e\u0441 \u043f\u0443\u0442\u0438 \u043a \u043f\u0430\u043f\u043a\u0435, \u0432 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0444\u0430\u0439\u043b).
", "video": "", "video_id": "6819670", "video_date": null, "materials": [11266], "comments": []}}, {"model": "courses.lesson", "pk": 90, "fields": {"free": false, "token": "2#74", "title": "\u0427\u0442\u0435\u043d\u0438\u0435 \u0444\u0430\u0439\u043b\u043e\u0432 \u0438\u0437 \u0441\u0435\u0442\u0438", "sort": 6, "course": 2, "theme": 29, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0431\u0443\u0434\u0435\u0442 \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u0442\u044c \u0432 \u043f\u0430\u043f\u043a\u0443 \u0432\u0441\u0435 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0441 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0439 \u0432\u0435\u0431\u00ad\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b.
", "video": "", "video_id": "6819687", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 91, "fields": {"free": false, "token": "2#75", "title": "\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b", "sort": 7, "course": 2, "theme": 29, "description": "10.7
", "video": "", "video_id": "6819696", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 92, "fields": {"free": false, "token": "4#12", "title": "\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435", "sort": 1, "course": 4, "theme": 36, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 93, "fields": {"free": false, "token": "4#13", "title": "\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435, \u0432\u044b\u0440\u0435\u0437\u0430\u043d\u0438\u0435, \u0432\u0441\u0442\u0430\u0432\u043a\u0430 \u0441\u0442\u0440\u043e\u043a, \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432 \u0438 \u044f\u0447\u0435\u0435\u043a. \u0413\u043e\u0440\u044f\u0447\u0438\u0435 \u043a\u043b\u0430\u0432\u0438\u0448\u0438 Ctrl + C, Ctrl + X, Ctrl + V. \u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u0432\u043c\u0435\u0441\u0442\u043e \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 \u0434\u0430\u043d\u043d\u044b\u0445, \u0432\u0441\u0442\u0430\u0432\u043a\u0430 \u0441\u043e \u0441\u0434\u0432\u0438\u0433\u043e\u043c.", "sort": 2, "course": 4, "theme": 36, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 94, "fields": {"free": false, "token": "4#14", "title": "\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0434\u0443\u0431\u043b\u0438\u043a\u0430\u0442\u043e\u0432. \u041f\u043e \u043e\u0434\u043d\u043e\u043c\u0443 \u043f\u043e\u043b\u044e, \u043f\u043e \u0432\u0441\u0435\u043c \u043f\u043e\u043b\u044f\u043c, \u0441 \u0432\u044b\u0431\u043e\u0440\u043e\u043c \u043f\u043e\u043b\u0435\u0439.", "sort": 3, "course": 4, "theme": 36, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 95, "fields": {"free": false, "token": "4#15", "title": "\u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u00ab\u0422\u0435\u043a\u0441\u0442 \u043f\u043e \u0441\u0442\u043e\u043b\u0431\u0446\u0430\u043c\u00bb. \u0420\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044e, \u043f\u043e \u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u0448\u0438\u0440\u0438\u043d\u0435.", "sort": 4, "course": 4, "theme": 36, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 96, "fields": {"free": false, "token": "4#16", "title": "\u00ab\u041f\u0440\u043e\u0442\u044f\u0433\u0438\u0432\u0430\u043d\u0438\u0435\u00bb (\u0430\u0432\u0442\u043e\u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435) \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0432 \u044f\u0447\u0435\u0439\u043a\u0430\u0445. \u0427\u0438\u0441\u043b\u0430, \u0434\u0430\u0442\u044b, \u0430\u0432\u0442\u043e\u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0441 \u0437\u0430\u0434\u0430\u043d\u043d\u044b\u043c \u0448\u0430\u0433\u043e\u043c.", "sort": 5, "course": 4, "theme": 36, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 97, "fields": {"free": false, "token": "4#17", "title": "\u0420\u0430\u0431\u043e\u0442\u0430 \u0441 \u0431\u043e\u043b\u044c\u0448\u0438\u043c\u0438 \u0442\u0430\u0431\u043b\u0438\u0446\u0430\u043c\u0438: \u043c\u0430\u0441\u0448\u0442\u0430\u0431, \u0437\u0430\u043a\u0440\u0435\u043f\u043b\u0435\u043d\u0438\u0435 \u043e\u0431\u043b\u0430\u0441\u0442\u0435\u0439", "sort": 6, "course": 4, "theme": 36, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 98, "fields": {"free": false, "token": "4#19", "title": "\u041d\u0430\u0447\u0430\u043b\u043e \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0444\u043e\u0440\u043c\u0443\u043b\u0430\u043c\u0438. \u041f\u0440\u043e\u0441\u0442\u0435\u0439\u0448\u0438\u0435 \u0444\u043e\u0440\u043c\u0443\u043b\u044b (\u0430\u0440\u0438\u0444\u043c\u0435\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f +, -, *, /, \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0441\u0442\u0440\u043e\u043a &).", "sort": 1, "course": 4, "theme": 37, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 99, "fields": {"free": false, "token": "4#20", "title": "\u0412\u0438\u0434\u044b \u0444\u0443\u043d\u043a\u0446\u0438\u0439. \u0421\u043f\u043e\u0441\u043e\u0431\u044b \u0432\u0432\u043e\u0434\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0439. \u041f\u043e\u0438\u0441\u043a \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0434\u043b\u044f \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 Excel.", "sort": 2, "course": 4, "theme": 37, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 100, "fields": {"free": false, "token": "2#77", "title": "\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 MySQL", "sort": 1, "course": 2, "theme": 30, "description": "\u0443\u0440\u043e\u043a 11.1
", "video": "", "video_id": "6819722", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 101, "fields": {"free": false, "token": "2#78", "title": "\u0422\u0430\u0431\u043b\u0438\u0446\u044b, \u043f\u043e\u043b\u044f \u0438 \u0437\u0430\u043f\u0438\u0441\u0438", "sort": 2, "course": 2, "theme": 30, "description": "\u0443\u0440\u043e\u043a 11.2
", "video": "", "video_id": "6819745", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 102, "fields": {"free": false, "token": "2#79", "title": "ORM: \u043e\u0431\u044a\u0435\u043a\u0442\u044b \u0438 \u0437\u0430\u043f\u0438\u0441\u0438", "sort": 3, "course": 2, "theme": 30, "description": "\u0443\u0440\u043e\u043a 11.3
", "video": "", "video_id": "6819789", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 103, "fields": {"free": false, "token": "2#80", "title": "\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435, \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435", "sort": 4, "course": 2, "theme": 30, "description": "11.4
", "video": "", "video_id": "6819890", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 104, "fields": {"free": false, "token": "4#22", "title": "\u0421\u043f\u043e\u0441\u043e\u0431\u044b \u0432\u0432\u043e\u0434\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0439. \u041f\u0440\u043e\u0441\u043c\u043e\u0442\u0440 \u043f\u043e\u0434\u0441\u043a\u0430\u0437\u043e\u043a \u0438 \u0441\u043f\u0440\u0430\u0432\u043a\u0438. \u041c\u0430\u0441\u0442\u0435\u0440 \u0444\u0443\u043d\u043a\u0446\u0438\u0439. \u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u044f\u0447\u0435\u0435\u043a \u0441 \u0444\u043e\u0440\u043c\u0443\u043b\u0430\u043c\u0438. \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0412\u041f\u0420", "sort": 1, "course": 4, "theme": 38, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 105, "fields": {"free": false, "token": "2#81", "title": "\u0421\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043a\u0430 \u0438 \u0433\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u043a\u0430", "sort": 5, "course": 2, "theme": 30, "description": "11.5
", "video": "", "video_id": "6819908", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 106, "fields": {"free": false, "token": "2#83", "title": "\u041f\u0440\u043e\u0446\u0435\u0441\u0441\u044b \u0438 \u043f\u043e\u0442\u043e\u043a\u0438", "sort": 1, "course": 2, "theme": 31, "description": "12.1
", "video": "", "video_id": "6819943", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 107, "fields": {"free": false, "token": "2#84", "title": "\u041f\u0440\u0438\u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0438 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435", "sort": 2, "course": 2, "theme": 31, "description": "12.2
", "video": "", "video_id": "6819976", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 108, "fields": {"free": false, "token": "2#85", "title": "\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0433\u043e\u043d\u043a\u0438 \u0438 \u043a\u0440\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0441\u0435\u043a\u0446\u0438\u0438", "sort": 3, "course": 2, "theme": 31, "description": "12.3
", "video": "", "video_id": "6819989", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 109, "fields": {"free": false, "token": "2#86", "title": "\u0412\u0437\u0430\u0438\u043c\u043d\u0430\u044f \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0430", "sort": 4, "course": 2, "theme": 31, "description": "12.4
", "video": "", "video_id": "6820017", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 110, "fields": {"free": false, "token": "2#87", "title": "\u0421\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u044f \u043c\u0435\u0442\u043e\u0434\u043e\u0432", "sort": 5, "course": 2, "theme": 31, "description": "12.5
", "video": "", "video_id": "6820028", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 111, "fields": {"free": false, "token": "2#88", "title": "\u041e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u0438 \u043e\u043f\u043e\u0432\u0435\u0449\u0435\u043d\u0438\u044f", "sort": 6, "course": 2, "theme": 31, "description": "12.6
", "video": "", "video_id": "6820044", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 112, "fields": {"free": false, "token": "2#90", "title": "\u0424\u0430\u043a\u0442\u043e\u0440\u044b \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438", "sort": 1, "course": 2, "theme": 32, "description": "13.1
", "video": "", "video_id": "6820056", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 113, "fields": {"free": false, "token": "2#91", "title": "\u041e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f \u043f\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438", "sort": 2, "course": 2, "theme": 32, "description": "13.2
", "video": "", "video_id": "6820092", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 114, "fields": {"free": false, "token": "4#24", "title": "\u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0413\u041f\u0420. \u0410\u043d\u0430\u043b\u043e\u0433 \u0412\u041f\u0420 \u0434\u043b\u044f \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0434\u043e\u043b\u044c \u0441\u0442\u0440\u043e\u043a.", "sort": 3, "course": 4, "theme": 38, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 115, "fields": {"free": false, "token": "2#92", "title": "\u041e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f \u043f\u043e \u043f\u0430\u043c\u044f\u0442\u0438", "sort": 3, "course": 2, "theme": 32, "description": "13.3
", "video": "", "video_id": "6820168", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 116, "fields": {"free": false, "token": "4#25", "title": "\u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0415\u0421\u041b\u0418. \u0412\u044b\u0432\u043e\u0434 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0443\u0441\u043b\u043e\u0432\u0438\u044f.", "sort": 4, "course": 4, "theme": 38, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 117, "fields": {"free": false, "token": "2#93", "title": "\u041e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0431\u0430\u0437\u0430\u043c\u0438 \u0434\u0430\u043d\u043d\u044b\u0445", "sort": 4, "course": 2, "theme": 32, "description": "13.4
", "video": "", "video_id": "6820214", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 118, "fields": {"free": false, "token": "4#26", "title": "\u0422\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0435 \u0444\u043e\u0440\u043c\u0443\u043b\u044b \u0421\u0416\u041f\u0420\u041e\u0411\u0415\u041b\u042b, \u041f\u0420\u041e\u041f\u041d\u0410\u0427, \u041b\u0415\u0412\u0421\u0418\u041c\u0412, \u041f\u0420\u0410\u0412\u0421\u0418\u041c\u0412, \u041f\u0420\u041e\u041f\u0418\u0421\u041d", "sort": 5, "course": 4, "theme": 38, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 119, "fields": {"free": false, "token": "2#95", "title": "\u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0432\u0435\u0431-\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b", "sort": 1, "course": 2, "theme": 33, "description": "14.1
", "video": "", "video_id": "6820232", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 120, "fields": {"free": false, "token": "2#96", "title": "\u0421\u0442\u0440\u043e\u0447\u043d\u044b\u0435 HTML-\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b", "sort": 2, "course": 2, "theme": 33, "description": "14.2
", "video": "", "video_id": "6820246", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 121, "fields": {"free": false, "token": "2#97", "title": "\u0411\u043b\u043e\u0447\u043d\u044b\u0435 HTML-\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b", "sort": 3, "course": 2, "theme": 33, "description": "14.3
", "video": "", "video_id": "6820264", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 122, "fields": {"free": false, "token": "4#28", "title": "\u0412\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0435 \u0444\u043e\u0440\u043c\u0443\u043b\u044b, \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u044b \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u043e\u0439 \u0444\u043e\u0440\u043c\u0443\u043b\u044b (\u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0415\u0421\u041b\u0418)", "sort": 1, "course": 4, "theme": 39, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": [10976]}}, {"model": "courses.lesson", "pk": 123, "fields": {"free": false, "token": "2#98", "title": "\u041a\u0430\u0441\u043a\u0430\u0434\u043d\u044b\u0435 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0441\u0442\u0438\u043b\u0435\u0439 (CSS)", "sort": 4, "course": 2, "theme": 33, "description": "14.4
", "video": "", "video_id": "6820295", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 124, "fields": {"free": false, "token": "2#99", "title": "\u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 JavaScript-\u043a\u043e\u0434\u0430", "sort": 5, "course": 2, "theme": 33, "description": "14.5
", "video": "", "video_id": "6820375", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 125, "fields": {"free": false, "token": "2#100", "title": "Java Server Pages (JSP)", "sort": 6, "course": 2, "theme": 33, "description": "14.6
", "video": "", "video_id": "6820400", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 126, "fields": {"free": false, "token": "4#29", "title": "\u041a\u043e\u043c\u0431\u0438\u043d\u0430\u0446\u0438\u044f \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u0443\u0441\u043b\u043e\u0432\u0438\u0439. \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0418.", "sort": 2, "course": 4, "theme": 39, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 127, "fields": {"free": false, "token": "2#102", "title": "\u0424\u043e\u0440\u043c\u044b \u0438 \u043f\u043e\u043b\u044f \u0444\u043e\u0440\u043c", "sort": 1, "course": 2, "theme": 34, "description": "15.1
", "video": "", "video_id": "6820506", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 128, "fields": {"free": false, "token": "2#103", "title": "\u041e\u0442\u043f\u0440\u0430\u0432\u043a\u0430 \u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445", "sort": 2, "course": 2, "theme": 34, "description": "15.2
", "video": "", "video_id": "6824427", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 129, "fields": {"free": false, "token": "4#30", "title": "\u041a\u043e\u043c\u0431\u0438\u043d\u0430\u0446\u0438\u044f \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u0443\u0441\u043b\u043e\u0432\u0438\u0439. \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0418\u041b\u0418.", "sort": 3, "course": 4, "theme": 39, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 130, "fields": {"free": false, "token": "2#104", "title": "\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0438 \u043e\u0442\u0432\u0435\u0442\u0430", "sort": 3, "course": 2, "theme": 34, "description": "15.3
", "video": "", "video_id": "6824439", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 131, "fields": {"free": false, "token": "2#105", "title": "\u041a\u0443\u043a\u0438 \u0438 \u0441\u0435\u0441\u0441\u0438\u0438", "sort": 4, "course": 2, "theme": 34, "description": "15.4
", "video": "", "video_id": "6824461", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 132, "fields": {"free": false, "token": "4#31", "title": "\u0424\u0443\u043d\u043a\u0446\u0438\u0438 \u0421\u0427\u0401\u0422\u0415\u0421\u041b\u0418, \u0421\u0423\u041c\u041c\u0415\u0421\u041b\u0418. \u041f\u043e\u0434\u0441\u0447\u0451\u0442 \u0438 \u043f\u043e\u0434\u0441\u0443\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u043f\u043e \u0443\u0441\u043b\u043e\u0432\u0438\u044e", "sort": 4, "course": 4, "theme": 39, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 133, "fields": {"free": false, "token": "2#106", "title": "\u0412\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441 \u0431\u0430\u0437\u043e\u0439 \u0434\u0430\u043d\u043d\u044b\u0445", "sort": 5, "course": 2, "theme": 34, "description": "15.5
", "video": "", "video_id": "6824510", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 134, "fields": {"free": false, "token": "2#108", "title": "Java-\u0430\u043f\u043f\u043b\u0435\u0442\u044b", "sort": 1, "course": 2, "theme": 35, "description": "16.1
", "video": "", "video_id": "6824536", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 135, "fields": {"free": false, "token": "4#34", "title": "\u0424\u0443\u043d\u043a\u0446\u0438\u0438 \u0418\u041d\u0414\u0415\u041a\u0421, \u041f\u041e\u0418\u0421\u041a\u041f\u041e\u0417. \u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u044b\u0439 \u0430\u043d\u0430\u043b\u043e\u0433 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0412\u041f\u0420", "sort": 1, "course": 4, "theme": 40, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 136, "fields": {"free": false, "token": "2#109", "title": "\u0421\u0435\u0440\u0432\u043b\u0435\u0442\u044b", "sort": 2, "course": 2, "theme": 35, "description": "16.2
", "video": "", "video_id": "6824539", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 137, "fields": {"free": false, "token": "2#110", "title": "\u0424\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0438", "sort": 3, "course": 2, "theme": 35, "description": "16.3
", "video": "", "video_id": "6824562", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 138, "fields": {"free": false, "token": "4#35", "title": "\u041e\u0448\u0438\u0431\u043a\u0438 \u0432 \u0444\u043e\u0440\u043c\u0443\u043b\u0430\u0445, \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430. \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0415\u0421\u041b\u0418\u041e\u0428\u0418\u0411\u041a\u0410", "sort": 2, "course": 4, "theme": 40, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 139, "fields": {"free": false, "token": "2#111", "title": "\u041d\u0435\u0440\u0435\u043b\u044f\u0446\u0438\u043e\u043d\u043d\u044b\u0435 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445", "sort": 4, "course": 2, "theme": 35, "description": "16.4
", "video": "", "video_id": "6824583", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 140, "fields": {"free": false, "token": "4#36", "title": "\u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u201c\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445\u201d", "sort": 3, "course": 4, "theme": 40, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 141, "fields": {"free": false, "token": "4#37", "title": "\u0418\u043c\u0435\u043d\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u044b", "sort": 4, "course": 4, "theme": 40, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 143, "fields": {"free": false, "token": "4#39", "title": "\u0424\u0438\u043b\u044c\u0442\u0440 \u0438 \u0441\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043a\u0430 \u043f\u043e \u0446\u0432\u0435\u0442\u0443", "sort": 1, "course": 4, "theme": 41, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 144, "fields": {"free": false, "token": "4#40", "title": "\u0423\u0441\u043b\u043e\u0432\u043d\u043e\u0435 \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435", "sort": 2, "course": 4, "theme": 41, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 145, "fields": {"free": false, "token": "4#41", "title": "\u0413\u0440\u0430\u0444\u0438\u043a\u0438 \u0438 \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b \u0432 Excel", "sort": 3, "course": 4, "theme": 41, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 146, "fields": {"free": false, "token": "4#42", "title": "\u041c\u0430\u043a\u0435\u0442\u044b \u0438 \u0441\u0442\u0438\u043b\u0438 \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c", "sort": 4, "course": 4, "theme": 41, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 148, "fields": {"free": false, "token": "4#44", "title": "\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435, \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435, \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u044f", "sort": 1, "course": 4, "theme": 42, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 149, "fields": {"free": false, "token": "4#45", "title": "\u0424\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u044f, \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435, \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u043f\u043e\u043b\u044f", "sort": 2, "course": 4, "theme": 42, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 150, "fields": {"free": false, "token": "4#46", "title": "\u041f\u0440\u043e\u0446\u0435\u043d\u0442\u044b, \u0432\u044b\u0447\u0438\u0441\u043b\u044f\u0435\u043c\u044b\u0435 \u043f\u043e\u043b\u044f", "sort": 3, "course": 4, "theme": 42, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 151, "fields": {"free": false, "token": "4#47", "title": "\u0421\u0440\u0435\u0437\u044b, \u0441\u0432\u043e\u0434\u043d\u044b\u0435 \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b", "sort": 4, "course": 4, "theme": 42, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 152, "fields": {"free": true, "token": "3#0", "title": "\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435", "sort": 1, "course": 3, "theme": 43, "description": "\u0418\u043d\u0442\u0440\u043e
", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": [3736, 4438]}}, {"model": "courses.lesson", "pk": 153, "fields": {"free": true, "token": "3#1", "title": "\u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e XCode", "sort": 2, "course": 3, "theme": 43, "description": "\u041f\u043e\u0447\u0435\u043c\u0443 Swift/ Objective C
", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": [3899]}}, {"model": "courses.lesson", "pk": 154, "fields": {"free": true, "token": "3#2", "title": "\u0411\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 UIKit", "sort": 3, "course": 3, "theme": 43, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": [21191, 25090]}}, {"model": "courses.lesson", "pk": 155, "fields": {"free": true, "token": "3#3", "title": "\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 Playground", "sort": 4, "course": 3, "theme": 43, "description": "\u2013 Playground
\u2013 \u041e\u0431\u0437\u043e\u0440 \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u043a\u043e\u0432
", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": [3239, 3275, 4695, 6626, 16000, 16001]}}, {"model": "courses.lesson", "pk": 156, "fields": {"free": false, "token": "3#5", "title": "\u0422\u0438\u043f\u044b \u0434\u0430\u043d\u043d\u044b\u0445", "sort": 1, "course": 3, "theme": 44, "description": "\u2013 \u041e\u0431\u0437\u043e\u0440 \u044f\u0437\u044b\u043a\u0430 \u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f, \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u044f
\u2013 \u041f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0438 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u044b var/let
\u2013 \u041e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u044b
\u2013 Playground
\u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u043c\u043e\u0434\u0443\u043b\u044f:
\u0412\u044b \u0438\u0437\u0443\u0447\u0438\u0442\u0435 \u0431\u0430\u0437\u043e\u0432\u044b\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u043a\u043e\u0434\u0430 (\u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0438 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u044b), \u0430 \u0442\u0430\u043a\u0436\u0435 \u0443\u0437\u043d\u0430\u0435\u0442\u0435 \u043e \u0431\u0430\u0437\u043e\u0432\u044b\u0445 \u0442\u0438\u043f\u0430\u0445 \u0434\u0430\u043d\u043d\u044b\u0445.
", "video": "", "video_id": "6648931", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 157, "fields": {"free": false, "token": "3#6", "title": "\u0412\u0435\u0442\u0432\u043b\u0435\u043d\u0438\u0435 \u043a\u043e\u0434\u0430", "sort": 2, "course": 3, "theme": 44, "description": "\u2013 \u0421\u0442\u0440\u043e\u043a\u0438
\u2013 \u0427\u0438\u0441\u043b\u0430
\u2013 \u0418\u043d\u0444\u0435\u0440\u0438\u043d\u0433
\u041f\u043e \u0438\u0442\u043e\u0433\u0430\u043c \u044d\u0442\u043e\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f \u043c\u044b \u0441\u0432\u044f\u0436\u0435\u043c \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0439 \u043d\u0430\u043c\u0438 \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441 \u043a\u043e\u0434\u043e\u043c \u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u043c \u043f\u0435\u0440\u0432\u0443\u044e \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u043e \u0440\u0430\u0431\u043e\u0447\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f.
", "video": "", "video_id": "7564048", "video_date": null, "materials": [], "comments": [17362, 22805, 22817, 22818, 23402, 23867, 24303, 24518, 26535]}}, {"model": "courses.lesson", "pk": 158, "fields": {"free": false, "token": "3#8", "title": "\u0422\u0438\u043f\u044b \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0439: Array, Dictionary, Set", "sort": 1, "course": 3, "theme": 45, "description": "\u0412 3 \u043c\u043e\u0434\u0443\u043b\u0435 \u0432\u044b \u0438\u0437\u0443\u0447\u0438\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e:
\u0422\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u043c \u044f\u0437\u044b\u043a\u043e\u043c
\u041a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0438:
\u2013 Array
\u2013 Dictionary
\u2013 Set
\u0412 3 \u043c\u043e\u0434\u0443\u043b\u0435 \u0432\u044b \u0438\u0437\u0443\u0447\u0438\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e:
\u0422\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u043c \u044f\u0437\u044b\u043a\u043e\u043c
\u0412\u0435\u0442\u0432\u043b\u0435\u043d\u0438\u0435
\u2013 if else
\u2013 for in
\u2013 while do
\u2013 switch
\u0412 3 \u043c\u043e\u0434\u0443\u043b\u0435 \u0432\u044b \u0438\u0437\u0443\u0447\u0438\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e:
\u0422\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u043c \u044f\u0437\u044b\u043a\u043e\u043c
View Controllers
\u2013 \u041c\u044c\u044e\u0442\u0430\u0431\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c
\u2013 \u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0430
\u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u043c\u043e\u0434\u0443\u043b\u044f:
\u041c\u044b \u043f\u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u043c\u0441\u044f \u0441 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u043c\u0438 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430\u043c\u0438, \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0443\u044e\u0449\u0438\u043c\u0438 \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044e \u0432\u043d\u0443\u0442\u0440\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f. \u0421 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0430\u043c\u0438\u0438 \u043c\u0435\u0445\u0430\u043d\u0438\u043a\u0430\u043c\u0438 \u0438\u0445 \u0440\u0430\u0431\u043e\u0442\u044b.
", "video": "", "video_id": "6648883", "video_date": null, "materials": [], "comments": [9593, 10218]}}, {"model": "courses.lesson", "pk": 162, "fields": {"free": false, "token": "3#13", "title": "\u041e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f \u043a\u043e\u0434\u0430 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u0439", "sort": 2, "course": 3, "theme": 46, "description": "\u041e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f \u043a\u043e\u0434\u0430
\u2013 \u0414\u0440\u0443\u0433\u0438\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0438\u0437 Cocoa Touch
(MessageUI, AddressBookUI, MapKit)
\u0412 \u043a\u043e\u043d\u0446\u0435 \u0443\u0440\u043e\u043a\u0430 \u043c\u044b \u043d\u0430\u0443\u0447\u0438\u043c\u0441\u044f \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e TabBarController \u0438 NavigationController.
\u0424\u0443\u043d\u043a\u0446\u0438\u0438
\u2013 \u041e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u0435 \u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0435\u043d\u0438\u0435 \u0442\u0438\u043f\u0430
\u2013 \u041e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0432 Swift
(\u0418\u043c\u0435\u043d\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b/keywords)
\u041f\u043e \u0438\u0442\u043e\u0433\u0430\u043c \u043c\u043e\u0434\u0443\u043b\u044f \u0438\u043c\u0435\u043d\u043d\u043e \u044d\u0442\u0438 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u044b, \u043c\u044b \u0438 \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u0438 \u0437\u0430\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u0443\u0435\u043c \u0432 \u043d\u0430\u0448\u0435\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438.
\u0412 5 \u043c\u043e\u0434\u0443\u043b\u0435 \u0432\u044b \u0438\u0437\u0443\u0447\u0438\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e:
\u0422\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u043c \u044f\u0437\u044b\u043a\u043e\u043c
\u041a\u043b\u0430\u0441\u0441\u044b
\u041e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f \u043a\u043e\u0434\u0430
\u2013 \u0420\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f
\u2013 \u041c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u044b \u0434\u043e\u0441\u0442\u0443\u043f\u0430
\u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f
\u2013 \u041a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440\u044b \u0438 \u0434\u0435\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440\u044b
\u2013 LifeCycle ViewControllers
\u2013 \u0422\u0438\u043f\u044b ViewControllers
\u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u043c\u043e\u0434\u0443\u043b\u044f:
\u041d\u0430\u0443\u0447\u0438\u0432\u0448\u0438\u0441\u044c \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u0444\u0443\u043d\u043a\u0446\u0438\u044f\u043c\u0438 \u043c\u044b \u0433\u043e\u0442\u043e\u0432\u044b \u043a \u0442\u043e\u043c\u0443, \u0447\u0442\u043e\u0431\u044b \u0432\u044b\u0439\u0442\u0438 \u043d\u0430 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u0432\u044b\u0448\u0435 \u0438 \u0443\u0437\u043d\u0430\u0442\u044c, \u0447\u0442\u043e \u0442\u0430\u043a\u043e\u0435 \u043a\u043b\u0430\u0441\u0441\u044b. \u041c\u044b \u0443\u0437\u043d\u0430\u0435\u043c, \u043a\u0430\u043a \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u0430 \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044f \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u0432 Swift, \u043a\u0430\u043a \u043e\u043d\u0438 \u0441\u043e\u0437\u0434\u0430\u044e\u0442\u0441\u044f \u0438 \u0443\u043d\u0438\u0447\u0442\u043e\u0436\u0430\u044e\u0442\u0441\u044f \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f.
\u0422\u0430\u043a\u0436\u0435, \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u044f \u0443\u0433\u043b\u0443\u0431\u043b\u044f\u0435\u0442\u0441\u044f \u0432 UIKit \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a (\u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u0432\u043d\u0435\u0448\u043d\u0435\u0433\u043e \u0432\u0438\u0434\u0430
\u0438 \u043b\u043e\u0433\u0438\u043a\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f), \u043c\u044b \u0438\u0437\u0443\u0447\u0438\u043c ViewController, \u0438 \u0438\u0445 \u0436\u0438\u0437\u043d\u0435\u043d\u043d\u044b\u0439 \u0446\u0438\u043a\u043b.
\u041f\u043e \u0438\u0442\u043e\u0433\u0430\u043c \u043c\u043e\u0434\u0443\u043b\u044f \u043c\u044b \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u0432 \u043d\u0430\u0448\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043e\u043a\u043d\u043e \u00ab\u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0444\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0438\u00bb, \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0435 \u0437\u043d\u0430\u043d\u0438\u044f \u043a\u043b\u0430\u0441\u0441\u043e\u0432.
", "video": "", "video_id": "6648906", "video_date": null, "materials": [], "comments": [10667]}}, {"model": "courses.lesson", "pk": 167, "fields": {"free": false, "token": "3#20", "title": "Optionals \u0438 \u043f\u043e\u0447\u0435\u043c\u0443 \u043e\u043d\u0438 \u0434\u0435\u043b\u0430\u044e\u0442 \u043a\u043e\u0434 \u043d\u0430\u0434\u0435\u0436\u043d\u0435\u0439", "sort": 1, "course": 3, "theme": 48, "description": "\u0412 6 \u043c\u043e\u0434\u0443\u043b\u0435 \u0432\u044b \u0438\u0437\u0443\u0447\u0438\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e:
\u0422\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u043c \u044f\u0437\u044b\u043a\u043e\u043c
Optionals
\u2013 \u0421\u0443\u0442\u044c Null-\u0430
\u2013 \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 Optional/Nullable
\u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u043c\u043e\u0434\u0443\u043b\u044f:
\u0412 \u044d\u0442\u043e \u043c\u043e\u0434\u0443\u043b\u0435 \u043c\u044b \u0443\u0437\u043d\u0430\u0435\u043c \u043e \u00ab\u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0435 Null-a\u00bb. \u042d\u0442\u0430 \u0447\u0430\u0441\u0442\u0430\u044f \u043e\u0448\u0438\u0431\u043a\u0430 \u043f\u0440\u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u0438 iOS \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u0447\u0443\u0442\u044c \u043b\u0438 \u043d\u0435 \u043a \u043f\u043e\u043b\u043e\u0432\u0438\u043d\u0435 \u0432\u0441\u0435\u0445 \u0437\u0430\u0432\u0438\u0441\u0430\u043d\u0438\u0439 \u0438 \u00ab\u0432\u044b\u043b\u0435\u0442\u043e\u0432\u00bb \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f. \u0418\u0437\u0443\u0447\u0438\u043c \u0438 \u044d\u043b\u0435\u0433\u0430\u043d\u0442\u043d\u043e\u0435 \u0435\u0451
\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0432 Swift \u2014 \u00abOptional\u00bb.
\u0412 6 \u043c\u043e\u0434\u0443\u043b\u0435 \u0432\u044b \u0438\u0437\u0443\u0447\u0438\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e:
\u0422\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u043c \u044f\u0437\u044b\u043a\u043e\u043c
\u041a\u043e\u0440\u0442\u0435\u0436\u0438
\u2013 \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 Tuples
\u0412 6 \u043c\u043e\u0434\u0443\u043b\u0435 \u0432\u044b \u0438\u0437\u0443\u0447\u0438\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e:
\u0422\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u043c \u044f\u0437\u044b\u043a\u043e\u043c
TableView
\u043c\u044b \u0443\u0437\u043d\u0430\u0435\u043c, \u043a\u0430\u043a \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u0430\u043c\u044b\u0439 \u043c\u043e\u0449\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043d\u044b\u0439 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 TableView, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0447\u0442\u043e\u0431\u044b \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0441\u043f\u0438\u0441\u043a\u043e\u043c.
\u0412 7 \u043c\u043e\u0434\u0443\u043b\u0435 \u0432\u044b \u0438\u0437\u0443\u0447\u0438\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e:
\u0422\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u043c \u044f\u0437\u044b\u043a\u043e\u043c
- \u041f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f Enums
- \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0438\u043c\u0435\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u0438
- Structs
", "video": "", "video_id": "6814497", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 171, "fields": {"free": false, "token": "3#25", "title": "\u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0438 \u0438\u0445 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 \u043a\u043b\u0430\u0441\u0441\u043e\u0432", "sort": 2, "course": 3, "theme": 49, "description": "\u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u043c\u043e\u0434\u0443\u043b\u044f:
\u041c\u044b \u0443\u0437\u043d\u0430\u0435\u043c, \u043a\u0430\u043a\u0438\u0435 \u0435\u0449\u0435 \u0435\u0441\u0442\u044c \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0435 \u0442\u0438\u043f\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e\u043c\u0438\u043c\u043e \u043a\u043b\u0430\u0441\u0441\u043e\u0432. \u041c\u044b \u043f\u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u043c\u0441\u044f \u0441\u043e \u00ab\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430\u043c\u0438\u00bb (Structs) \u0438 \u00ab\u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u044f\u0435\u043c\u044b\u043c\u0438 \u0442\u0438\u043f\u0430\u043c\u0438\u00bb.
", "video": "", "video_id": "6814566", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 172, "fields": {"free": false, "token": "3#26", "title": "\u041f\u0435\u0440\u0435\u0447\u0435\u0441\u043b\u0435\u043d\u0438\u044f \u0438 \u0434\u043b\u044f \u0447\u0435\u0433\u043e \u043e\u043d\u0438 \u043d\u0443\u0436\u043d\u044b", "sort": 3, "course": 3, "theme": 49, "description": "\u0412 \u043a\u043e\u043d\u0446\u0435 \u043c\u043e\u0434\u0443\u043b\u044f \u043c\u044b \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u043b\u043e\u0433\u0438\u043a\u0443, \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u0432\u044b\u0431\u0435\u0440\u0435\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u0442\u0438\u043f\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u044d\u043a\u0440\u0430\u043d\u0430 \u00ab\u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0435\u0432 \u043a \u0444\u043e\u0442\u043e\u00bb, \u0434\u043e\u0431\u0430\u0432\u0438\u0432 \u044d\u0442\u043e\u0442 \u044d\u043a\u0440\u0430\u043d \u043a \u043d\u0430\u0448\u0435\u043c\u0443 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044e.
", "video": "", "video_id": "6814596", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 173, "fields": {"free": false, "token": "3#28", "title": "\u041e\u0441\u043d\u043e\u0432\u044b \u041e\u0431\u044a\u0435\u043a\u0442\u043d\u043e-\u041e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f", "sort": 1, "course": 3, "theme": 50, "description": "\u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u043c\u043e\u0434\u0443\u043b\u044f:
\u0418\u043c\u0435\u044f \u0437\u0430 \u0441\u043f\u0438\u043d\u043e\u0439 \u0443\u0436\u0435 \u043f\u0440\u0438\u043b\u0438\u0447\u043d\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 iOS \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438, \u043c\u044b \u043d\u0435\u0431\u0443\u0434\u0435\u043c \u043e\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0438 \u0438\u0437\u0443\u0447\u0438\u043c \u0444\u0443\u043d\u0434\u0430\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u0438\u043d\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b\u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e\u0433\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c \u2014 \u00ab\u041e\u0431\u044a\u0435\u043a\u0442\u043e-\u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043f\u043e\u0434\u0445\u043e\u0434 \u043a \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e\u00bb \u0438 \u00ab\u0428\u0430\u0431\u043b\u043e\u043d \u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f\u00bb.
", "video": "", "video_id": "6814646", "video_date": null, "materials": [], "comments": [9103]}}, {"model": "courses.lesson", "pk": 174, "fields": {"free": false, "token": "3#29", "title": "\u0412\u0432\u0435\u0434\u043d\u0438\u0435 \u0432 \u0448\u0430\u0431\u043b\u043e\u043d\u044b \u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f (\u043f\u0430\u0442\u0442\u0435\u0440\u043d\u044b)", "sort": 2, "course": 3, "theme": 50, "description": "\u0412 8 \u043c\u043e\u0434\u0443\u043b\u0435 \u0432\u044b \u0438\u0437\u0443\u0447\u0438\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e:
\u0422\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u043c \u044f\u0437\u044b\u043a\u043e\u043c
\u041f\u0430\u0442\u0442\u0435\u0440\u043d\u044b
- \u041e\u0431\u0437\u043e\u0440 GOF \u043f\u0430\u0442\u0442\u0435\u0440\u043d\u043e\u0432
- Observer
- \u0414\u0435\u043b\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435
- State
- Singleton
", "video": "", "video_id": "6814686", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 175, "fields": {"free": false, "token": "3#30", "title": "\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043a\u0430\u043c\u0435\u0440\u044b", "sort": 3, "course": 3, "theme": 50, "description": "\u0412 8 \u043c\u043e\u0434\u0443\u043b\u0435 \u0432\u044b \u0438\u0437\u0443\u0447\u0438\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e:
\u0422\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u043c \u044f\u0437\u044b\u043a\u043e\u043c
MVC
- \u041e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438
- \u041a\u0430\u043a \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u0442\u044c View \u0438 Controllers
\u0412 \u043a\u043e\u043d\u0446\u0435 \u043c\u043e\u0434\u0443\u043b\u044f \u043c\u044b \u0438\u0437\u0443\u0447\u0438\u043c \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043a\u0430\u043c\u0435\u0440\u043e\u0439 \u0432 iOS \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0445. \u0418, \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0432\u0448\u0438\u0441\u044c\u0441 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u044f\u043c\u0438 \u044d\u0442\u043e\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f, \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u0432 \u043d\u0430\u0448\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u044d\u043a\u0440\u0430\u043d \u00ab\u0421\u043d\u044f\u0442\u044c \u0444\u043e\u0442\u043e\u00bb.
\u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u043c\u043e\u0434\u0443\u043b\u044f:
- \u041c\u044b \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u0438\u0437\u0443\u0447\u0438\u043c \u0442\u0430\u043a \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u043c\u044b\u0439 \u00ab\u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0439\u00bb \u043f\u043e\u0434\u0445\u043e\u0434
\u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438.
\u041e\u043d \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u043c\u044b \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439,
\u0430 \u043d\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0439.
\u0418\u0437 \u0432\u0438\u0434\u0435\u043e \u0432\u044b \u0443\u0437\u043d\u0430\u0435\u0442\u0435:
- \u041e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0430 \u0444\u0440\u0438\u043b\u0430\u043d\u0441\u0435
- \u041a\u0430\u043a\u0438\u0435 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0442\u0440\u0443\u0434\u043d\u043e\u0441\u0442\u0438 \u0438 \u043a\u0430\u043a \u0438\u0445 \u0440\u0435\u0448\u0430\u0442\u044c
- \u041a\u0430\u043a \u0441\u0435\u0431\u044f \u043f\u0440\u043e\u0434\u0432\u0438\u0433\u0430\u0442\u044c \u0438 \u0431\u0440\u0430\u0442\u044c \u0432\u044b\u0433\u043e\u0434\u043d\u044b\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u044b
- \u041a\u0430\u043a \u0437\u0430\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u043d\u0430 \u0444\u0440\u0438\u043b\u0430\u043d\u0441\u0435 \u043e\u0442 100 000 \u0440\u0443\u0431\u043b\u0435\u0439 \u0438\u0437 \u043b\u044e\u0431\u043e\u0439 \u0442\u043e\u0447\u043a\u0438 \u043c\u0438\u0440\u0430
", "video": "", "video_id": "6648547", "video_date": null, "materials": [], "comments": [14333, 23313, 23328]}}, {"model": "courses.lesson", "pk": 185, "fields": {"free": false, "token": "3#33", "title": "\u0417\u0430\u043c\u044b\u043a\u0430\u043d\u0438\u044f \u0438 \u0438\u0445 \u043e\u0442\u043b\u0438\u0447\u0438\u044f \u043e\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u0439", "sort": 2, "course": 3, "theme": 51, "description": "\u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u043c\u043e\u0434\u0443\u043b\u044f:
- \u0422\u0430\u043a\u0436\u0435 \u043d\u0430\u0443\u0447\u0438\u043c\u0441\u044f \u0434\u043e\u043f\u043e\u043b\u043d\u044f\u0442\u044c
\u0443\u0436\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u0442\u0438\u043f\u044b \u0434\u0430\u043d\u043d\u044b\u0445
\u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u043c \u043d\u0430\u043c \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043e\u043c
(\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e)
\u0412 \u043a\u043e\u043d\u0446\u0435 \u043c\u043e\u0434\u0443\u043b\u044f \u043c\u044b \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0438\u043c \u043a \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044e \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b \u043f\u0440\u043e\u0444\u0438\u043b\u044f \u043d\u0430\u0448\u0435\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f.
", "video": "", "video_id": "6815121", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 187, "fields": {"free": false, "token": "3#37", "title": "CollectionView \u0438 \u0434\u043e\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043f\u0440\u043e\u0444\u0438\u043b\u044f", "sort": 2, "course": 3, "theme": 52, "description": "", "video": "", "video_id": "6815260", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 188, "fields": {"free": false, "token": "3#38", "title": "\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u0434\u0435\u043b\u0430\u043d\u043d\u043e\u0439 \u0444\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0438 \u0432 \u043f\u0440\u043e\u0444\u0438\u043b\u044c", "sort": 3, "course": 3, "theme": 52, "description": "", "video": "", "video_id": "6815312", "video_date": null, "materials": [], "comments": [15088, 24528]}}, {"model": "courses.lesson", "pk": 189, "fields": {"free": false, "token": "3#42", "title": "\u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043a \u0441\u0435\u0440\u0432\u0435\u0440\u0443 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e NSURLSession", "sort": 2, "course": 3, "theme": 53, "description": "", "video": "", "video_id": "6815434", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 191, "fields": {"free": false, "token": "3#46", "title": "UIBarItem \u0438 UIAlertController", "sort": 2, "course": 3, "theme": 54, "description": "", "video": "", "video_id": "6887185", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 192, "fields": {"free": false, "token": "3#47", "title": "\u0421\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0438 \u0447\u0442\u0435\u043d\u0438\u0435 \u0432 CoreData", "sort": 3, "course": 3, "theme": 54, "description": "", "video": "", "video_id": "6887354", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 193, "fields": {"free": false, "token": "3#50", "title": "\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 UISlider \u0434\u043b\u044f \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u043c\u0438", "sort": 2, "course": 3, "theme": 55, "description": "", "video": "", "video_id": "7197740", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 195, "fields": {"free": false, "token": "3#51", "title": "\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 CIFilter", "sort": 3, "course": 3, "theme": 55, "description": "", "video": "", "video_id": "7197758", "video_date": null, "materials": [], "comments": [19852, 24529]}}, {"model": "courses.lesson", "pk": 196, "fields": {"free": false, "token": "3#54", "title": "\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f Size Classes \u043a \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044e", "sort": 2, "course": 3, "theme": 56, "description": "", "video": "", "video_id": "7564551", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 197, "fields": {"free": false, "token": "3#55", "title": "\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 Storyboard", "sort": 3, "course": 3, "theme": 56, "description": "", "video": "", "video_id": "7564583", "video_date": null, "materials": [], "comments": [27568]}}, {"model": "courses.lesson", "pk": 198, "fields": {"free": false, "token": "3#58", "title": "\u041f\u0440\u0438\u043c\u0435\u0440 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f tvOS \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f", "sort": 2, "course": 3, "theme": 57, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 199, "fields": {"free": false, "token": "3#59", "title": "\u041f\u0440\u0438\u043c\u0435\u0440 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043a\u043e\u043c\u043f\u0430\u043d\u044c\u043e\u043d\u0430 \u0434\u043b\u0430\u044f watchOS", "sort": 3, "course": 3, "theme": 57, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 200, "fields": {"free": false, "token": "3#61", "title": "\u0421\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b \u0438 Provision \u043f\u0440\u043e\u0444\u0438\u043b\u0438", "sort": 2, "course": 3, "theme": 58, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 201, "fields": {"free": false, "token": "3#62", "title": "\u0411\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 \u0441\u0431\u043e\u0440\u044b \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u0438", "sort": 3, "course": 3, "theme": 58, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 202, "fields": {"free": false, "token": "3#63", "title": "\u041a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u0441\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0440\u0435\u0437\u044e\u043c\u0435 \u0434\u0430\u0436\u0435 \u0431\u0435\u0437 \u043e\u043f\u044b\u0442\u0430 \u0440\u0430\u0431\u043e\u0442\u044b", "sort": 4, "course": 3, "theme": 58, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 203, "fields": {"free": false, "token": "4#32", "title": "\u0424\u0443\u043d\u043a\u0446\u0438\u0438 \u0421\u0427\u0401\u0422\u0415\u0421\u041b\u0418\u041c\u041d, \u0421\u0423\u041c\u041c\u0415\u0421\u041b\u0418\u041c\u041d. \u041e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u044b \u0434\u043b\u044f \u0432\u044b\u0431\u043e\u0440\u043a\u0438", "sort": 5, "course": 4, "theme": 39, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [1792], "comments": []}}, {"model": "courses.lesson", "pk": 204, "fields": {"free": true, "token": "5#1", "title": "\u041a\u0430\u043a\u0438\u0435 \u0431\u044b\u0432\u0430\u044e\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b", "sort": 2, "course": 5, "theme": 60, "description": "\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u0417\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0432 Twitter \u0438\u0437\u0443\u0447\u0438\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438, \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435.
", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": [22570, 26399, 28937]}}, {"model": "courses.lesson", "pk": 205, "fields": {"free": true, "token": "5#2", "title": "\u041a\u0430\u043a\u0438\u0435 \u0431\u044b\u0432\u0430\u044e\u0442 \u044f\u0437\u044b\u043a\u0438", "sort": 3, "course": 5, "theme": 60, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 206, "fields": {"free": true, "token": "5#3", "title": "MS Visual Studio: \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438", "sort": 4, "course": 5, "theme": 60, "description": "\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c MS Visual Studio Community 2015
\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u043a\u043e\u0434 \u043f\u0440\u0438\u043c\u0435\u0440\u0430 - \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0442\u044c \u043b\u0438\u043c\u0438\u0442 \u0438 \u0441\u043d\u0438\u0437\u0438\u0442\u044c \u043a\u043e\u043c\u0438\u0441\u0441\u0438\u044e.
\u041f\u0440\u0438\u043c\u0435\u0440 \u0432 \u0430\u0440\u0445\u0438\u0432\u0435 PaymentConsole.zip
\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u041f\u043e\u043c\u0435\u043d\u044f\u0442\u044c \u0444\u043e\u043d \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f
\u041f\u0440\u0438\u043c\u0435\u0440 \u0432 \u0430\u0440\u0445\u0438\u0432\u0435
", "video": "", "video_id": null, "video_date": null, "materials": [3511], "comments": [17192, 24532, 28019]}}, {"model": "courses.lesson", "pk": 210, "fields": {"free": false, "token": "5#8", "title": "\u0418\u0437 \u0447\u0435\u0433\u043e \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u043a\u043e\u0434 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b", "sort": 1, "course": 5, "theme": 61, "description": "", "video": "", "video_id": "6824785", "video_date": null, "materials": [], "comments": [6061, 6062, 6638, 6640, 6641]}}, {"model": "courses.lesson", "pk": 211, "fields": {"free": false, "token": "5#9", "title": "\u041f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435, \u0431\u0430\u0437\u043e\u0432\u044b\u0435 \u0442\u0438\u043f\u044b", "sort": 2, "course": 5, "theme": 61, "description": "\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u041f\u0440\u043e\u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c, \u043a\u0430\u043a\u0438\u0435 \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u044b \u0435\u0441\u0442\u044c \u0443 \u043f\u043e\u0441\u0442\u0430 \u0432 \u0422\u0432\u0438\u0442\u0442\u0435\u0440\u0435, \u0438 \u0441\u043e\u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043a\u0430\u0436\u0434\u043e\u043c\u0443 \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u0443 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438\u0439 \u0442\u0438\u043f \u0434\u0430\u043d\u043d\u044b\u0445.
\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u0412\u0432\u0435\u0441\u0442\u0438 \u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443 \u043f\u043b\u0430\u0442\u0435\u0436\u043d\u043e\u0433\u043e \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b\u0430 \u0440\u0430\u0437\u043d\u044b\u0435 \u0431\u043e\u043d\u0443\u0441\u044b \u0434\u043b\u044f \u0440\u0430\u0437\u043d\u044b\u0445 \u043f\u0440\u043e\u043c\u043e\u043a\u043e\u0434\u043e\u0432 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u0430 switch
\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0417\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0432 \u0442\u0432\u0438\u0442\u0442\u0435\u0440\u0435, \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043a\u043b\u044e\u0447\u0438, \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u0442\u044c\u0441\u044f \u043d\u0430 \u0434\u0440\u0443\u0433\u0438\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439, \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043f\u0440\u0438\u043c\u0435\u0440 \u0438 \u0443\u0432\u0438\u0434\u0435\u0442\u044c \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u0442\u0432\u0438\u0442\u044b \u0438 \u0442\u0440\u0435\u043d\u0434\u044b, \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u043f\u0435\u0440\u0432\u044b\u0435 15 \u0442\u0432\u0438\u0442\u043e\u0432 \u0432 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u0435
- \u041f\u0440\u0438\u043c\u0435\u0440 \u0432 \u0430\u0440\u0445\u0438\u0432\u0435 TwitterConsole
", "video": "", "video_id": "6824890", "video_date": null, "materials": [3927], "comments": [6766, 6791, 6992, 7006, 7067, 22808]}}, {"model": "courses.lesson", "pk": 215, "fields": {"free": false, "token": "5#13", "title": "\u041c\u0435\u0442\u043e\u0434\u044b", "sort": 6, "course": 5, "theme": 61, "description": "\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u0412 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0435 \u043f\u043b\u0430\u0442\u0435\u0436\u043d\u043e\u0433\u043e \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b\u0430 \u0432\u044b\u043d\u0435\u0441\u0442\u0438 \u0430\u043d\u0430\u043b\u0438\u0437 \u043f\u0440\u043e\u043c\u043e\u043a\u043e\u0434\u0430 \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u043c\u0435\u0442\u043e\u0434, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u043d\u0430 \u0432\u0445\u043e\u0434 \u043f\u0440\u043e\u043c\u043e\u043a\u043e\u0434 \u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0440\u0430\u0437\u043c\u0435\u0440 \u0431\u043e\u043d\u0443\u0441\u0430.
\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u041a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u044b\u0432\u043e\u0434\u0438\u0442 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0438 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0442\u0438\u043f\u0430 double.
", "video": "", "video_id": "6824942", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 218, "fields": {"free": false, "token": "5#18", "title": "\u041e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0441 \u0447\u0438\u0441\u043b\u0430\u043c\u0438", "sort": 4, "course": 5, "theme": 62, "description": "\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u043f\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u043f\u0440\u043e \u043a\u043b\u0430\u0441\u0441 Math (https://msdn.microsoft.com/ru-ru/library/system.math(v=vs.110).aspx)
", "video": "", "video_id": "6824960", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 219, "fields": {"free": false, "token": "5#19", "title": "\u041f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0442\u0438\u043f\u043e\u0432", "sort": 5, "course": 5, "theme": 62, "description": "\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f \u0441 \u0442\u0430\u0431\u043b\u0438\u0446\u0435\u0439 \u043d\u0435\u044f\u0432\u043d\u044b\u0445 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0439 C# (https://msdn.microsoft.com/ru-ru/library/y5b434w4.aspx)
- \u043e\u0442\u0432\u0435\u0442\u0438\u0442\u044c \u043d\u0430 \u0432\u043e\u043f\u0440\u043e\u0441: \u041d\u0443\u0436\u043d\u043e \u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u044f\u0432\u043d\u043e\u0435 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0442\u0438\u043f\u043e\u0432 \u0434\u043b\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u0437 long \u0432 decimal?
\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u0422\u0432\u0438\u0442\u0442\u0435\u0440\u0430 \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0442\u0432\u0438\u0442\u0430 \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043c\u0438\u043d\u0443\u0442/\u0447\u0430\u0441\u043e\u0432/\u0434\u043d\u0435\u0439 \u0441 \u043c\u043e\u043c\u0435\u043d\u0442\u0430 \u0435\u0433\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f
- \u043f\u0440\u0438\u043c\u0435\u0440 \u0432 \u0430\u0440\u0445\u0438\u0432\u0435 DatesAndTime
\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u041f\u043e\u0434\u0441\u0447\u0438\u0442\u0430\u0442\u044c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0441\u043b\u043e\u0432 \u0432 \u0442\u0435\u043a\u0441\u0442\u0435. \u041d\u0430\u0439\u0442\u0438 \u0441\u0430\u043c\u043e\u0435 \u0434\u043b\u0438\u043d\u043d\u043e\u0435 \u0441\u043b\u043e\u0432\u043e \u0438 \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u0435\u0433\u043e \u0434\u043b\u0438\u043d\u0443. \u0415\u0441\u043b\u0438 \u0434\u043b\u0438\u043d\u0430 \u0442\u0435\u043a\u0441\u0442\u0430 \u043f\u0440\u0435\u0432\u044b\u0448\u0430\u0435\u0442 140 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432 - \u043e\u0442\u0441\u0435\u043a\u0430\u0442\u044c \u043b\u0438\u0448\u043d\u044e\u044e \u0447\u0430\u0441\u0442\u044c \u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0442\u044c \u043f\u0435\u0440\u0432\u044b\u0435 140 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432
", "video": "", "video_id": "6825158", "video_date": null, "materials": [], "comments": [7446, 7452, 7457, 7459, 7460, 7463]}}, {"model": "courses.lesson", "pk": 223, "fields": {"free": false, "token": "5#25", "title": "\u0422\u0438\u043f StringBuilder", "sort": 4, "course": 5, "theme": 63, "description": "\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u0412 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u0442\u0432\u0438\u0442\u0442\u0435\u0440\u0430, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043a\u043b\u0430\u0441\u0441 StringBuilder, \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u0432\u0441\u0435 \u0442\u0440\u0435\u043d\u0434\u044b, \u043d\u0430\u0447\u0438\u043d\u0430\u044e\u0449\u0438\u0435\u0441\u044f \u043d\u0430 #, \u0432 \u043e\u0434\u043d\u0443 \u0441\u0442\u0440\u043e\u043a\u0443 \u0441 \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u0435\u043c
", "video": "", "video_id": "6825176", "video_date": null, "materials": [], "comments": [7464, 7972, 8056]}}, {"model": "courses.lesson", "pk": 224, "fields": {"free": false, "token": "5#26", "title": "\u0420\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u044b\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f", "sort": 5, "course": 5, "theme": 63, "description": "\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u0412 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u0434\u043b\u044f \u0422\u0432\u0438\u0442\u0442\u0435\u0440\u0430 \u043d\u0430\u0439\u0442\u0438 \u0432\u0441\u0435 \u0445\u044d\u0448\u0442\u044d\u0433\u0438 \u0432 \u0442\u0432\u0438\u0442\u0430\u0445 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u043e\u0433\u043e \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0438 \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u0438\u0445 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e \u043f\u043e\u0434 \u043a\u0430\u0436\u0434\u044b\u043c \u0442\u0432\u0438\u0442\u043e\u043c.
\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0438 \u0437\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u043c\u0430\u0441\u0441\u0438\u0432 \u0434\u043d\u0435\u0439 \u043d\u0435\u0434\u0435\u043b\u0438 \u0432 \u043e\u0431\u044b\u0447\u043d\u043e\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u0435, \u0430 \u0437\u0430\u0442\u0435\u043c \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u0435\u0433\u043e \u0432 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u0435
- \u0417\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u043c\u0430\u0441\u0441\u0438\u0432 \u0448\u0430\u0445\u043c\u0430\u0442\u043d\u043e\u0439 \u0434\u043e\u0441\u043a\u0438 \u0446\u0432\u0435\u0442\u043e\u043c, \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u043c \u043a\u0430\u0436\u0434\u043e\u0439 \u043a\u043b\u0435\u0442\u043a\u0435 (0 - \u0431\u0435\u043b\u044b\u0439, 1 - \u0447\u0435\u0440\u043d\u044b\u0439) \u0438 \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u044c \u0432 \u0432\u0438\u0434\u0435 \u0434\u043e\u0441\u043a\u0438 (\u043a\u0430\u0436\u0434\u044b\u0439 \u043d\u043e\u0432\u044b\u0439 \u0440\u044f\u0434 \u0441 \u043d\u043e\u0432\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438)
\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0412\u044b\u0431\u0440\u0430\u0442\u044c \u043b\u044e\u0431\u043e\u0439 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u043c\u0430\u0433\u0430\u0437\u0438\u043d \u0438 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0437\u0430\u043a\u0430\u0437\u0430.
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043c\u0430\u0441\u0441\u0438\u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0439 \u0437\u0430\u043a\u0430\u0437\u043e\u0432, \u0437\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0435\u0433\u043e \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c\u0438, \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u0432\u0432\u0435\u0441\u0442\u0438 \u0438\u043d\u0434\u0435\u043a\u0441 \u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u0435 \u0438 \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0437\u0430\u043a\u0430\u0437\u0430 \u043f\u043e \u0434\u0430\u043d\u043d\u043e\u043c\u0443 \u0438\u043d\u0434\u0435\u043a\u0441\u0443.
", "video": "", "video_id": "6825272", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 228, "fields": {"free": false, "token": "5#32", "title": "\u0422\u0438\u043f Nullable", "sort": 5, "course": 5, "theme": 64, "description": "", "video": "", "video_id": "6825285", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 229, "fields": {"free": false, "token": "5#35", "title": "\u041a\u043b\u0430\u0441\u0441\u044b \u0438 \u043e\u0431\u044a\u0435\u043a\u0442\u044b", "sort": 2, "course": 5, "theme": 65, "description": "\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u041f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u0442\u044c, \u043a\u0430\u043a\u0438\u0435 \u043a\u043b\u0430\u0441\u0441\u044b \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0432 \u0442\u0432\u0438\u0442\u0442\u0435\u0440\u0435, \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0438\u0445 \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0431\u0430\u0437\u043e\u0432\u044b\u043c\u0438 \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u0430\u043c\u0438 \u0438 \u043f\u0443\u0441\u0442\u044b\u043c\u0438 \u043c\u0435\u0442\u043e\u0434\u0430\u043c\u0438, \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0449\u0438\u043c\u0438 \u0438\u0445 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435
\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u0420\u0430\u0441\u0448\u0438\u0440\u0438\u0442\u044c \u043c\u043e\u0434\u0435\u043b\u044c \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u0442\u0432\u0438\u0442\u0442\u0435\u0440\u0430 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430\u043c\u0438, \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440\u0430\u043c\u0438 \u0438 \u043c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u0430\u043c\u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u0430.
\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u0443 \u0432 \u043a\u043b\u0430\u0441\u0441\u0435 \u0442\u0432\u0438\u0442\u0430, \u0437\u0430\u0434\u0430\u044e\u0449\u0443\u044e \u0435\u0433\u043e \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u0443\u044e \u0434\u043b\u0438\u043d\u0443.
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043a\u043b\u0430\u0441\u0441 StringHelper, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043c\u0435\u0442\u043e\u0434 Cut, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043e\u0431\u0440\u0435\u0437\u0430\u0435\u0442 \u0441\u0442\u0440\u043e\u043a\u0443 \u0434\u043e \u043d\u0443\u0436\u043d\u043e\u0439 \u0434\u043b\u0438\u043d\u044b, \u0435\u0441\u043b\u0438 \u0441\u0442\u0440\u043e\u043a\u0430 \u0435\u0435 \u043f\u0440\u0435\u0432\u044b\u0448\u0430\u0435\u0442. \u0412\u044b\u0437\u044b\u0432\u0430\u0442\u044c \u044d\u0442\u043e\u0442 \u043c\u0435\u0442\u043e\u0434 \u0432 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440\u0435 \u043a\u043b\u0430\u0441\u0441\u0430 \u0442\u0432\u0438\u0442\u0430, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u0443 \u0438\u0437 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0437\u0430\u0434\u0430\u043d\u0438\u044f.
\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u0412\u0432\u0435\u0441\u0442\u0438 \u0432 \u043c\u043e\u0434\u0435\u043b\u044c \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u0442\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442\u0430 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u043c\u0435\u0442\u043e\u0434\u044b \u0432 \u0431\u0430\u0437\u043e\u0432\u043e\u043c \u043a\u043b\u0430\u0441\u0441\u0435 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, Move) \u0438 \u043f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u0438\u0445 \u0432 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u044b\u0445 \u043a\u043b\u0430\u0441\u0441\u0430\u0445
\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u041f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u0432 \u043a\u043b\u0430\u0441\u0441\u0435 \u0442\u0432\u0438\u0442\u0430 \u043c\u0435\u0442\u043e\u0434 ToString, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u0435\u0440\u043d\u0435\u0442 \u0442\u0435\u043a\u0441\u0442 \u0442\u0432\u0438\u0442\u0430, \u0438 \u0432 \u043a\u043b\u0430\u0441\u0441\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043c\u0435\u0442\u043e\u0434 Equals, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u0441\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u043f\u043e \u0443\u0447\u0435\u0442\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0438.
\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0432 \u043e\u0431\u044a\u0435\u043a\u0442\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0442\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442\u0430 \u043e\u0434\u0438\u043d \u0430\u0431\u0441\u0442\u0440\u0430\u043a\u0442\u043d\u044b\u0439 \u043a\u043b\u0430\u0441\u0441 - \u0442\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442\u043d\u043e\u0435 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e - \u0438 \u043d\u0430\u0431\u043e\u0440 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u0432 (\u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0435\u0435 \u043d\u0430 \u0442\u043e\u043f\u043b\u0438\u0432\u0435, \u043f\u0435\u0440\u0435\u0432\u043e\u0437\u044f\u0449\u0435\u0435 \u043f\u0430\u0441\u0441\u0430\u0436\u0438\u0440\u043e\u0432 \u0438 \u0442.\u043f.), \u0443\u043d\u0430\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u044c \u043e\u0442 \u043d\u0438\u0445 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u043a\u043b\u0430\u0441\u0441\u044b.
", "video": "", "video_id": "6825864", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 237, "fields": {"free": false, "token": "5#47", "title": "\u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435. \u041f\u043e\u043d\u044f\u0442\u0438\u0435 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f", "sort": 2, "course": 5, "theme": 67, "description": "", "video": "", "video_id": "6825890", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 238, "fields": {"free": false, "token": "5#48", "title": "\u041e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439", "sort": 3, "course": 5, "theme": 67, "description": "\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439 \u043f\u0440\u0438 \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u0438 \u043a \u043c\u0435\u0442\u043e\u0434\u0430\u043c Twitter API, \u0432\u044b\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0442\u044c \u0432 catch \u0441\u0432\u043e\u0435 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435.
", "video": "", "video_id": "6825915", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 239, "fields": {"free": false, "token": "5#49", "title": "\u041e\u0442\u043b\u0430\u0434\u043a\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439", "sort": 4, "course": 5, "theme": 67, "description": "\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u041f\u043e\u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u043c\u0438 \u043e\u0442\u043b\u0430\u0434\u043a\u0438 \u043d\u0430 \u0441\u0432\u043e\u0438\u0445 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u0445 \u0438\u0437 \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u0445 \u0437\u0430\u0434\u0430\u043d\u0438\u0439.
", "video": "", "video_id": "6825930", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 240, "fields": {"free": false, "token": "5#50", "title": "\u041c\u043e\u0434\u0443\u043b\u044c\u043d\u043e\u0435 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435", "sort": 5, "course": 5, "theme": 67, "description": "\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u041f\u043e\u043a\u0440\u044b\u0442\u044c \u0442\u0435\u0441\u0442\u0430\u043c\u0438 \u043c\u0435\u0442\u043e\u0434 Cut \u0432 \u043a\u043b\u0430\u0441\u0441\u0435 StringHelper \u0438\u0437 \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0433\u043e \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u043a \u0443\u0440\u043e\u043a\u0443 4, \u043c\u043e\u0434\u0443\u043b\u044c 6.
", "video": "", "video_id": "6825967", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 241, "fields": {"free": false, "token": "5#53", "title": "\u041e\u0431\u0437\u043e\u0440 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0439. \u0421\u043f\u0438\u0441\u043e\u043a", "sort": 2, "course": 5, "theme": 68, "description": "", "video": "", "video_id": "6825997", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 242, "fields": {"free": false, "token": "5#54", "title": "\u0414\u043b\u044f \u0447\u0435\u0433\u043e \u043d\u0443\u0436\u043d\u044b Generics. \u041e\u0431\u043e\u0431\u0449\u0435\u043d\u043d\u044b\u0439 \u0441\u043f\u0438\u0441\u043e\u043a", "sort": 3, "course": 5, "theme": 68, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0412 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u0434\u043b\u044f \u0442\u0432\u0438\u0442\u0442\u0435\u0440\u0430 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0441\u043f\u0438\u0441\u043e\u043a \u0442\u0440\u0435\u043d\u0434\u043e\u0432 (\u043f\u0440\u043e\u0441\u0442\u043e \u0441\u0442\u0440\u043e\u043a\u0438), \u0437\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u043f\u043e\u0441\u043b\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445, \u043e\u0442\u0441\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438 \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d \u0442\u0440\u0435\u043d\u0434\u044b \u0438 \u0438\u0445 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e.
- \u0412 \u043c\u043e\u0434\u0435\u043b\u0438 \u0442\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442\u043d\u044b\u0445 \u0441\u0440\u0435\u0434\u0441\u0442\u0432 \u0441\u043e\u0437\u0434\u0430\u0442\u044c generic-\u043a\u043b\u0430\u0441\u0441 Station<T>, \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0449\u0438\u0439 \u043f\u043e\u043d\u044f\u0442\u0438\u0435 \u0441\u0442\u0430\u043d\u0446\u0438\u0438, \u0441\u043e \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430\u043c\u0438: \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435, \u0441\u043f\u0438\u0441\u043e\u043a \u0442\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442\u043d\u044b\u0445 \u0441\u0440\u0435\u0434\u0441\u0442\u0432 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0433\u043e \u0442\u0438\u043f\u0430 \u0438 \u043c\u0435\u0442\u043e\u0434\u0430\u043c\u0438: \u043f\u0440\u0438\u043d\u044f\u0442\u044c T, \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c T. \u0417\u0430\u0442\u0435\u043c \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u044b \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0445 \u0441\u0442\u0430\u043d\u0446\u0438\u0439, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440: Station<Train>, Station<Bus> \u0438 \u043f\u043e\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u043d\u0438\u043c\u0438.
\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0412 \u0414\u0417 \u043f\u0440\u043e \u0437\u0430\u043a\u0430\u0437\u044b \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u043c\u0430\u0433\u0430\u0437\u0438\u043d\u0430 \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u043c\u0430\u0441\u0441\u0438\u0432 \u043d\u0430 \u043e\u0447\u0435\u0440\u0435\u0434\u044c. \u0412\u0432\u043e\u0434\u0438\u043c \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u201c\u0440\u0430\u0437\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u0437\u0430\u043a\u0430\u0437\u201d + \u2116 \u0437\u0430\u043a\u0430\u0437\u0430 \u0438 \u201c\u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0437\u0430\u043a\u0430\u0437\u201d. \u0415\u0441\u043b\u0438 \u0432 \u043e\u0447\u0435\u0440\u0435\u0434\u0438 \u0441\u043a\u043e\u043f\u0438\u043b\u043e\u0441\u044c 10 \u0437\u0430\u043a\u0430\u0437\u043e\u0432, \u0437\u0430\u043f\u0440\u0435\u0449\u0430\u0435\u043c \u0440\u0430\u0437\u043c\u0435\u0449\u0430\u0442\u044c \u043d\u043e\u0432\u044b\u0435 \u0437\u0430\u043a\u0430\u0437\u044b \u0438 \u0432\u044b\u0432\u043e\u0434\u0438\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435. \u041f\u0440\u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0438 \u0432\u044b\u0432\u043e\u0434\u0438\u043c \u043d\u043e\u043c\u0435\u0440 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u043e\u0433\u043e \u0437\u0430\u043a\u0430\u0437\u0430.
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043c\u043e\u0434\u0435\u043b\u044c \u0441\u0442\u043e\u044f\u043d\u043a\u0438 \u0441\u0430\u043c\u043e\u043b\u0435\u0442\u043e\u0432 \u0432 \u0432\u0438\u0434\u0435 \u0441\u0442\u044d\u043a\u0430. \u0420\u0430\u0437\u043c\u0435\u0440 \u0441\u0442\u043e\u044f\u043d\u043a\u0438 - 5 \u043c\u0435\u0441\u0442. \u0412\u0432\u043e\u0434\u0438\u043c \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u201c\u0432\u044a\u0435\u0445\u0430\u0442\u044c \u043d\u0430 \u0441\u0442\u043e\u044f\u043d\u043a\u0443\u201d + \u2116 \u0431\u043e\u0440\u0442\u0430 \u0438 \u201c\u043f\u043e\u043a\u0438\u043d\u0443\u0442\u044c \u0441\u0442\u043e\u044f\u043d\u043a\u0443\u201d; \u0435\u0441\u043b\u0438 \u0441\u0442\u043e\u044f\u043d\u043a\u0430 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0430 - \u043e\u0447\u0435\u0440\u0435\u0434\u043d\u043e\u043c\u0443 \u0431\u043e\u0440\u0442\u0443 \u0432\u044a\u0435\u0437\u0436\u0430\u0442\u044c \u043d\u0435\u043b\u044c\u0437\u044f (\u0432\u044b\u0432\u043e\u0434\u0438\u043c \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435). \u041f\u0440\u0438 \u0432\u044b\u0435\u0437\u0434\u0435 \u0441\u043e \u0441\u0442\u043e\u044f\u043d\u043a\u0438 \u043f\u0435\u0447\u0430\u0442\u0430\u0435\u043c \u043d\u043e\u043c\u0435\u0440 \u0432\u044b\u0435\u0437\u0436\u0430\u044e\u0449\u0435\u0433\u043e \u0431\u043e\u0440\u0442\u0430.
", "video": "", "video_id": "6826217", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 244, "fields": {"free": false, "token": "5#56", "title": "\u0421\u043b\u043e\u0432\u0430\u0440\u044c", "sort": 5, "course": 5, "theme": 68, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0421\u043c\u043e\u0434\u0435\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044e \u0432 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0441\u0435\u0440\u0432\u0438\u0441\u0435 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Dictionary. \u041a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442 \u0432\u0432\u0435\u0441\u0442\u0438 \u0443\u0447\u0435\u0442\u043d\u0443\u044e \u0437\u0430\u043f\u0438\u0441\u044c (\u043b\u043e\u0433\u0438\u043d). \u0415\u0441\u043b\u0438 \u043b\u043e\u0433\u0438\u043d \u043d\u0430\u0439\u0434\u0435\u043d - \u0432\u044b\u0432\u043e\u0434\u0438\u0442 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d \u201c\u0417\u0434\u0440\u0430\u0432\u0441\u0442\u0432\u0443\u0439\u0442\u0435, <\u0438\u043c\u044f>\u201d, \u0435\u0441\u043b\u0438 \u043d\u0435\u0442 - \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442 \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f (\u043b\u043e\u0433\u0438\u043d \u0438 \u0438\u043c\u044f). \u041e\u0442\u0434\u0435\u043b\u044c\u043d\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u0432\u044b\u0432\u043e\u0434\u0438\u0442 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d \u0438\u043c\u0435\u043d\u0430 \u0432\u0441\u0435\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439.
\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0412\u0437\u044f\u0442\u044c \u043f\u0440\u0438\u043c\u0435\u0440 \u0441 \u043e\u0447\u0435\u0440\u0435\u0434\u044c\u044e \u0437\u0430\u043a\u0430\u0437\u043e\u0432 \u0438\u0437 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f \u0438 \u0441\u0432\u0435\u0440\u0441\u0442\u0430\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0434\u0438\u0437\u0430\u0439\u043d\u0435\u0440\u0430 WPF \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0434\u043b\u044f \u043d\u0435\u0433\u043e: \u043a\u043d\u043e\u043f\u043a\u0438, \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0435 \u043f\u043e\u043b\u044f. \u0423\u043a\u0430\u0437\u0430\u0442\u044c \u0438\u043c\u0435\u043d\u0430 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432, \u043e\u0442\u0441\u0442\u0443\u043f\u044b, \u0440\u0430\u0437\u043c\u0435\u0440\u044b, \u0446\u0432\u0435\u0442\u0430.
\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0412\u0437\u044f\u0442\u044c \u043f\u0440\u0438\u043c\u0435\u0440 \u0441\u043e \u0441\u0442\u043e\u044f\u043d\u043a\u043e\u0439 \u0441\u0430\u043c\u043e\u043b\u0435\u0442\u043e\u0432 \u0438\u0437 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f \u0438 \u0441\u0432\u0435\u0440\u0441\u0442\u0430\u0442\u044c \u0435\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e XAML. \u0423\u043a\u0430\u0437\u0430\u0442\u044c \u0438\u043c\u0435\u043d\u0430 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432, \u043e\u0442\u0441\u0442\u0443\u043f\u044b, \u0440\u0430\u0437\u043c\u0435\u0440\u044b, \u0432\u044b\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u043d\u0438\u0435.
", "video": "", "video_id": "6826269", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 247, "fields": {"free": false, "token": "5#61", "title": "\u0421\u043e\u0431\u044b\u0442\u0438\u044f \u0438 \u0434\u0435\u043b\u0435\u0433\u0430\u0442\u044b. \u041e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0441\u043e\u0431\u044b\u0442\u0438\u0439 \u0432 WPF", "sort": 4, "course": 5, "theme": 69, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043a\u043d\u043e\u043f\u043e\u043a \u0432 \u0440\u0435\u0448\u0435\u043d\u0438\u044f\u0445 \u0438\u0437 \u0443\u0440\u043e\u043a\u043e\u0432 1 \u0438 2.
", "video": "", "video_id": "6826351", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 248, "fields": {"free": false, "token": "5#62", "title": "\u041e\u043a\u043d\u0430 \u0438 \u0434\u0438\u0430\u043b\u043e\u0433\u0438", "sort": 5, "course": 5, "theme": 69, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e MessageBox \u0432\u044b\u0432\u043e\u0434 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439 \u043e \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430\u0445 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439 \u0432 \u0440\u0435\u0448\u0435\u043d\u0438\u044f\u0445 \u0438\u0437 \u0443\u0440\u043e\u043a\u0430 3.
", "video": "", "video_id": "6826601", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 249, "fields": {"free": false, "token": "5#65", "title": "\u041a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0430 \u0441\u043b\u043e\u0436\u043d\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430", "sort": 2, "course": 5, "theme": 70, "description": "", "video": "", "video_id": "6826669", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 250, "fields": {"free": false, "token": "5#66", "title": "\u0424\u043e\u0440\u043c\u044b \u0432\u0432\u043e\u0434\u0430 \u0434\u0430\u043d\u043d\u044b\u0445. \u0418\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f", "sort": 3, "course": 5, "theme": 70, "description": "", "video": "", "video_id": "6826727", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 251, "fields": {"free": false, "token": "5#67", "title": "\u042d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u043f\u0438\u0441\u043a\u0430\u043c\u0438", "sort": 4, "course": 5, "theme": 70, "description": "", "video": "", "video_id": "6826770", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 252, "fields": {"free": false, "token": "5#68", "title": "\u041f\u0440\u0438\u0432\u044f\u0437\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445", "sort": 5, "course": 5, "theme": 70, "description": "", "video": "", "video_id": "6826791", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 253, "fields": {"free": false, "token": "5#71", "title": "\u0424\u043e\u0440\u043c\u0430\u0442\u044b \u0444\u0430\u0439\u043b\u043e\u0432. \u0427\u0442\u0435\u043d\u0438\u0435 \u0444\u0430\u0439\u043b\u043e\u0432", "sort": 1, "course": 5, "theme": 71, "description": "", "video": "", "video_id": "7067732", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 254, "fields": {"free": false, "token": "5#72", "title": "\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0444\u0430\u0439\u043b\u043e\u0432. \u0417\u0430\u043f\u0438\u0441\u044c \u0432 \u0444\u0430\u0439\u043b\u044b", "sort": 2, "course": 5, "theme": 71, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0432 \u0434\u0438\u043f\u043b\u043e\u043c\u043d\u043e\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0439 \u0430\u0432\u0442\u043e\u0440\u043e\u0432 \u0442\u0432\u0438\u0442\u043e\u0432 \u0432 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u0443\u044e \u043f\u0430\u043f\u043a\u0443 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043b\u0430\u0441\u0441\u0430 WebClient.
", "video": "", "video_id": "7067798", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 255, "fields": {"free": false, "token": "5#73", "title": "\u0421\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432. \u0424\u043e\u0440\u043c\u0430\u0442 XML", "sort": 3, "course": 5, "theme": 71, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0412 \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0441 \u0422\u0432\u0438\u0442\u0442\u0435\u0440\u043e\u043c \u043f\u0435\u0440\u0435\u043b\u043e\u0436\u0438\u0442\u044c \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0435 \u0442\u0432\u0438\u0442\u044b \u0432 \u043e\u0431\u044a\u0435\u043a\u0442\u044b \u0441\u0432\u043e\u0435\u0433\u043e \u043a\u043b\u0430\u0441\u0441\u0430 \u0438 \u0441\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0438\u0445 \u0432 XML-\u0444\u0430\u0439\u043b
", "video": "", "video_id": "7068043", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 256, "fields": {"free": false, "token": "5#74", "title": "\u041f\u0440\u043e\u0447\u0438\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 System.IO", "sort": 4, "course": 5, "theme": 71, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0430 WPF \u043f\u0440\u043e\u0441\u0442\u0435\u0439\u0448\u0438\u0439 \u043f\u0440\u043e\u0432\u043e\u0434\u043d\u0438\u043a \u0441\u043e \u0441\u043f\u0438\u0441\u043a\u043e\u043c \u043f\u043e\u0434\u043a\u0430\u0442\u0430\u043b\u043e\u0433\u043e\u0432 \u0438 \u0444\u0430\u0439\u043b\u043e\u0432 \u0432 \u0442\u0435\u043a\u0443\u0449\u0435\u043c \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0435, \u0441 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c\u044e \u043f\u0435\u0440\u0435\u0439\u0442\u0438 \u043d\u0430\u0432\u0435\u0440\u0445 \u0438\u043b\u0438 \u0437\u0430\u0439\u0442\u0438 \u0432\u043d\u0443\u0442\u0440\u044c \u043f\u043e\u0434\u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0430, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0441 \u0444\u0443\u043d\u043a\u0446\u0438\u0435\u0439 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430 \u043d\u0430 \u0447\u0442\u0435\u043d\u0438\u0435.
", "video": "", "video_id": "7068136", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 257, "fields": {"free": false, "token": "5#76", "title": "\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0432 LINQ. \u041b\u044f\u043c\u0431\u0434\u0430-\u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f", "sort": 1, "course": 5, "theme": 72, "description": "", "video": "", "video_id": "7067090", "video_date": null, "materials": [], "comments": [19390]}}, {"model": "courses.lesson", "pk": 258, "fields": {"free": false, "token": "5#77", "title": "\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 LINQ \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044f\u043c\u0438", "sort": 2, "course": 5, "theme": 72, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u041f\u0440\u0438\u043c\u0435\u043d\u0438\u0442\u044c LINQ \u0434\u043b\u044f \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u0438 \u0442\u0440\u0435\u043d\u0434\u043e\u0432, \u043d\u0430\u0447\u0438\u043d\u0430\u044e\u0449\u0438\u0445\u0441\u044f \u043d\u0430 #, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u043d\u0438\u044f \u0442\u0440\u0435\u043d\u0434\u043e\u0432 \u0438 \u0442\u0432\u0438\u0442\u043e\u0432 \u0432 \u043e\u0431\u044a\u0435\u043a\u0442\u044b \u0441\u0432\u043e\u0438\u0445 \u043a\u043b\u0430\u0441\u0441\u043e\u0432. \u0412\u044b\u0431\u0440\u0430\u0442\u044c \u043f\u0435\u0440\u0432\u044b\u0435 10 \u0442\u0432\u0438\u0442\u043e\u0432 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043c\u0435\u0442\u043e\u0434\u0430 Take.
", "video": "", "video_id": "7067252", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 259, "fields": {"free": false, "token": "5#78", "title": "\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0432 \u043c\u043d\u043e\u0433\u043e\u043f\u043e\u0442\u043e\u0447\u043d\u043e\u0441\u0442\u044c", "sort": 3, "course": 5, "theme": 72, "description": "", "video": "", "video_id": "7067298", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 260, "fields": {"free": false, "token": "5#79", "title": "\u0421\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u044f \u043f\u043e\u0442\u043e\u043a\u043e\u0432. \u0422\u0430\u0439\u043c\u0435\u0440\u044b", "sort": 4, "course": 5, "theme": 72, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0441\u0435\u043a\u0443\u043d\u0434\u043e\u043c\u0435\u0440 \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438. \u0417\u0430\u043f\u0443\u0441\u043a/\u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0441\u0435\u043a\u0443\u043d\u0434\u043e\u043c\u0435\u0440\u0430 \u043f\u043e \u043d\u0430\u0436\u0430\u0442\u0438\u044e \u043d\u0430 \u041f\u0440\u043e\u0431\u0435\u043b.
", "video": "", "video_id": "7067364", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 261, "fields": {"free": false, "token": "5#80", "title": "\u041a\u043b\u0430\u0441\u0441 Task. \u0410\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u043e\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435", "sort": 5, "course": 5, "theme": 72, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u043e\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0442\u0440\u0435\u043d\u0434\u043e\u0432, \u0442\u0432\u0438\u0442\u043e\u0432 \u0438 \u0444\u043e\u0442\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0432 \u0434\u0438\u043f\u043b\u043e\u043c\u043d\u043e\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u0435.
", "video": "", "video_id": "7067421", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 262, "fields": {"free": false, "token": "5#82", "title": "\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0432 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445. MS SQL Server", "sort": 1, "course": 5, "theme": 73, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c MS SQL Server Express + Management Studio.
\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u0421\u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0431\u0430\u0437\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u043c\u043e\u0434\u0435\u043b\u0438 \u0422\u0432\u0438\u0442\u0442\u0435\u0440\u0430 \u0441 \u0442\u0430\u0431\u043b\u0438\u0446\u0430\u043c\u0438: \u0442\u0432\u0438\u0442\u044b, \u0445\u044d\u0448\u0442\u044d\u0433\u0438, \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438, \u043f\u043e\u0434\u043f\u0438\u0441\u043a\u0438.
\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c SQL-\u0441\u043a\u0440\u0438\u043f\u0442\u044b \u0434\u043b\u044f: \u0432\u044b\u0431\u043e\u0440\u043a\u0438 \u043f\u0435\u0440\u0432\u044b\u0445 10 \u0442\u0432\u0438\u0442\u043e\u0432 \u0441 \u0430\u0432\u0442\u043e\u0440\u0430\u043c\u0438, \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0442\u0432\u0438\u0442\u0430, \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0442\u0432\u0438\u0442\u0430, \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u044f \u0442\u0432\u0438\u0442\u0430.
\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u0434\u043b\u044f \u0422\u0432\u0438\u0442\u0442\u0435\u0440\u0430 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0431\u0430\u0437\u0443, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u044b ADO.NET; \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u043f\u0435\u0440\u0432\u044b\u0435 10 \u0442\u0432\u0438\u0442\u043e\u0432 \u0438\u0437 \u0431\u0430\u0437\u044b, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f SqlDataReader.
\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043c\u043e\u0434\u0435\u043b\u044c \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u0422\u0432\u0438\u0442\u0442\u0435\u0440\u0430 (\u0431\u0435\u0437 \u0441\u0432\u044f\u0437\u0435\u0439) \u0438 \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0431\u0430\u0437\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u043e\u0434\u0445\u043e\u0434\u0430 Code first.
\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e LINQ to Entities \u0432\u044b\u0431\u043e\u0440\u043a\u0443 \u043f\u0435\u0440\u0432\u044b\u0445 10 \u0442\u0432\u0438\u0442\u043e\u0432 \u043f\u043e \u0443\u0431\u044b\u0432\u0430\u043d\u0438\u044e \u0432\u0440\u0435\u043c\u0435\u043d\u0438, \u0437\u0430\u0442\u0435\u043c \u043f\u043e Id. - \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0432\u044b\u0431\u043e\u0440\u043a\u0443 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0439 \u0442\u0440\u0435\u043d\u0434\u043e\u0432 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u0440\u043e\u0435\u043a\u0446\u0438\u0438.
\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432 \u043c\u043e\u0434\u0435\u043b\u044c \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u0422\u0432\u0438\u0442\u0442\u0435\u0440\u0430 \u0441\u0432\u044f\u0437\u0438 \u043c\u0435\u0436\u0434\u0443 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u044f\u043c\u0438.
\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435/\u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u043c\u043e\u0434\u0435\u043b\u0438 \u0422\u0432\u0438\u0442\u0442\u0435\u0440\u0430 \u0441 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435\u043c \u0432 \u0431\u0430\u0437\u0443, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f Entity Framework.
", "video": "", "video_id": "7359750", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 270, "fields": {"free": false, "token": "5#92", "title": "\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0432\u0435\u0431-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u043d\u0430 ASP.NET MVC", "sort": 1, "course": 5, "theme": 75, "description": "", "video": "", "video_id": "7359772", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 271, "fields": {"free": false, "token": "5#93", "title": "\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u043d\u0430 C#", "sort": 2, "course": 5, "theme": 75, "description": "", "video": "", "video_id": "7359780", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 272, "fields": {"free": false, "token": "5#94", "title": "\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a", "sort": 3, "course": 5, "theme": 75, "description": "", "video": "", "video_id": "7359825", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 273, "fields": {"free": false, "token": "5#96", "title": "\u0414\u0438\u043f\u043b\u043e\u043c\u043d\u0430\u044f \u0440\u0430\u0431\u043e\u0442\u0430", "sort": 5, "course": 5, "theme": 75, "description": "", "video": "", "video_id": "7359853", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 274, "fields": {"free": true, "token": "5#0", "title": "\u0418\u043d\u0442\u0440\u043e", "sort": 1, "course": 5, "theme": 60, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": [7697]}}, {"model": "courses.lesson", "pk": 275, "fields": {"free": false, "token": "5#15", "title": "\u0418\u043d\u0442\u0440\u043e", "sort": 1, "course": 5, "theme": 62, "description": "", "video": "", "video_id": "7798577", "video_date": null, "materials": [], "comments": [25693, 26790]}}, {"model": "courses.lesson", "pk": 276, "fields": {"free": false, "token": "5#22", "title": "\u0418\u041d\u0422\u0420\u041e", "sort": 1, "course": 5, "theme": 63, "description": "", "video": "", "video_id": "7849430", "video_date": null, "materials": [], "comments": [25765, 26791]}}, {"model": "courses.lesson", "pk": 277, "fields": {"free": false, "token": "5#69", "title": "\u0428\u0430\u0431\u043b\u043e\u043d\u044b \u0438 \u0441\u0442\u0438\u043b\u0438", "sort": 6, "course": 5, "theme": 70, "description": "", "video": "", "video_id": "6826808", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 278, "fields": {"free": false, "token": "5#28", "title": "\u0418\u041d\u0422\u0420\u041e", "sort": 1, "course": 5, "theme": 64, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": [8666, 8684, 8842, 8848]}}, {"model": "courses.lesson", "pk": 279, "fields": {"free": false, "token": "5#34", "title": "\u0418\u043d\u0442\u0440\u043e", "sort": 1, "course": 5, "theme": 65, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 280, "fields": {"free": false, "token": "5#40", "title": "\u0418\u043d\u0442\u0440\u043e", "sort": 1, "course": 5, "theme": 66, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": [26194]}}, {"model": "courses.lesson", "pk": 281, "fields": {"free": false, "token": "2#112", "title": "Android-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f", "sort": 5, "course": 2, "theme": 35, "description": "", "video": "", "video_id": "6824610", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 282, "fields": {"free": false, "token": "2#113", "title": "\u0421\u0438\u0441\u0442\u0435\u043c\u044b \u0441\u0431\u043e\u0440\u043a\u0438", "sort": 6, "course": 2, "theme": 35, "description": "", "video": "", "video_id": "6824617", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 283, "fields": {"free": false, "token": "2#115", "title": "\u0414\u0438\u043f\u043b\u043e\u043c\u043d\u0430\u044f \u0440\u0430\u0431\u043e\u0442\u0430", "sort": 8, "course": 2, "theme": 35, "description": "", "video": "", "video_id": "6824645", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 284, "fields": {"free": false, "token": "2#114", "title": "\u0421\u0438\u0441\u0442\u0435\u043c\u044b \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f \u0432\u0435\u0440\u0441\u0438\u0439", "sort": 7, "course": 2, "theme": 35, "description": "", "video": "", "video_id": "6824631", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 285, "fields": {"free": false, "token": "5#46", "title": "\u0418\u043d\u0442\u0440\u043e", "sort": 1, "course": 5, "theme": 67, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 286, "fields": {"free": false, "token": "4#23", "title": "\u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0412\u041f\u0420 \u0441 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u044c\u043d\u044b\u043c \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u043e\u043c", "sort": 2, "course": 4, "theme": 38, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 287, "fields": {"free": false, "token": "5#52", "title": "\u0418\u043d\u0442\u0440\u043e", "sort": 1, "course": 5, "theme": 68, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 288, "fields": {"free": false, "token": "5#58", "title": "\u0418\u043d\u0442\u0440\u043e", "sort": 1, "course": 5, "theme": 69, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 289, "fields": {"free": false, "token": "2#25", "title": "\u0418\u043d\u0442\u0440\u043e", "sort": 1, "course": 2, "theme": 22, "description": "", "video": "", "video_id": "7798559", "video_date": null, "materials": [], "comments": [9062, 9406, 10038, 13381, 26785, 26786, 26787]}}, {"model": "courses.lesson", "pk": 290, "fields": {"free": false, "token": "2#34", "title": "\u0418\u043d\u0442\u0440\u043e", "sort": 1, "course": 2, "theme": 23, "description": "", "video": "", "video_id": "7849425", "video_date": null, "materials": [], "comments": [24129, 24286, 26789]}}, {"model": "courses.lesson", "pk": 291, "fields": {"free": false, "token": "2#41", "title": "\u0418\u043d\u0442\u0440\u043e", "sort": 1, "course": 2, "theme": 24, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": [10898, 26824]}}, {"model": "courses.lesson", "pk": 292, "fields": {"free": false, "token": "2#48", "title": "\u0418\u043d\u0442\u0440\u043e", "sort": 1, "course": 2, "theme": 26, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 293, "fields": {"free": false, "token": "2#54", "title": "\u0418\u043d\u0442\u0440\u043e", "sort": 1, "course": 2, "theme": 27, "description": "", "video": "", "video_id": null, "video_date": null, "materials": [], "comments": [12108]}}, {"model": "courses.lesson", "pk": 294, "fields": {"free": true, "token": "5#64", "title": "\u0418\u043d\u0442\u0440\u043e", "sort": 1, "course": 5, "theme": 70, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 295, "fields": {"free": true, "token": "6#0", "title": "\u0418\u041d\u0422\u0420\u041e", "sort": 1, "course": 6, "theme": 81, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": [23163]}}, {"model": "courses.lesson", "pk": 296, "fields": {"free": true, "token": "6#1", "title": "\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043e\u043d\u043b\u0430\u0439\u043d \u0432\u0435\u0440\u0441\u0438\u0438", "sort": 2, "course": 6, "theme": 81, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": [28058]}}, {"model": "courses.lesson", "pk": 297, "fields": {"free": true, "token": "6#2", "title": "\u042d\u0440\u043c\u0438\u0442\u0430\u0436. \u041f\u0440\u0430\u0432\u043a\u0430 \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u043c\u044b\u0445 \u043e\u0431\u043b\u0430\u0441\u0442\u0435\u0439", "sort": 3, "course": 6, "theme": 81, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 298, "fields": {"free": true, "token": "6#3", "title": "\u041f\u0440\u043e\u0441\u0442\u043e\u0435 \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043c\u0435\u043d\u044e", "sort": 4, "course": 6, "theme": 81, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 299, "fields": {"free": true, "token": "6#4", "title": "\u041f\u0440\u0438\u043c\u0435\u0440 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b \u0437\u0430 5 \u043c\u0438\u043d\u0443\u0442", "sort": 5, "course": 6, "theme": 81, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 300, "fields": {"free": true, "token": "6#5", "title": "\u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u0430\u043d\u0435\u043b\u0438 \u0411\u0438\u0442\u0440\u0438\u043a\u0441", "sort": 6, "course": 6, "theme": 81, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 302, "fields": {"free": true, "token": "7#0", "title": "\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0441\u0440\u0435\u0434\u044b \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f", "sort": 1, "course": 7, "theme": 89, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0421\u043e\u0437\u0434\u0430\u0439\u0442\u0435 \u0441\u0432\u043e\u044e default activity \u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0432 \u043d\u0435\u0439 layout \u043e\u0442 OtherActivity.
", "video": "", "video_id": "6826997", "video_date": null, "materials": [10306], "comments": [26246]}}, {"model": "courses.lesson", "pk": 308, "fields": {"free": false, "token": "7#7", "title": "FrameLayout, ImageView \u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u0435 \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u0432", "sort": 4, "course": 7, "theme": 91, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u041f\u043e\u043c\u0435\u0441\u0442\u0438\u0442\u0435 \u0432 mdpi \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044e \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u0441\u0432\u043e\u0435 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 (\u043d\u0435 \u043e\u0447\u0435\u043d\u044c \u0431\u043e\u043b\u044c\u0448\u043e\u0435, \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e \u043d\u0435 \u0431\u043e\u043b\u0435\u0435 300px \u043f\u043e \u043d\u0430\u0438\u0431\u043e\u043b\u044c\u0448\u0435\u043c\u0443 \u0438\u0437\u043c\u0435\u0440\u0435\u043d\u0438\u044e) \u0438 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0438\u0442\u0435 \u0435\u0433\u043e \u0432 \u043d\u0430\u0448\u0435\u043c FrameLatyout \u0432 ImageView \u0441\u043d\u0438\u0437\u0443 \u043f\u043e \u0446\u0435\u043d\u0442\u0440\u0443.
", "video": "", "video_id": "6827150", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 309, "fields": {"free": false, "token": "6#7", "title": "\u0418\u041d\u0422\u0420\u041e", "sort": 1, "course": 6, "theme": 82, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 310, "fields": {"free": false, "token": "6#8", "title": "\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044f \u043d\u0430 \u0445\u043e\u0441\u0442\u0438\u043d\u0433\u0435, \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 timeweb.ru", "sort": 2, "course": 6, "theme": 82, "description": "", "video": "", "video_id": "6827500", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 311, "fields": {"free": false, "token": "6#9", "title": "\u0417\u043d\u0430\u043a\u043e\u043c\u0441\u0442\u0432\u043e \u0441 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u043c \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u043e\u043c Sublime Text", "sort": 3, "course": 6, "theme": 82, "description": "", "video": "", "video_id": "6827502", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 312, "fields": {"free": false, "token": "6#10", "title": "\u0417\u043d\u0430\u043a\u043e\u043c\u0441\u0442\u0432\u043e \u0441 FTP", "sort": 4, "course": 6, "theme": 82, "description": "", "video": "", "video_id": "6827510", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 313, "fields": {"free": false, "token": "6#11", "title": "\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0411\u0438\u0442\u0440\u0438\u043a\u0441 \u043d\u0430 \u043e\u0431\u043b\u0430\u0447\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433", "sort": 5, "course": 6, "theme": 82, "description": "", "video": "", "video_id": "6827521", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 314, "fields": {"free": false, "token": "6#15", "title": "\u0418\u041d\u0422\u0420\u041e", "sort": 1, "course": 6, "theme": 83, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 315, "fields": {"free": false, "token": "6#16", "title": "\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b, \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043b\u0435\u043d\u0434\u0438\u043d\u0433\u0430", "sort": 2, "course": 6, "theme": 83, "description": "A. \u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043d\u043e\u0432\u043e\u0433\u043e \u0448\u0430\u0431\u043b\u043e\u043d\u0430 \u0434\u043b\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b
B. \u0412\u0435\u0440\u0441\u0442\u043a\u0430 \u0445\u0435\u0434\u0435\u0440\u0430 \u0438 \u0444\u0443\u0442\u0435\u0440\u0430
C. \u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 CSS \u0438 \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432
", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 316, "fields": {"free": false, "token": "6#17", "title": "\u041c\u0435\u043d\u044e", "sort": 3, "course": 6, "theme": 83, "description": "A. \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u043e\u0432\u043e\u0433\u043e \u0442\u0438\u043f\u0430 \u043c\u0435\u043d\u044e
B. \u0417\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043f\u0443\u043d\u043a\u0442\u043e\u0432 \u043c\u0435\u043d\u044e \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0440\u0430\u0437\u0434\u0435\u043b\u043e\u0432
", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 317, "fields": {"free": false, "token": "6#18", "title": "\u0427\u041f\u0423 URL \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b", "sort": 4, "course": 6, "theme": 83, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 318, "fields": {"free": false, "token": "6#19", "title": "\u0417\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0442\u0430\u0439\u0442\u043b\u043e\u0432 \u0438 \u043c\u0435\u0442\u0430 \u0442\u0435\u0433\u043e\u0432 \u0434\u043b\u044f SEO", "sort": 5, "course": 6, "theme": 83, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 319, "fields": {"free": false, "token": "6#21", "title": "\u0418\u041d\u0422\u0420\u041e", "sort": 1, "course": 6, "theme": 84, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 320, "fields": {"free": false, "token": "6#22", "title": "\u041a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 news.list", "sort": 2, "course": 6, "theme": 84, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 321, "fields": {"free": false, "token": "6#23", "title": "\u041a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 news.detail", "sort": 3, "course": 6, "theme": 84, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 322, "fields": {"free": false, "token": "6#24", "title": "\u041a\u043e\u043c\u043f\u043b\u0435\u043a\u0441\u043d\u044b\u0439 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442", "sort": 4, "course": 6, "theme": 84, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 323, "fields": {"free": false, "token": "6#25", "title": "\u0418\u041d\u0422\u0420\u041e", "sort": 1, "course": 6, "theme": 85, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 324, "fields": {"free": false, "token": "6#29", "title": "\u041a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 catalog.section", "sort": 5, "course": 6, "theme": 85, "description": "A.\u0422\u0438\u043f\u044b \u043f\u043b\u0430\u0442\u0435\u043b\u044c\u0449\u0438\u043a\u043e\u0432
B.\u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u0432 \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438
C.\u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u0432 \u043e\u043f\u043b\u0430\u0442\u044b
", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 325, "fields": {"free": false, "token": "6#26", "title": "\u041a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 catalog.section", "sort": 2, "course": 6, "theme": 85, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 326, "fields": {"free": false, "token": "6#27", "title": "\u041a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 sale.order.ajax", "sort": 3, "course": 6, "theme": 85, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 327, "fields": {"free": false, "token": "6#28", "title": "\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043c\u0430\u0433\u0430\u0437\u0438\u043d\u0430 \u0432 \u0430\u0434\u043c\u0438\u043d. \u043f\u0430\u043d\u0435\u043b\u0438", "sort": 4, "course": 6, "theme": 85, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 328, "fields": {"free": false, "token": "6#30", "title": "\u0418\u041d\u0422\u0420\u041e", "sort": 1, "course": 6, "theme": 86, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 329, "fields": {"free": false, "token": "6#31", "title": "\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430 news.list", "sort": 2, "course": 6, "theme": 86, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 330, "fields": {"free": false, "token": "6#32", "title": "\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0441\u0432\u043e\u0435\u0433\u043e \u0448\u0430\u0431\u043b\u043e\u043d\u0430 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430", "sort": 3, "course": 6, "theme": 86, "description": "\u0424\u0430\u0439\u043b result_modifier.php
", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 331, "fields": {"free": false, "token": "6#33", "title": "\u0420\u0430\u0431\u043e\u0442\u0430 \u0441 \u0438\u043d\u0444\u043e\u0431\u043b\u043e\u043a\u0430\u043c\u0438", "sort": 4, "course": 6, "theme": 86, "description": "A. \u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 \u0438\u043d\u0444\u043e\u0431\u043b\u043e\u043a?
B. \u0422\u0438\u043f\u044b \u0434\u0430\u043d\u043d\u044b\u0445
C. \u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0441\u0432\u043e\u0435\u0433\u043e \u0438\u043d\u0444\u043e\u0431\u043b\u043e\u043a\u0430
D. \u0420\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0427\u041f\u0423 \u0432 \u0438\u043d\u0444\u043e\u0431\u043b\u043e\u043a\u0435
", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 332, "fields": {"free": false, "token": "6#34", "title": "\u0418\u041d\u0422\u0420\u041e", "sort": 1, "course": 6, "theme": 87, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 333, "fields": {"free": false, "token": "6#35", "title": "\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0431\u0430\u0437\u043e\u0432\u043e\u0439 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u043d\u043e\u0432\u043e\u0433\u043e \u0441\u0430\u0439\u0442\u0430 \u0441\u043e\u0433\u043b\u0430\u0441\u043d\u043e \u0422\u0417.", "sort": 2, "course": 6, "theme": 87, "description": "A. \u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0432\u0435\u0440\u0441\u0442\u043a\u0438 \u0432 \u0445\u0435\u0434\u0435\u0440 \u0438 \u0444\u0443\u0442\u0435\u0440 \u043d\u043e\u0432\u043e\u0433\u043e \u0448\u0430\u0431\u043b\u043e\u043d\u0430
", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 334, "fields": {"free": false, "token": "6#36", "title": "\u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u0411\u0438\u0442\u0440\u0438\u043a\u0441", "sort": 3, "course": 6, "theme": 87, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 335, "fields": {"free": false, "token": "7#9", "title": "\u0418\u043d\u0442\u0440\u043e", "sort": 1, "course": 7, "theme": 94, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 337, "fields": {"free": false, "token": "6#37", "title": "\u041d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043a\u043e\u0434\u0430 \u0441\u0432\u043e\u0435\u0433\u043e \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430", "sort": 4, "course": 6, "theme": 87, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 338, "fields": {"free": false, "token": "7#10", "title": "\u041e\u0441\u043d\u043e\u0432\u044b gradle \u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u044b \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f jar-\u043d\u0438\u043a\u043e\u0432", "sort": 2, "course": 7, "theme": 94, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c support-v4 \u0447\u0435\u0440\u0435\u0437 gradle http://developer.android.com/intl/ru/tools/support...
", "video": "", "video_id": "6827326", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 339, "fields": {"free": false, "token": "7#11", "title": "CardView", "sort": 3, "course": 7, "theme": 94, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c DetailActivity, \u0441\u0434\u0435\u043b\u0430\u0439\u0442\u0435 \u0435\u0435 default \u0434\u043b\u044f \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f (\u043e\u0442\u0441\u0442\u0443\u043f \u043f\u043e \u043a\u0440\u0430\u044f\u043c, \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 \u0432\u0441\u044e \u0448\u0438\u0440\u0438\u043d\u0443 \u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0443\u044e \u0434\u043b\u044f \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0439 \u043f\u0440\u043e\u043f\u043e\u0440\u0446\u0438\u0439 \u0432\u044b\u0441\u043e\u0442\u0443, \u0432\u0441\u0435 \u0432 LinearLayout \u0441 orientation=vertical \u0432 ScrollView)
", "video": "", "video_id": "6827412", "video_date": null, "materials": [10307, 10308], "comments": []}}, {"model": "courses.lesson", "pk": 340, "fields": {"free": false, "token": "7#13", "title": "\u0418\u043d\u0442\u0440\u043e", "sort": 1, "course": 7, "theme": 100, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 341, "fields": {"free": false, "token": "6#39", "title": "\u041c\u0443\u043b\u044c\u0442\u0438\u044f\u0437\u044b\u0447\u043d\u043e\u0441\u0442\u044c \u0432 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430\u0445", "sort": 6, "course": 6, "theme": 87, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 342, "fields": {"free": false, "token": "6#38", "title": "\u041c\u0443\u043b\u044c\u0442\u0438\u044f\u0437\u044b\u0447\u043d\u043e\u0441\u0442\u044c \u0432 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430\u0445", "sort": 5, "course": 6, "theme": 87, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 343, "fields": {"free": false, "token": "7#14", "title": "RecyclerView - \u0447\u0442\u043e \u0442\u0430\u043a\u043e\u0435, \u043f\u0440\u0438\u043c\u0435\u0440 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f, \u043f\u0440\u0438\u043c\u0435\u0440 \u0430\u0434\u0430\u043f\u0442\u0435\u0440\u0430 \u0441 \u043f\u0440\u0435\u0434\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u043c\u0438 \u0442\u0435\u0441\u0442\u043e\u0432\u044b\u043c\u0438 \u0438\u0442\u0435\u043c\u0430\u043c\u0438 \u0438 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0438\u0437 \u043c\u0430\u0441\u0441\u0438\u0432\u0430", "sort": 2, "course": 7, "theme": 100, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 344, "fields": {"free": false, "token": "7#15", "title": "\u041d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u0438\u0442\u0435\u043c\u043e\u0432 \u0434\u043b\u044f \u0441\u043f\u0438\u0441\u043a\u0430 \u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0431\u043e\u043b\u0435\u0435 \u0441\u043b\u043e\u0436\u043d\u043e\u0433\u043e \u0430\u0434\u0430\u043f\u0442\u0435\u0440\u0430 \u0441 \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u043e\u0439 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u043e\u0439 \u0434\u0430\u043d\u043d\u044b\u0445 (\u0441\u043f\u0438\u0441\u043e\u043a \u0444\u0430\u0439\u043b\u043e\u0432)", "sort": 3, "course": 7, "theme": 100, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 345, "fields": {"free": false, "token": "7#16", "title": "\u0418\u043d\u0442\u0440\u043e", "sort": 1, "course": 7, "theme": 101, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 346, "fields": {"free": false, "token": "7#18", "title": "Activity \u0438 \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e, \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f", "sort": 3, "course": 7, "theme": 101, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 347, "fields": {"free": false, "token": "7#17", "title": "Fragment \u0438 backstack, \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442\u0430", "sort": 2, "course": 7, "theme": 101, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 348, "fields": {"free": false, "token": "7#19", "title": "\u0418\u043d\u0442\u0440\u043e", "sort": 1, "course": 7, "theme": 102, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 349, "fields": {"free": false, "token": "7#20", "title": "Intent", "sort": 2, "course": 7, "theme": 102, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 350, "fields": {"free": false, "token": "7#21", "title": "\u041e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0441\u043e\u0431\u044b\u0442\u0438\u0439: Receiver", "sort": 3, "course": 7, "theme": 102, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 351, "fields": {"free": false, "token": "7#22", "title": "\u0418\u043d\u0442\u0440\u043e", "sort": 1, "course": 7, "theme": 103, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 352, "fields": {"free": true, "token": "6#40", "title": "\u0418\u041d\u0422\u0420\u041e", "sort": 1, "course": 6, "theme": 88, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 353, "fields": {"free": false, "token": "6#41", "title": "\u0420\u0430\u0437\u0431\u0438\u0435\u043d\u0438\u0435 \u0446\u0435\u043b\u043e\u0441\u0442\u043d\u043e\u0439 \u0432\u0435\u0440\u0441\u0442\u043a\u0438 \u043d\u0430 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b", "sort": 2, "course": 6, "theme": 88, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 354, "fields": {"free": false, "token": "6#42", "title": "\u0418\u041d\u0422\u0420\u041e", "sort": 1, "course": 6, "theme": 90, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 355, "fields": {"free": false, "token": "6#43", "title": "\u0412\u0438\u0434\u044b \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0442\u043e\u0432\u0430\u0440\u0430 \u0438 \u043f\u0440\u0438\u043c\u0435\u0440 \u0438\u0445 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f", "sort": 2, "course": 6, "theme": 90, "description": "A. \u0422\u043e\u0432\u0430\u0440
B. \u0422\u043e\u0432\u0430\u0440 -> \u0422\u043e\u0440\u0433\u043e\u0432\u043e\u0435 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435
", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 356, "fields": {"free": false, "token": "6#44", "title": "\u0412\u044b\u0432\u043e\u0434 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0430 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435", "sort": 3, "course": 6, "theme": 90, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 357, "fields": {"free": false, "token": "6#45", "title": "\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0441\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043e\u043a", "sort": 4, "course": 6, "theme": 90, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 358, "fields": {"free": false, "token": "6#46", "title": "\u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0430\u044f \u043f\u0430\u0433\u0438\u043d\u0430\u0446\u0438\u044f \u0411\u0438\u0442\u0440\u0438\u043a\u0441", "sort": 5, "course": 6, "theme": 90, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 359, "fields": {"free": false, "token": "6#47", "title": "\u0424\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u044f \u0442\u043e\u0432\u0430\u0440\u0430", "sort": 6, "course": 6, "theme": 90, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 360, "fields": {"free": false, "token": "7#23", "title": "Android framework location API", "sort": 2, "course": 7, "theme": 103, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 361, "fields": {"free": false, "token": "7#24", "title": "Location Services", "sort": 3, "course": 7, "theme": 103, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 362, "fields": {"free": false, "token": "7#25", "title": "\u041e\u0431\u0437\u043e\u0440 \u0441\u0435\u043d\u0441\u043e\u0440\u043e\u0432. \u041f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0435\u043d\u0441\u043e\u0440\u043e\u0432 \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0430\u043a\u0441\u0435\u043b\u0435\u0440\u043e\u043c\u0435\u0442\u0440\u0430", "sort": 4, "course": 7, "theme": 103, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 363, "fields": {"free": false, "token": "7#26", "title": "\u0418\u043d\u0442\u0440\u043e", "sort": 1, "course": 7, "theme": 104, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 364, "fields": {"free": false, "token": "7#27", "title": "\u0424\u0430\u0439\u043b\u044b", "sort": 2, "course": 7, "theme": 104, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 365, "fields": {"free": false, "token": "7#28", "title": "Persistent settings", "sort": 3, "course": 7, "theme": 104, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 366, "fields": {"free": false, "token": "6#48", "title": "\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0442\u043e\u0432\u0430\u0440\u0430 \u0432 \u043a\u043e\u0440\u0437\u0438\u043d\u0443", "sort": 7, "course": 6, "theme": 90, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 367, "fields": {"free": false, "token": "7#29", "title": "SQLite", "sort": 4, "course": 7, "theme": 104, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 368, "fields": {"free": false, "token": "6#49", "title": "\u0414\u043e\u043c\u0430\u0448\u043d\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435", "sort": 8, "course": 6, "theme": 90, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 369, "fields": {"free": false, "token": "7#30", "title": "ORMLite", "sort": 5, "course": 7, "theme": 104, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 370, "fields": {"free": false, "token": "6#50", "title": "\u0418\u041d\u0422\u0420\u041e", "sort": 1, "course": 6, "theme": 92, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 371, "fields": {"free": false, "token": "7#31", "title": "\u0418\u043d\u0442\u0440\u043e", "sort": 1, "course": 7, "theme": 105, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 372, "fields": {"free": false, "token": "7#32", "title": "\u041e\u0442\u043b\u0430\u0434\u043a\u0430", "sort": 2, "course": 7, "theme": 105, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 373, "fields": {"free": false, "token": "6#51", "title": "\u041f\u0435\u0440\u0432\u043e\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u0430\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430", "sort": 2, "course": 6, "theme": 92, "description": "A. \u0412\u0430\u043b\u044e\u0442\u044b
B. \u0421\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u0432 \u043a\u043e\u0440\u0437\u0438\u043d\u0435 \u0438 \u0438\u0445 \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0438
", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 374, "fields": {"free": false, "token": "7#33", "title": "Unit tests", "sort": 3, "course": 7, "theme": 105, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 375, "fields": {"free": false, "token": "7#34", "title": "Instrumentation unit tests", "sort": 4, "course": 7, "theme": 105, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 376, "fields": {"free": false, "token": "6#52", "title": "\u041a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 basket.basket", "sort": 3, "course": 6, "theme": 92, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 377, "fields": {"free": false, "token": "7#35", "title": "\u0418\u043d\u0442\u0440\u043e", "sort": 1, "course": 7, "theme": 106, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 378, "fields": {"free": false, "token": "7#36", "title": "View animation", "sort": 2, "course": 7, "theme": 106, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 379, "fields": {"free": false, "token": "6#53", "title": "\u0428\u0430\u0431\u043b\u043e\u043d \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430 sale.order.ajax", "sort": 4, "course": 6, "theme": 92, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 380, "fields": {"free": false, "token": "7#37", "title": "Property animation", "sort": 3, "course": 7, "theme": 106, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 381, "fields": {"free": false, "token": "7#38", "title": "Layout animation", "sort": 4, "course": 7, "theme": 106, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 382, "fields": {"free": false, "token": "6#54", "title": "\u0418\u041d\u0422\u0420\u041e", "sort": 1, "course": 6, "theme": 93, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 383, "fields": {"free": false, "token": "7#39", "title": "Activity and fragment transition animation", "sort": 5, "course": 7, "theme": 106, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 384, "fields": {"free": false, "token": "6#55", "title": "\u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 \u201c\u041f\u043e\u0447\u0442\u043e\u0432\u044b\u0435 \u0441\u043e\u0431\u044b\u0442\u0438\u044f\u201d \u0438 \u201c\u041f\u043e\u0447\u0442\u043e\u0432\u044b\u0435 \u0448\u0430\u0431\u043b\u043e\u043d\u044b\u201d", "sort": 2, "course": 6, "theme": 93, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 385, "fields": {"free": false, "token": "6#56", "title": "\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0441\u0432\u043e\u0435\u0433\u043e \u0448\u0430\u0431\u043b\u043e\u043d\u0430, \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u044f \u043e \u043d\u043e\u0432\u043e\u043c \u043a\u043b\u0438\u0435\u043d\u0442\u0435 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u0443", "sort": 3, "course": 6, "theme": 93, "description": "A. \u041f\u0435\u0440\u0435\u0434\u0430\u0447\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437 \u043a\u043e\u0434\u0430 \u0432 \u0448\u0430\u0431\u043b\u043e\u043d
", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 386, "fields": {"free": false, "token": "6#57", "title": "\u0424\u043e\u0440\u043c\u044b", "sort": 4, "course": 6, "theme": 93, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 387, "fields": {"free": false, "token": "6#58", "title": "\u041e\u0442\u043f\u0440\u0430\u0432\u043a\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 \u0444\u043e\u0440\u043c\u044b \u043d\u0430 \u043f\u043e\u0447\u0442\u0443", "sort": 5, "course": 6, "theme": 93, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 388, "fields": {"free": false, "token": "6#59", "title": "\u0414\u043e\u043c\u0430\u0448\u043d\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435", "sort": 6, "course": 6, "theme": 93, "description": "A.\t\u0421\u0434\u0435\u043b\u0430\u0442\u044c \u0444\u043e\u0440\u043c\u0443 \u043e\u043f\u0440\u043e\u0441\u0430 \u043f\u043e\u043a\u0443\u043f\u0430\u0442\u0435\u043b\u0435\u0439
", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 389, "fields": {"free": false, "token": "6#60", "title": "\u0418\u041d\u0422\u0420\u041e", "sort": 1, "course": 6, "theme": 95, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 390, "fields": {"free": false, "token": "6#61", "title": "\u0418\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u0441 \u0441\u043e\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u0441\u0435\u0442\u044f\u043c\u0438", "sort": 2, "course": 6, "theme": 95, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 391, "fields": {"free": false, "token": "6#62", "title": "\u0418\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u0441 1\u0421", "sort": 3, "course": 6, "theme": 95, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 392, "fields": {"free": false, "token": "6#63", "title": "\u0418\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f \u0441 \u042f\u043d\u0434\u0435\u043a\u0441.\u041c\u0430\u0440\u043a\u0435\u0442", "sort": 4, "course": 6, "theme": 95, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 393, "fields": {"free": false, "token": "6#64", "title": "\u0418\u041d\u0422\u0420\u041e", "sort": 1, "course": 6, "theme": 96, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 394, "fields": {"free": false, "token": "7#40", "title": "\u0418\u043d\u0442\u0440\u043e", "sort": 1, "course": 7, "theme": 107, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 395, "fields": {"free": false, "token": "7#41", "title": "\u041e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0445 \u043f\u043e\u0442\u043e\u043a\u0430\u0445 (UI \u043f\u043e\u0442\u043e\u043a), Thread + Handler", "sort": 2, "course": 7, "theme": 107, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 396, "fields": {"free": false, "token": "7#42", "title": "AsyncTask", "sort": 3, "course": 7, "theme": 107, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 397, "fields": {"free": false, "token": "7#43", "title": "\u0418\u043d\u0442\u0440\u043e", "sort": 1, "course": 7, "theme": 108, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 398, "fields": {"free": false, "token": "7#44", "title": "\u0420\u0430\u0431\u043e\u0442\u0430 \u0441 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u043c\u0438 \u0438 Picasso", "sort": 2, "course": 7, "theme": 108, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 399, "fields": {"free": false, "token": "6#65", "title": "\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0411\u0438\u0442\u0440\u0438\u043a\u0441 \u043a\u043b\u0430\u0441\u0441\u043e\u0432", "sort": 2, "course": 6, "theme": 96, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 400, "fields": {"free": false, "token": "7#45", "title": "\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0442\u0438\u043f\u044b \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432", "sort": 3, "course": 7, "theme": 108, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 401, "fields": {"free": false, "token": "6#66", "title": "\u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f", "sort": 3, "course": 6, "theme": 96, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 402, "fields": {"free": false, "token": "7#46", "title": "\u0421\u0442\u0438\u043b\u0438 \u0438 \u0422\u0435\u043c\u044b", "sort": 4, "course": 7, "theme": 108, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 403, "fields": {"free": false, "token": "7#47", "title": "\u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u043f\u0430\u043f\u043e\u043a \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432", "sort": 5, "course": 7, "theme": 108, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 404, "fields": {"free": false, "token": "6#67", "title": "\u041a\u043b\u0430\u0441\u0441 CUser", "sort": 4, "course": 6, "theme": 96, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 405, "fields": {"free": false, "token": "7#48", "title": "\u0420\u0430\u0437\u043d\u0430\u044f \u0440\u0430\u0437\u043c\u0435\u0442\u043a\u0430 \u0434\u043b\u044f \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 \u0441 \u044d\u043a\u0440\u0430\u043d\u0430\u043c\u0438 \u0440\u0430\u0437\u043d\u043e\u0433\u043e \u0440\u0430\u0437\u043c\u0435\u0440\u0430\r\nService \u0438 ContentProvider", "sort": 6, "course": 7, "theme": 108, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 406, "fields": {"free": false, "token": "6#68", "title": "\u041a\u043b\u0430\u0441\u0441 \u0421file", "sort": 5, "course": 6, "theme": 96, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 407, "fields": {"free": false, "token": "7#49", "title": "\u0418\u043d\u0442\u0440\u043e", "sort": 1, "course": 7, "theme": 109, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 408, "fields": {"free": false, "token": "6#69", "title": "\u041a\u043b\u0430\u0441\u0441 CIBlockElement", "sort": 6, "course": 6, "theme": 96, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 409, "fields": {"free": false, "token": "7#50", "title": "\u0417\u0430\u0447\u0435\u043c \u043d\u0443\u0436\u043d\u044b \u0441\u0435\u0440\u0432\u0438\u0441\u044b. Started Service, Bound Service, IntentService", "sort": 2, "course": 7, "theme": 109, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 410, "fields": {"free": false, "token": "6#70", "title": "\u041a\u043b\u0430\u0441\u0441 CIBlockSection", "sort": 7, "course": 6, "theme": 96, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 411, "fields": {"free": false, "token": "7#51", "title": "ContentProvider: \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0438 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043e\u0432 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430", "sort": 3, "course": 7, "theme": 109, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 412, "fields": {"free": false, "token": "6#71", "title": "\u041a\u043b\u0430\u0441\u0441 CSaleBasket", "sort": 8, "course": 6, "theme": 96, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 413, "fields": {"free": false, "token": "7#52", "title": "\u0418\u043d\u0442\u0440\u043e", "sort": 1, "course": 7, "theme": 110, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 414, "fields": {"free": false, "token": "7#53", "title": "\u041e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043d\u0430\u043b\u0438\u0447\u0438\u044f \u0441\u0435\u0442\u0438", "sort": 2, "course": 7, "theme": 110, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 415, "fields": {"free": false, "token": "6#72", "title": "\u0413\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u0430\u044f \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f APPLICATION", "sort": 9, "course": 6, "theme": 96, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 416, "fields": {"free": false, "token": "7#54", "title": "\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 RetroFit", "sort": 3, "course": 7, "theme": 110, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 417, "fields": {"free": false, "token": "6#73", "title": "\u0414\u043e\u043c\u0430\u0448\u043d\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435", "sort": 10, "course": 6, "theme": 96, "description": "A. \u041f\u0438\u0448\u0435\u043c \u0441\u0432\u043e\u0438 \u043a\u043b\u0430\u0441\u0441\u044b \u0434\u043b\u044f \u0432\u044b\u0431\u043e\u0440\u043a\u0438 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u0432 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0435, \u043a\u0430\u0440\u0442\u043e\u0447\u043a\u0435 \u0442\u043e\u0432\u0430\u0440\u0430.
", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 418, "fields": {"free": false, "token": "7#55", "title": "\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 JSON \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u0430", "sort": 4, "course": 7, "theme": 110, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 419, "fields": {"free": false, "token": "6#74", "title": "\u0418\u041d\u0422\u0420\u041e", "sort": 1, "course": 6, "theme": 97, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 420, "fields": {"free": false, "token": "6#75", "title": "C\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0411\u0438\u0442\u0440\u0438\u043a\u0441", "sort": 2, "course": 6, "theme": 97, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 421, "fields": {"free": false, "token": "6#76", "title": "\u0410\u0433\u0435\u043d\u0442\u044b", "sort": 3, "course": 6, "theme": 97, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 422, "fields": {"free": false, "token": "7#56", "title": "\u0418\u043d\u0442\u0440\u043e", "sort": 1, "course": 7, "theme": 111, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 423, "fields": {"free": false, "token": "7#57", "title": "\u041e Web Apps \u0438 \u043e\u0431\u043b\u0430\u0441\u0442\u0438 \u0438\u0445 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f", "sort": 2, "course": 7, "theme": 111, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 424, "fields": {"free": false, "token": "6#77", "title": "\u041e\u0442\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438", "sort": 4, "course": 6, "theme": 97, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 425, "fields": {"free": false, "token": "7#58", "title": "WebView", "sort": 3, "course": 7, "theme": 111, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 426, "fields": {"free": false, "token": "6#78", "title": "\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0443\u043d\u043a\u0442\u0430 \u0432 \u0430\u0434\u043c\u0438\u043d. \u043f\u0430\u043d\u0435\u043b\u044c", "sort": 5, "course": 6, "theme": 97, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 427, "fields": {"free": false, "token": "7#59", "title": "\u041f\u0440\u043e\u0441\u0442\u0435\u0439\u0448\u0435\u0435 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441 Java-\u043a\u043e\u0434\u043e\u043c", "sort": 4, "course": 7, "theme": 111, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 428, "fields": {"free": false, "token": "7#60", "title": "\u0418\u043d\u0442\u0440\u043e", "sort": 1, "course": 7, "theme": 112, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 429, "fields": {"free": false, "token": "7#61", "title": "\u041a\u0443\u0434\u0430 \u0434\u0432\u0438\u0433\u0430\u0442\u044c\u0441\u044f \u0434\u0430\u043b\u044c\u0448\u0435?", "sort": 2, "course": 7, "theme": 112, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 430, "fields": {"free": false, "token": "6#79", "title": "\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043a\u043d\u043e\u043f\u043a\u0438 \u043d\u0430 \u043f\u0430\u043d\u0435\u043b\u044c \u042d\u0440\u043c\u0438\u0442\u0430\u0436", "sort": 6, "course": 6, "theme": 97, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 431, "fields": {"free": false, "token": "7#62", "title": "\u041a\u0430\u043a \u0438\u0441\u043a\u0430\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u0443?", "sort": 3, "course": 7, "theme": 112, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 432, "fields": {"free": false, "token": "6#80", "title": "\u0414\u043e\u043c\u0430\u0448\u043d\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435", "sort": 7, "course": 6, "theme": 97, "description": "A. \u0421\u043e\u0437\u0434\u0430\u0435\u043c \u0438\u043d\u0444\u043e\u0431\u043b\u043e\u043a, \u043f\u0440\u0438 \u0438\u0437\u043c\u0435\u043d\u0438\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0441\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043a\u0435\u0448 \u043d\u0430 \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0435\u043c \u0441\u0430\u0439\u0442\u0435. \u0412\u044b\u0432\u043e\u0434\u0438\u043c \u043a\u043d\u043e\u043f\u043a\u0443 \u0432 \u0430\u0434\u043c\u0438\u043d\u043a\u0435.
", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 433, "fields": {"free": false, "token": "6#82", "title": "\u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0438 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043c\u043e\u0434\u0443\u043b\u0435\u0439", "sort": 2, "course": 6, "theme": 98, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 434, "fields": {"free": false, "token": "6#81", "title": "\u0418\u041d\u0422\u0420\u041e", "sort": 1, "course": 6, "theme": 98, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 435, "fields": {"free": false, "token": "6#83", "title": "\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f \u0432 marketplace", "sort": 3, "course": 6, "theme": 98, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 436, "fields": {"free": false, "token": "6#84", "title": "\u041f\u0438\u0448\u0435\u043c \u0441\u0432\u043e\u0439 \u043c\u043e\u0434\u0443\u043b\u044c \u043f\u043e \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e \u0441\u0441\u044b\u043b\u043e\u043a \u0441 \u043a\u043e\u0440\u0437\u0438\u043d\u043e\u0439", "sort": 4, "course": 6, "theme": 98, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 437, "fields": {"free": false, "token": "6#85", "title": "\u0418\u041d\u0422\u0420\u041e", "sort": 1, "course": 6, "theme": 99, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 438, "fields": {"free": false, "token": "6#86", "title": "\u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 \u043a\u043e\u043c\u043f\u043e\u0437\u0438\u0442\u043d\u044b\u0439 \u0441\u0430\u0439\u0442", "sort": 2, "course": 6, "theme": 99, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 439, "fields": {"free": false, "token": "6#87", "title": "\u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 CDN", "sort": 3, "course": 6, "theme": 99, "description": "", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 440, "fields": {"free": false, "token": "6#88", "title": "\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0439 \u0447\u0430\u0441\u0442\u0438", "sort": 4, "course": 6, "theme": 99, "description": "A. \u0421\u0436\u0430\u0442\u0438\u0435 \u0448\u0440\u0438\u0444\u0442\u043e\u0432
B. \u0423\u0441\u043a\u043e\u0440\u0435\u043d\u0438\u0435 \u0441\u0442\u0430\u0442\u0438\u043a\u0438 (nginx)
", "video": "", "video_id": "", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 441, "fields": {"free": false, "token": "3#43", "title": "\u041f\u0430\u0440\u0441\u0438\u043d\u0433 JSON", "sort": 3, "course": 3, "theme": 53, "description": "", "video": "", "video_id": "6815543", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 442, "fields": {"free": false, "token": "7#6", "title": "\u041e\u0441\u043d\u043e\u0432\u044b \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430", "sort": 3, "course": 7, "theme": 91, "description": "\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0432\u0438\u0434\u0435\u043e:
- \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0435\u0449\u0435 \u043e\u0434\u043d\u0443 \u043a\u043d\u043e\u043f\u043a\u0443 \u0438 \u043e\u0447\u0438\u0449\u0430\u0442\u044c TextView \u043f\u043e \u0435\u0435 \u043d\u0430\u0436\u0430\u0442\u0438\u044e
", "video": "", "video_id": "6827044", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 443, "fields": {"free": false, "token": "5#95", "title": "\u0425\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0432\u0435\u0440\u0441\u0438\u044f\u043c\u0438", "sort": 4, "course": 5, "theme": 75, "description": "", "video": "", "video_id": "7359830", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 444, "fields": {"free": false, "token": "6#12", "title": "\u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0441\u0430\u0439\u0442\u0430 \u043d\u0430 \u0411\u0438\u0442\u0440\u0438\u043a\u0441. \u041f\u0440\u0438\u043c\u0435\u0440 \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b", "sort": 6, "course": 6, "theme": 82, "description": "", "video": "", "video_id": "6827545", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.lesson", "pk": 445, "fields": {"free": false, "token": "6#13", "title": "\u0417\u0430\u0434\u0430\u043d\u0438\u0435", "sort": 7, "course": 6, "theme": 82, "description": "\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u043e \u0432 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 \u00ab\u0414\u043e\u043c\u0430\u0448\u043d\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435\u00bb
", "video": "", "video_id": "6827548", "video_date": null, "materials": [], "comments": []}}, {"model": "courses.homework", "pk": 1, "fields": {"token": "1#1", "course": 1, "theme": 1, "description": "1.\u0421\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u043b\u0438 \u043d\u0430\u0431\u0440\u0430\u0442\u044c \u0442\u0435\u043a\u0441\u0442 \u0444\u0430\u0439\u043b\u0430-\u043e\u0431\u0440\u0430\u0437\u0446\u0430 \u0438 \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0435\u0433\u043e \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e \u043f\u043e\u0434 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435\u043c test.htm.
2. \u041e\u0442\u043a\u0440\u044b\u0442\u044c \u0435\u0433\u043e \u0432 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u043c \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0435 (\u041c\u0435\u043d\u044e \u0424\u0430\u0439\u043b -> \u041e\u0442\u043a\u0440\u044b\u0442\u044c \u0444\u0430\u0439\u043b)
3. \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u044b\u0439 \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u0439 \u0442\u044d\u0433, \u0438 \u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c \u0444\u0430\u0439\u043b \u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0435 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043d\u0430\u0436\u0430\u0432 F5 \u0438\u043b\u0438 \u0449\u0435\u043b\u043a\u043d\u0443\u0432 \u043f\u043e \u043a\u043d\u043e\u043f\u043a\u0435 \u00ab\u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c\u00bb), \u0443\u0431\u0435\u0434\u0438\u0442\u044c\u0441\u044f, \u0447\u0442\u043e \u0431\u0440\u0430\u0443\u0437\u0435\u0440 \u0435\u0433\u043e \u043d\u0435 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u0442.
", "sort": 1, "materials": [1]}}, {"model": "courses.homework", "pk": 2, "fields": {"token": "1#3", "course": 1, "theme": 2, "description": "1. \u041a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0438 \u2013 \"\u0437\u0430\u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c\" \u043b\u044e\u0431\u043e\u0439 \u0431\u043b\u043e\u043a \u043a\u043e\u0434\u0430 \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b\r\n
\u0438\u0441\u0447\u0435\u0437 \u043a\u0430\u043a\u043e\u0439-\u0442\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b\r\n
2. \u0420\u0430\u0437\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u0443\u044e \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443 (1.jpg) \u0432 \u0441\u0430\u043c\u043e\u0439 \u043f\u0440\u0430\u0432\u043e\u0439 \u043a\u043e\u043b\u043e\u043d\u043a\u0435\r\n
\u0432\u0442\u043e\u0440\u043e\u0433\u043e \u0440\u044f\u0434\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u044b.\r\n
3. \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043a \u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u0435\u0449\u0435 \u0442\u0440\u0438 \u0440\u044f\u0434\u0430.\r\n
4. \u0412 \u043b\u0435\u0432\u043e\u0439 \u043a\u043e\u043b\u043e\u043d\u043a\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u0440\u044f\u0434\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0440\u0430\u0437\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u0442\u0435\u043a\u0441\u0442\r\n
This is just some text, with a link to an external site (ya.ru),\r\n
\u043f\u0440\u0438\u0447\u0435\u043c \u0441\u043b\u043e\u0432\u043e text \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0436\u0438\u0440\u043d\u044b\u043c \u0438 \u043a\u0443\u0440\u0441\u0438\u0432\u043e\u043c,\r\n
\u0430 \u0441\u043b\u043e\u0432\u043e link \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u0441\u0441\u044b\u043b\u043a\u043e\u0439 \u043d\u0430 \u0441\u0430\u0439\u0442\r\n
5. \u0412 \u0441\u0430\u043c\u043e\u0439 \u043f\u0440\u0430\u0432\u043e\u0439 \u043a\u043e\u043b\u043e\u043d\u043a\u0435 \u043f\u0440\u0435\u0434\u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u0440\u044f\u0434\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0435\u0449\u0435\r\n
\u043e\u0434\u043d\u0443 \u0442\u0430\u0431\u043b\u0438\u0446\u0443 \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u043c 2\u04452 (2 \u0440\u044f\u0434\u0430 \u043f\u043e 2 \u043a\u043e\u043b\u043e\u043d\u043a\u0438), \u0440\u0430\u0437\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u043d\u0443\u043c\u0435\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0441\u043f\u0438\u0441\u043e\u043a \u0438\u0437 2 \u043f\u0443\u043d\u043a\u0442\u043e\u0432 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u0442\u0435\u043a\u0441\u0442\u0430 \u0432 \u043b\u0435\u0432\u043e\u0439 \u0432\u0435\u0440\u0445\u043d\u0435\u0439 \u044f\u0447\u0435\u0439\u043a\u0435 \u044d\u0442\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u044b, \u0438 \u043d\u0435\u043d\u0443\u043c\u0435\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0441\u043f\u0438\u0441\u043e\u043a \u0438\u0437 4 \u043f\u0443\u043d\u043a\u0442\u043e\u0432 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u0442\u0435\u043a\u0441\u0442\u0430 \u2013 \u0432 \u043f\u0440\u0430\u0432\u043e\u0439 \u043d\u0438\u0436\u043d\u0435\u0439.\r\n
6. \u0412\u043d\u0438\u0437\u0443 \u043f\u043e\u0434 \u0442\u0430\u0431\u043b\u0438\u0446\u0435\u0439 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u0443\u044e \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u0447\u0435\u0440\u0442\u0443,\r\n
\u0438 \u043f\u043e\u0434 \u043d\u0435\u0439 \u0440\u0430\u0437\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u043f\u0430\u0440\u0430\u0433\u0440\u0430\u0444 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u0442\u0435\u043a\u0441\u0442\u0430:\r\n
This is a link to an external site (http://ya.ru) :\r\n
CLICK HERE\r\n
\u041f\u0440\u0438\u0447\u0435\u043c \u0441\u043b\u043e\u0432\u0430 CLICK HERE \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0439, \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0435\u0439\r\n
\u0441\u0441\u044b\u043b\u043a\u043e\u0439 \u043d\u0430 \u0441\u0430\u0439\u0442 http://ya.ru\r\n
", "sort": 1, "materials": [2, 3, 4]}}, {"model": "courses.homework", "pk": 3, "fields": {"token": "1#5", "course": 1, "theme": 3, "description": "\u041d\u0430\u043f\u0438\u0448\u0438\u0442\u0435 \u0444\u043e\u0440\u043c\u0443 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044f \u0432 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0435.
\u0417\u0430\u0434\u0430\u0447\u0430 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432\u0441\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0444\u043e\u0440\u043c,
\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u044b \u0432\u0438\u0434\u0435\u043b\u0438 \u043d\u0430 \u0437\u0430\u043d\u044f\u0442\u0438\u0438 - \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u0439 \u0438\u0445 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043d\u0443\u0436\u043d\u043e \u043f\u0440\u0438\u0434\u0443\u043c\u0430\u0442\u044c \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e.
\u041f\u0440\u0438 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0438 \u0444\u043e\u0440\u043c\u044b \u0438 \u0435\u0435 \u043f\u043e\u0434\u0430\u0447\u0438 \u0432 \u0430\u0434\u0440\u0435\u0441\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0435 \u0434\u043e\u043b\u0436\u043d\u043e
\u0431\u044b\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0447\u0435\u0441\u0442\u044c \u0432\u0441\u0435 \u043f\u0430\u0440\u044b \u0438\u043c\u044f=\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435, \u043e\u0442 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0438\u0437 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0444\u043e\u0440\u043c\u044b.
", "sort": 1, "materials": [5]}}, {"model": "courses.homework", "pk": 4, "fields": {"token": "1#7", "course": 1, "theme": 4, "description": "1. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u043e\u0435 \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435 \u0438\u0437 \u041c\u043e\u0434\u0443\u043b\u044f 3 \u0441\u0434\u0435\u043b\u0430\u0439\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435:\r\n 1\u0430. \u0421\u0434\u0435\u043b\u0430\u0439\u0442\u0435 \u0442\u0435\u043a\u0441\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043d\u0430\u0431\u0438\u0440\u0430\u0435\u0442 \u0432 \u043f\u043e\u043b\u0435 \u0434\u043b\u044f \u0432\u0432\u043e\u0434\u0430 \u0444\u0430\u043c\u0438\u043b\u0438\u0438 \u0437\u0435\u043b\u0435\u043d\u044b\u043c \u0438 \u0436\u0438\u0440\u043d\u044b\u043c.\r\n 1\u0431. \u041e\u0445\u0432\u0430\u0442\u0438\u0442\u0435 \u0432\u0441\u044e \u0433\u0440\u0443\u043f\u043f\u0443 \u043f\u043e\u043b\u0435\u0439 \u0442\u0438\u043f\u0430 radio \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0438\u0445 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435\u043c \u0441\u0438\u043d\u0435\u0439 \u0440\u0430\u043c\u043a\u043e\u0439 \u0448\u0438\u0440\u0438\u043d\u043e\u0439 \u0432 4 \u043f\u0438\u043a\u0441\u0435\u043b\u044f.\r\n 1\u0432. \u041e\u0445\u0432\u0430\u0442\u0438\u0442\u0435 \u0432\u0441\u044e \u0433\u0440\u0443\u043f\u043f\u0443 \u043f\u043e\u043b\u0435\u0439 \u0442\u0438\u043f\u0430 checkbox \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0438\u0445 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435\u043c \u0447\u0435\u0440\u043d\u043e\u0439 \u0440\u0430\u043c\u043a\u043e\u0439 \u0448\u0438\u0440\u0438\u043d\u043e\u0439 \u0432 3 \u043f\u0438\u043a\u0441\u0435\u043b\u044f \u0438 \u0437\u0430\u0434\u0430\u0439\u0442\u0435 \u044d\u0442\u043e\u0439 \u0433\u0440\u0443\u043f\u043f\u0435 \u0436\u0435\u043b\u0442\u044b\u0439 (yellow) \u0444\u043e\u043d (\u0441\u0432\u043e\u0439\u0441\u0442\u0432\u043e - background-color).\r\n 1\u0433. \u0412 \u0432\u044b\u043f\u0430\u0434\u0430\u044e\u0449\u0435\u043c \u0441\u043f\u0438\u0441\u043a\u0435 (\u043c\u0435\u0442\u043a\u0430 select) \u0441\u0434\u0435\u043b\u0430\u0439\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435:\r\n 1\u04331. \u0421\u0430\u043c \u044d\u043b\u0435\u043c\u0435\u043d\u0442 select \u0434\u043e\u043b\u0436\u0435\u043d \u0432\u044b\u0432\u043e\u0434\u0438\u0442\u044c\u0441\u044f \u0437\u0435\u043b\u0435\u043d\u044b\u043c \u0446\u0432\u0435\u0442\u043e\u043c \u0438 \u0448\u0440\u0438\u0444\u0442 \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u043e\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0436\u0438\u0440\u043d\u044b\u043c (bold, \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u043e: font-weight).\r\n 1\u04332. \u042d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0432\u044b\u043f\u0430\u0434\u0430\u044e\u0449\u0435\u0433\u043e \u0441\u043f\u0438\u0441\u043a\u0430 \u0434\u043e\u043b\u0436\u043d\u044b \u0438\u043c\u0435\u0442\u044c \u0447\u0435\u0440\u0435\u0434\u0443\u044e\u0449\u0438\u0435\u0441\u044f \u0446\u0432\u0435\u0442\u0430 \u043a\u0440\u0430\u0441\u043d\u044b\u0439-\u0441\u0438\u043d\u0438\u0439 (\u043f\u0435\u0440\u0432\u044b\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 - \u043a\u0440\u0430\u0441\u043d\u044b\u0439, \u0432\u0442\u043e\u0440\u043e\u0439 - \u0441\u0438\u043d\u0438\u0439, \u0442\u0440\u0435\u0442\u0438\u0439 - \u043a\u0440\u0430\u0441\u043d\u044b\u0439 \u0438 \u0442.\u043f.), \u043f\u0440\u0438\u0447\u0435\u043c \u0442\u0435\u043a\u0441\u0442 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u043d\u0435\u0436\u0438\u0440\u043d\u044b\u043c (normal, \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u043e font-weight), \u043a\u0440\u043e\u043c\u0435 \u043a\u0430\u043a \u0432 \u043f\u0440\u0435\u0434\u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u043c \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0435 (\u0435\u0441\u043b\u0438 \u0441\u043f\u0438\u0441\u043e\u043a \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u043f\u044f\u0442\u0438 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432, \u0442\u043e \u0437\u043d\u0430\u0447\u0438\u0442 \u0440\u0435\u0447\u044c \u0438\u0434\u0435\u0442 \u043e \u0447\u0435\u0442\u0432\u0435\u0440\u0442\u043e\u043c), \u0433\u0434\u0435 \u0442\u0435\u043a\u0441\u0442 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0436\u0438\u0440\u043d\u044b\u043c.", "sort": 1, "materials": [6]}}, {"model": "courses.homework", "pk": 5, "fields": {"token": "1#9", "course": 1, "theme": 5, "description": "\u0410\u043d\u0438\u043c\u0438\u0440\u0443\u0439\u0442\u0435 \u043b\u044e\u0431\u043e\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0438\u0437 \u0444\u043e\u0440\u043c\u044b \u0438\u0437 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0433\u043e \u0437\u0430\u0434\u0430\u043d\u0438\u044f, \u0437\u0430\u0441\u0442\u0430\u0432\u0438\u0432 \u0435\u0433\u043e \u0432\u0440\u0430\u0449\u0430\u0442\u044c\u0441\u044f \u043f\u0440\u0438 \u043d\u0430\u0432\u0435\u0434\u0435\u043d\u0438\u0438 \u043d\u0430 \u043d\u0435\u0433\u043e \u043a\u0443\u0440\u0441\u043e\u0440\u0430 \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u043d\u0430 360 \u0433\u0440\u0430\u0434\u0443\u0441\u043e\u0432 \u043f\u043e \u0447\u0430\u0441\u043e\u0432\u043e\u0439 \u0441\u0442\u0440\u0435\u043b\u043a\u0435, \u0430 \u0437\u0430\u0442\u0435\u043c \u043d\u0430 360 \u0433\u0440\u0430\u0434\u0443\u0441\u043e\u0432 \u043f\u0440\u043e\u0442\u0438\u0432 \u0447\u0430\u0441\u043e\u0432\u043e\u0439.", "sort": 1, "materials": [7]}}, {"model": "courses.homework", "pk": 6, "fields": {"token": "1#11", "course": 1, "theme": 6, "description": "1. \u041d\u0430\u0440\u0438\u0441\u043e\u0432\u0430\u0442\u044c \u0434\u0432\u0435 \u0442\u0430\u0431\u043b\u0438\u0446\u044b 3\u04453, \u043e\u0434\u043d\u0443 \u043f\u043e\u0434 \u0434\u0440\u0443\u0433\u043e\u0439. \u0412 \u043d\u0438\u0436\u043d\u0435\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u0437\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0432\u0441\u0435 9 \u044f\u0447\u0435\u0435\u043a \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u044b\u043c \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u044b\u043c (\u0442\u0435\u043a\u0441\u0442, \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438 - \u0432\u0441\u0435 \u0440\u0430\u0432\u043d\u043e), \u0430 \u0432 \u0432\u0435\u0440\u0445\u043d\u0435\u0439 - \u0432 \u043a\u0430\u0436\u0434\u043e\u0439 \u0438\u0437 \u0434\u0435\u0432\u044f\u0442\u0438 \u044f\u0447\u0435\u0435\u043a \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0438\u0442\u044c \u043a\u043d\u043e\u043f\u043a\u0443 (<input type=button...>).
2. \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043d\u0430 Javascript \u0440\u0435\u0430\u043a\u0446\u0438\u044e \u043d\u0430 \u043a\u043b\u0438\u043a \u043c\u044b\u0448\u043a\u043e\u0439 \u043f\u043e \u043b\u044e\u0431\u043e\u0439 \u044f\u0447\u0435\u0439\u043a\u0435 \u043d\u0438\u0436\u043d\u0435\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u044b, \u0442\u0430\u043a \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u0438 \u043a\u043b\u0438\u043a\u0435 \u043d\u0430 \u044f\u0447\u0435\u0439\u043a\u0443 \u043e\u043d\u0430 \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0430\u0441\u044c \u043d\u0435\u0432\u0438\u0434\u0438\u043c\u043e\u0439 (\u0441\u0432\u043e\u0439\u0441\u0442\u0432\u043e \u0441\u0442\u0438\u043b\u044f display = none), \u0430 \u043d\u0430\u0436\u0430\u0442\u0438\u0435 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0439 \u043a\u043d\u043e\u043f\u043a\u0438 \u0432 \u044f\u0447\u0435\u0439\u043a\u0443 \u0432\u0435\u0440\u0445\u043d\u0435\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u043b\u043e \u0431\u044b \u0441\u043a\u0440\u044b\u0442\u0443\u044e \u044f\u0447\u0435\u0439\u043a\u0443 \u0432 \u043d\u0438\u0436\u043d\u0435\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u043d\u0430\u0437\u0430\u0434.
3. \u041f\u043e\u0434 \u043d\u0438\u0436\u043d\u0435\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u0435\u0439 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0438\u0442\u044c \u044d\u043b\u0435\u043c\u0435\u043d\u0442 DIV. \u041e\u0444\u043e\u0440\u043c\u0438\u0442\u044c \u0435\u0433\u043e \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u0443 \u043d\u0435\u0433\u043e \u0431\u044b\u043b\u0430 \u0432\u0438\u0434\u043a\u0430 \u0440\u0430\u043c\u043a\u0430 \u0432\u043e\u043a\u0440\u0443\u0433 \u043d\u0435\u0433\u043e, \u0442\u0435\u043d\u044c \u0438 \u043d\u0435 \u0431\u0435\u043b\u044b\u0439 \u0444\u043e\u043d.
4. \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432 \u044f\u0447\u0435\u0439\u043a\u0438 \u043d\u0438\u0436\u043d\u0435\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0440\u0435\u0430\u043a\u0446\u0438\u044e \u043d\u0430 \u043d\u0430\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043a\u0443\u0440\u0441\u043e\u0440\u0430 \u043c\u044b\u0448\u043a\u0438 \u043d\u0430 \u044f\u0447\u0435\u0439\u043a\u0443 (\u0441\u043e\u0431\u044b\u0442\u0438\u0435 onMouseOver - \u043f\u043e \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0438 \u0441\u043e \u0437\u043d\u0430\u043a\u043e\u043c\u044b\u043c \u043d\u0430\u043c onClick), \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u0438 \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u0438 \u044d\u0442\u043e\u0433\u043e \u0441\u043e\u0431\u044b\u0442\u0438\u044f \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 \u044d\u0442\u043e\u0439 \u044f\u0447\u0435\u0439\u043a\u0438 (\u0441\u0432\u043e\u0439\u0441\u0442\u0432\u043e innerHTML) \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043b\u043e\u0441\u044c \u0431\u044b \u0432 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 DIV, \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0439 \u0432 \u043f.3.
5. \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043f\u043e\u0434 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u043c DIV \u0438\u0437 \u043f.3 \u043f\u043e\u043b\u0435 \u0434\u043b\u044f \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u0433\u043e \u0432\u0432\u043e\u0434\u0430 (<input type=text...>) \u0438 \u043a\u043d\u043e\u043f\u043a\u0443 \u0440\u044f\u0434\u043e\u043c \u0441 \u043d\u0435\u0439. \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0440\u0435\u0430\u043a\u0446\u0438\u044e \u043d\u0430 \u043d\u0430\u0436\u0430\u0442\u0438\u0435 \u044d\u0442\u043e\u0439 \u043a\u043d\u043e\u043f\u043a\u0438 \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u043d\u0430\u0431\u0440\u0430\u043d\u043d\u044b\u0439 \u0432 \u043f\u043e\u043b\u0435 \u0434\u043b\u044f \u0432\u0432\u043e\u0434\u0430 \u0442\u0435\u043a\u0441\u0442\u0430 \u043d\u0430 \u043c\u043e\u043c\u0435\u043d\u0442 \u043d\u0430\u0436\u0430\u0442\u0438\u044f \u0442\u0435\u043a\u0441\u0442 \"\u043f\u0440\u0438\u043a\u043b\u0435\u0435\u0432\u0430\u043b\u0441\u044f\" \u0431\u044b \u043a \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u043c\u0443 \u043b\u0435\u0432\u043e\u0439 \u0432\u0435\u0440\u0445\u043d\u0435\u0439 \u044f\u0447\u0435\u0439\u043a\u0438 \u043d\u0438\u0436\u043d\u0435\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u044b. (\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440: \u0432 \u044f\u0447\u0435\u0439\u043a\u0435 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \"Some text\" \u0438 \u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d\u0430 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430 (\"Some text<\u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430>\"). \u041c\u044b \u043d\u0430\u0431\u0438\u0440\u0430\u0435\u043c \u0432 \u043f\u043e\u043b\u0435 \u0434\u043b\u044f \u0432\u0432\u043e\u0434\u0430 \u0442\u0435\u043a\u0441\u0442\u0430 \"More text\" \u0438 \u043d\u0430\u0436\u0438\u043c\u0430\u0435\u043c \u043d\u0430 \u043a\u043d\u043e\u043f\u043a\u0443. \u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 \u043b\u0435\u0432\u043e\u0439 \u0432\u0435\u0440\u0445\u043d\u0435\u0439 \u044f\u0447\u0435\u0439\u043a\u0438 \u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u043d\u0430 \"Some text<\u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430>More text\").
", "sort": 1, "materials": [8]}}, {"model": "courses.homework", "pk": 7, "fields": {"token": "1#13", "course": 1, "theme": 7, "description": "\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0441\u0442\u0440\u0430\u043d\u0438\u0447\u043a\u0443, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0441\u0440\u0435\u0434\u0438 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0435\u0441\u0442\u044c \u043e\u0434\u0438\u043d (\u043b\u044e\u0431\u043e\u0439), \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0440\u0435\u0430\u0433\u0438\u0440\u0443\u0435\u0442 \u043d\u0430 \u0432\u0441\u0435, \u0443\u043f\u043e\u043c\u044f\u043d\u0443\u0442\u044b\u0435 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0437\u0430\u043d\u044f\u0442\u0438\u044f, \u0441\u043e\u0431\u044b\u0442\u0438\u044f \u043c\u044b\u0448\u043a\u0438. \u041a\u0430\u043a \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u044d\u0442\u0430 \u0440\u0435\u0430\u043a\u0446\u0438\u044f - \u043e\u0441\u0442\u0430\u0435\u0442\u0441\u044f \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u043d\u0430 \u0432\u0430\u0448\u0435 \u0443\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u0438\u0435.", "sort": 1, "materials": [9]}}, {"model": "courses.homework", "pk": 8, "fields": {"token": "1#15", "course": 1, "theme": 8, "description": "1. \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0441\u0442\u0440\u0430\u043d\u0438\u0447\u043a\u0443, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0441\u0440\u0435\u0434\u0438 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0435\u0441\u0442\u044c \u043e\u0434\u0438\u043d (\u043b\u044e\u0431\u043e\u0439), \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0440\u0435\u0430\u0433\u0438\u0440\u0443\u0435\u0442 \u043d\u0430 \u0432\u0441\u0435, \u0443\u043f\u043e\u043c\u044f\u043d\u0443\u0442\u044b\u0435 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0437\u0430\u043d\u044f\u0442\u0438\u044f, \u0441\u043e\u0431\u044b\u0442\u0438\u044f \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b. \u041a\u0430\u043a \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u044d\u0442\u0430 \u0440\u0435\u0430\u043a\u0446\u0438\u044f - \u043e\u0441\u0442\u0430\u0435\u0442\u0441\u044f \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u043d\u0430 \u0432\u0430\u0448\u0435 \u0443\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u0438\u0435
2. \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 HTML <input type=text> \u044d\u043b\u0435\u043c\u0435\u043d\u0442 <div></div>. \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u0441\u043e\u0431\u044b\u0442\u0438\u0439 \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u0438 \u043d\u0430\u0431\u043e\u0440\u0435 \u0442\u0435\u043a\u0441\u0442\u0430 \u0432 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0435 <input...> \u043e\u043d \u0442\u0430\u043a \u0436\u0435 \u043f\u043e\u044f\u0432\u043b\u044f\u043b\u0441\u044f \u0438 \u0432 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0435 <div></div>, \u043f\u0440\u0438\u0447\u0435\u043c \u0432\u0441\u0435 \u0431\u0443\u043a\u0432\u044b \"a\", \u043d\u0430\u0431\u0438\u0440\u0430\u0435\u043c\u044b\u0435 \u0432 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0435 <input...> \u043f\u0440\u0438 \u0432\u044b\u0432\u043e\u0434\u0435 \u0432 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 <div></div> \u0437\u0430\u043c\u0435\u0449\u0430\u043b\u0438\u0441\u044c \u0431\u044b \u043d\u0430 \u0431\u0443\u043a\u0432\u0443 \"A\".
3. \u0417\u0430\u0433\u0430\u0434\u043a\u0430 \u043f\u0440\u043e\u0431\u0435\u043b\u0430 - \u0432 \u0437\u0430\u0434\u0430\u043d\u0438\u0438, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0431\u044b\u043b\u043e \u0441\u0434\u0435\u043b\u0430\u043d\u043e \u043d\u0430 \u0437\u0430\u043d\u044f\u0442\u0438\u0438, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043e\u0431\u044a\u044f\u0441\u043d\u0438\u0442\u044c, \u043f\u043e\u0447\u0435\u043c\u0443 \u043c\u044b \u043d\u0435 \u0432\u0438\u0434\u0438\u043c \u0432\u0441\u043f\u043b\u044b\u0432\u0430\u044e\u0449\u0435\u0435 \u043e\u043a\u043d\u043e (\u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0440\u0430\u0431\u043e\u0442\u044b \u0444\u0443\u043d\u043a\u0446\u0438\u0438 alert \u0432 Chrome) \u043f\u0440\u0438 \u043d\u0430\u0436\u0430\u0442\u0438\u0438 \u043f\u0440\u043e\u0431\u0435\u043b\u0430, \u0432 \u043e\u0442\u043b\u0438\u0447\u0438\u0438 \u043e\u0442 \u043d\u0430\u0436\u0430\u0442\u0438\u044f \u043d\u0430 \u0434\u0440\u0443\u0433\u0438\u0435 \u043a\u043b\u0430\u0432\u0438\u0448\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u0430\u0432\u0430\u043b\u0438 \u043d\u0430\u043c \u0432\u0441\u043f\u043b\u0432\u0430\u044e\u0449\u0435\u0435 \u043e\u043a\u043d\u043e.
\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0414\u043b\u044f \u0412\u0430\u0448\u0435\u0433\u043e \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430 \u043c\u044b \u0441\u043e\u0431\u0440\u0430\u043b\u0438 FAQ \u043f\u043e \u0447\u0430\u0441\u0442\u043e \u0437\u0430\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u043c \u0432\u043e\u043f\u0440\u043e\u0441\u0430\u043c. \u041f\u0440\u043e\u0441\u0438\u043c \u0432\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0441 \u043d\u0438\u043c\u0438 \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f.
\u0423\u0440\u043e\u043a 2. \u041a\u0430\u043a\u0438\u0435 \u0431\u044b\u0432\u0430\u044e\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b
- \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043d\u0430 \u0432\u0441\u0435 \u0441\u0432\u043e\u0438 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u043c\u0435\u0441\u0441\u0435\u043d\u0434\u0436\u0435\u0440 Telegram.
- \u0418\u0437\u0443\u0447\u0438\u0442\u044c, \u043a\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043c\u0435\u0441\u0441\u0435\u043d\u0434\u0436\u0435\u0440 Telegram \u0438 \u0447\u0442\u043e \u0432 \u043d\u0451\u043c \u0435\u0441\u0442\u044c
- \u0420\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f, \u043a\u0430\u043a \u0432 Telegram \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044f \u0438 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u044f
\u0423\u0440\u043e\u043a 4. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0441\u0440\u0435\u0434\u044b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438
- \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c JDK \u0438 IntelliJ Idea Community Edition \u043d\u0430 \u0441\u0432\u043e\u0439 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440.
\u0423\u0440\u043e\u043a 5. \u0418\u0441\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c \u0433\u043e\u0442\u043e\u0432\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435
- \u0421\u043a\u0430\u0447\u0430\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442 RoadCamera.zip, \u0440\u0430\u0437\u0430\u0440\u0445\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438 \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u0432 \u0441\u0440\u0435\u0434\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 IntelliJ Idea. \u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0435\u0433\u043e \u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c, \u043a\u0430\u043a \u043e\u043d \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442.
- \u0418\u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043a\u043e\u0434 \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u043a\u0430\u043c\u0435\u0440\u0430 \u043d\u0435 \u0432\u044b\u043f\u0438\u0441\u044b\u0432\u0430\u043b\u0430 \u0448\u0442\u0440\u0430\u0444 \u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044e, \u0435\u0441\u043b\u0438 \u0435\u0433\u043e \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u043d\u0435 \u043f\u0440\u0435\u0432\u044b\u0448\u0430\u0435\u0442 60 \u043a\u043c/\u0447.
- \u0418\u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043a\u043e\u0434 \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u0448\u0442\u0440\u0430\u0444 \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u043b\u0441\u044f \u0432 2 \u0440\u0430\u0437\u0430.
\u0423\u0440\u043e\u043a 6. \u041f\u0435\u0440\u0432\u043e\u0435 \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u043f\u043e\u0432\u0442\u043e\u0440\u0438\u0432 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f, \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0435 \u0432 \u0432\u0438\u0434\u0435\u043e \u0443\u0440\u043e\u043a\u0430. \u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0435\u0433\u043e \u0438 \u0443\u0431\u0435\u0434\u0438\u0442\u044c\u0441\u044f, \u0447\u0442\u043e \u0434\u0430\u0442\u0430 \u0442\u0435\u043a\u0443\u0449\u0430\u044f \u0440\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u0430\u043b\u0430\u0441\u044c \u0432\u0435\u0440\u043d\u043e.
- \u0418\u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043a\u043e\u0434 \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u0434\u0430\u0442\u0430 \u043f\u0435\u0447\u0430\u0442\u0430\u043b\u0430\u0441\u044c \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435: \"15:30 28.08.2015\".
\u0423\u0440\u043e\u043a 7. \u041f\u0435\u0440\u0432\u043e\u0435 \u043e\u043a\u043e\u043d\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043f\u0440\u043e\u0441\u0442\u043e\u0435 \u043e\u043a\u043e\u043d\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u043f\u043e\u0432\u0442\u043e\u0440\u0438\u0432 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f, \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0435 \u0432 \u0432\u0438\u0434\u0435\u043e \u0443\u0440\u043e\u043a\u0430.
- \u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u043a\u043e\u0434 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u0440\u0430\u0437\u043c\u0435\u0440 \u043e\u043a\u043d\u0430 \u0441\u0442\u0430\u043b \u0440\u0430\u0432\u043d\u044b\u043c 800*600 \u043f\u0438\u043a\u0441\u0435\u043b\u0435\u0439.
\u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0432\u044b\u0448\u0435\u043d\u043d\u043e\u0439 \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u0438.
- \u041d\u0430\u0439\u0442\u0438 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Google, \u043a\u0430\u043a \u0440\u0430\u0437\u043c\u0435\u0449\u0430\u0442\u044c JFrame \u043f\u043e \u0446\u0435\u043d\u0442\u0440\u0443 \u044d\u043a\u0440\u0430\u043d\u0430. \u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u043a\u043e\u0434 \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u043e\u043a\u043d\u043e \u043f\u043e\u044f\u0432\u043b\u044f\u043b\u043e\u0441\u044c \u043f\u043e \u0446\u0435\u043d\u0442\u0440\u0443 \u044d\u043a\u0440\u0430\u043d\u0430.
", "sort": 1, "materials": [127, 5472]}}, {"model": "courses.homework", "pk": 18, "fields": {"token": "2#15", "course": 2, "theme": 20, "description": "\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0414\u043b\u044f \u0412\u0430\u0448\u0435\u0433\u043e \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430 \u043c\u044b \u0441\u043e\u0431\u0440\u0430\u043b\u0438 FAQ \u043f\u043e \u0447\u0430\u0441\u0442\u043e \u0437\u0430\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u043c \u0432\u043e\u043f\u0440\u043e\u0441\u0430\u043c. \u041f\u0440\u043e\u0441\u0438\u043c \u0432\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0441 \u043d\u0438\u043c\u0438 \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f.
\u0423\u0440\u043e\u043a 1. \u0427\u0442\u043e \u0432\u043e\u043e\u0431\u0449\u0435 \u0431\u044b\u0432\u0430\u0435\u0442 \u0432 \u043a\u043e\u0434\u0435
- \u041e\u0442\u043a\u0440\u044b\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442 RoadController, \u0444\u0430\u0439\u043b RoadController.java b \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c. \u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u043d\u043e \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u0438. \u041f\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u043a\u043e\u0434 \u0438 \u043f\u043e\u043f\u044b\u0442\u0430\u0442\u044c\u0441\u044f \u043f\u043e\u043d\u044f\u0442\u044c, \u0447\u0442\u043e \u043e\u043d \u0434\u0435\u043b\u0430\u0435\u0442. \u041e\u043f\u0438\u0441\u0430\u0442\u044c \u0442\u0435\u043a\u0441\u0442\u043e\u043c.
\u0423\u0440\u043e\u043a 2. \u041f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0432 Java
- \u0412 \u043a\u043e\u0434\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 RoadController \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0438\u0442\u044c \u0432 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f\u0445 \u0432\u0441\u0435 \u043c\u0435\u0441\u0442\u0430, \u0433\u0434\u0435 \u0441\u043e\u0437\u0434\u0430\u044e\u0442\u0441\u044f \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435.
\u0423\u0440\u043e\u043a 3. \u0411\u0443\u043b\u0435\u0432\u0430 \u0430\u043b\u0433\u0435\u0431\u0440\u0430
- \u041e\u0442\u043a\u0440\u044b\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442 Booleans \u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0443\u0441\u043b\u043e\u0432\u0438\u044f \"if\" \u0441 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430\u043c\u0438 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u0438\u043d\u0433\u0440\u0435\u0434\u0438\u0435\u043d\u0442\u043e\u0432 \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u0440\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u044b\u0432\u0430\u043b\u0438\u0441\u044c \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0436\u043d\u043e \u0438\u0437 \u043d\u0438\u0445 \u043f\u0440\u0438\u0433\u043e\u0442\u043e\u0432\u0438\u0442\u044c.
- \u041f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u043c\u0435\u043d\u044f\u0442\u044c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u0438\u043d\u0433\u0440\u0435\u0434\u0438\u0435\u043d\u0442\u043e\u0432 \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u0432\u044b\u0434\u0430\u0432\u0430\u043b\u0438\u0441\u044c \u0440\u0430\u0437\u043d\u044b\u0435 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u044b.
\u0423\u0440\u043e\u043a 4. \u0423\u0441\u043b\u043e\u0432\u043d\u044b\u0435 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u044b
- \u0412 \u043d\u043e\u0432\u043e\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u0435 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0441 \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430\u043c\u0438 \u0442\u0440\u0451\u0445 \u0447\u0435\u043b\u043e\u0432\u0435\u043a \u0438 \u0435\u0449\u0451 \u0442\u0440\u0438 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0443\u0436\u043d\u043e \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0439, \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0439 \u0438 \u0441\u0440\u0435\u0434\u043d\u0438\u0439 \u0432\u043e\u0437\u0440\u0430\u0441\u0442. \u0421\u0434\u0435\u043b\u0430\u0442\u044c \u044d\u0442\u043e \u0442\u0430\u043a, \u043a\u0430\u043a \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u043e \u043d\u0430 \u0432\u0438\u0434\u0435\u043e, \u0430 \u0437\u0430\u0442\u0435\u043c \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u0434, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u0441\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u0442\u044c \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430 \u0438 \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u0438\u0445 \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435. \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442: \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u043e\u0442 \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0443\u043a\u0430\u0437\u0430\u043d\u044b \u0432 \u043f\u0435\u0440\u0432\u044b\u0445 \u0442\u0440\u0451\u0445 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445, \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u0438 \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u044b \u0432\u0435\u0440\u043d\u043e: \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0439, \u0441\u0440\u0435\u0434\u043d\u0438\u0439 \u0438 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0439.
\u0423\u0440\u043e\u043a 5. \u0426\u0438\u043a\u043b\u044b
- \u0418\u0437\u0443\u0447\u0438\u0442\u044c \u0446\u0438\u043a\u043b do...while \u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c, \u0447\u0435\u043c \u043e\u043d \u043e\u0442\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f \u043e\u0442 \u0446\u0438\u043a\u043b\u0430 while.
- \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u0434 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0446\u0438\u043a\u043b\u0430 do... while, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0440\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u0438 \u043d\u043e\u043c\u0435\u0440\u0430 \u0431\u0438\u043b\u0435\u0442\u043e\u0432 \u043e\u0442 200000 \u0434\u043e 210000.
\u0423\u0440\u043e\u043a 6. \u0420\u0430\u0437\u0431\u0438\u0440\u0430\u0435\u043c \u0441\u043b\u043e\u0436\u043d\u044b\u0439 \u043a\u043e\u0434
\u041e\u0442\u043a\u0440\u044b\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442 RoadController \u0438 \u0432\u043d\u0435\u0441\u0442\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0432 \u043a\u043e\u0434 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b:
- \u0423\u043c\u0435\u043d\u044c\u0448\u0438\u0442\u044c \u0432\u044b\u0441\u043e\u0442\u0443 \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u043d\u043e\u0433\u043e \u043f\u0443\u043d\u043a\u0442\u0430 \u0434\u043e 3,5 \u043c\u0435\u0442\u0440\u043e\u0432
- \u041d\u0435 \u0448\u0442\u0440\u0430\u0444\u043e\u0432\u0430\u0442\u044c \u0442\u0435\u0445, \u043a\u0442\u043e \u043f\u043e\u0434\u044a\u0435\u0437\u0436\u0430\u0435\u0442 \u0441\u043e \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c\u044e \u043c\u0435\u043d\u0435\u0435 60 \u043a\u043c/\u0447
- \u0418\u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043e\u0448\u0438\u0431\u043a\u0443: \u043d\u0435\u0432\u0435\u0440\u043d\u043e \u0432\u044b\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0446\u0435\u043d\u0430 \u0437\u0430 \u0433\u0440\u0443\u0437\u043e\u0432\u044b\u0435 \u0438 \u043b\u0435\u0433\u043a\u043e\u0432\u044b\u0435
- \u0418\u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043e\u0448\u0438\u0431\u043a\u0443: \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043d\u0435 \u043b\u043e\u0432\u0438\u0442 (\u043f\u0440\u043e\u043f\u0443\u0441\u043a\u0430\u0435\u0442) \u0443\u0433\u043d\u0430\u043d\u043d\u044b\u0435 \u043f\u043e\u043b\u0438\u0446\u0435\u0439\u0441\u043a\u0438\u0435 \u0430\u0432\u0442\u043e\u043c\u043e\u0431\u0438\u043b\u0438
- \u041f\u043e \u0434\u0438\u043f\u043b\u043e\u043c\u0443: \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u0438 \u043f\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044e \u0441\u0432\u043e\u0435\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f Telegram \u043d\u0430 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u043c \u0441\u0430\u0439\u0442\u0435 Telegram. \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043f\u0440\u0438\u0441\u043b\u0430\u0442\u044c \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u043e\u0433\u043e \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0433\u043e \u0437\u0430\u0434\u0430\u043d\u0438\u044f.
- \u041f\u043e \u0434\u0438\u043f\u043b\u043e\u043c\u0443: \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f \u0441 \u043c\u0435\u0442\u043e\u0434\u0430\u043c\u0438 API \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u0438 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u0438 \u043f\u043e\u043d\u044f\u0442\u044c, \u0432 \u043a\u0430\u043a\u043e\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u043a\u0430\u043a\u0438\u0435 \u0438\u0437 \u043d\u0438\u0445 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0442\u0441\u044f \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c Telegram.
\u041e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f \u0441\u043e \u0441\u043f\u0438\u0441\u043a\u043e\u043c \u043c\u0435\u0442\u043e\u0434\u043e\u0432 API \u043c\u043e\u0436\u043d\u043e \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0435- https://core.telegram.org/methods
\u041f\u0440\u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u043d\u0430\u043f\u0438\u0448\u0438\u0442\u0435 \u0432\u0430\u0448\u0435 \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043c\u0435\u0442\u043e\u0434\u043e\u0432 \u0438 \u0438\u0445 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c.
\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0414\u043b\u044f \u0412\u0430\u0448\u0435\u0433\u043e \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430 \u043c\u044b \u0441\u043e\u0431\u0440\u0430\u043b\u0438 FAQ \u043f\u043e \u0447\u0430\u0441\u0442\u043e \u0437\u0430\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u043c \u0432\u043e\u043f\u0440\u043e\u0441\u0430\u043c. \u041f\u0440\u043e\u0441\u0438\u043c \u0432\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0441 \u043d\u0438\u043c\u0438 \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f.
\u0423\u0440\u043e\u043a 2. \u041f\u043e\u043d\u044f\u0442\u0438\u0435 \u043a\u043b\u0430\u0441\u0441\u0430 \u0438 \u043e\u0431\u044a\u0435\u043a\u0442\u0430
\u0421\u043e\u0437\u0434\u0430\u0442\u044c 5\u00ad-7 \u043a\u043e\u0448\u0435\u043a \u0438 \u043f\u043e\u0432\u044b\u0437\u044b\u0432\u0430\u0442\u044c \u0443 \u043d\u0438\u0445 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u043c\u0435\u0442\u043e\u0434\u044b:
- \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c, \u043a\u0430\u043a\u043e\u0439 \u0443 \u043d\u0438\u0445 \u0432\u0435\u0441
- \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u0438\u0445 \u043f\u043e\u043a\u043e\u0440\u043c\u0438\u0442\u044c \u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c, \u0447\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0441 \u0432\u0435\u0441\u043e\u043c
- \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u043f\u0435\u0440\u0435\u043a\u043e\u0440\u043c\u0438\u0442\u044c \u043a\u043e\u0448\u043a\u0443, \u0447\u0442\u043e\u0431\u044b \u043e\u043d\u0430 \u0432\u0437\u043e\u0440\u0432\u0430\u043b\u0430\u0441\u044c
- \"\u0437\u0430\u043c\u044f\u0443\u043a\u0430\u0442\u044c\" \u043a\u043e\u0448\u043a\u0443 \u0434\u043e \u0441\u043c\u0435\u0440\u0442\u0438
\u0423\u0440\u043e\u043a 3. \u041c\u0435\u0442\u043e\u0434, \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b, return
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0432 \u043a\u043b\u0430\u0441\u0441\u0435 Cat \u043c\u0435\u0442\u043e\u0434, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0442\u044c \u043c\u0430\u0441\u0441\u0443 \u0441\u044a\u0435\u0434\u0435\u043d\u043d\u043e\u0439 \u0435\u0434\u044b
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0432 \u043a\u043b\u0430\u0441\u0441\u0435 Cat \u043c\u0435\u0442\u043e\u0434 \u201c\u0441\u0445\u043e\u0434\u0438\u0442\u044c \u0432 \u0442\u0443\u0430\u043b\u0435\u0442\u201d, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u0443\u043c\u0435\u043d\u044c\u0448\u0430\u0442\u044c \u0432\u0435\u0441 \u043a\u043e\u0448\u043a\u0438 \u0438 \u0447\u0442\u043e-\u00ad\u043d\u0438\u0431\u0443\u0434\u044c \u043f\u0435\u0447\u0430\u0442\u0430\u0442\u044c.
\u0423\u0440\u043e\u043a 4. \u0421\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043c\u0435\u0442\u043e\u0434\u044b \u0438 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0443 \u043a\u043b\u0430\u0441\u0441\u0430 Cat \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e count, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0431\u0443\u0434\u0435\u0442 \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u0442\u044c\u0441\u044f, \u0435\u0441\u043b\u0438 \u043a\u043e\u0448\u043a\u0443 \u0441\u043e\u0437\u0434\u0430\u043b\u0438, \u0438 \u0443\u0431\u044b\u0432\u0430\u0442\u044c, \u0435\u0441\u043b\u0438 \u043a\u043e\u0448\u043a\u0430 \u0432\u0437\u043e\u0440\u0432\u0430\u043b\u0430\u0441\u044c \u0438\u043b\u0438 \u0443\u043c\u0435\u0440\u043b\u0430, \u0438 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043c\u0435\u0442\u043e\u0434 getCount(), \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0442\u044c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043a\u043e\u0448\u0435\u043a.
\u0423\u0440\u043e\u043a 5. \u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u0438 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0432 \u043a\u043b\u0430\u0441\u0441\u0435 Cat \u0435\u0449\u0451 \u043e\u0434\u0438\u043d \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440 \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u043c\u0430\u0441\u0441\u0443 \u043a\u043e\u0448\u043a\u0438 \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0437\u0430\u0434\u0430\u0432\u0430\u0442\u044c \u043f\u0440\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u043a\u043e\u0448\u043a\u0438, \u0438 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0432 \u0433\u043b\u0430\u0432\u043d\u043e\u043c \u043a\u043b\u0430\u0441\u0441\u0435 \u043c\u0435\u0442\u043e\u0434 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043a\u043e\u0448\u043a\u0438, \u043a\u0430\u043a \u043e\u043f\u0438\u0441\u0430\u043d\u043e \u0432 \u0432\u0438\u0434\u0435\u043e\u0443\u0440\u043e\u043a\u0435.
\u0423\u0440\u043e\u043a 6. \u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0443 \u043a\u043e\u0448\u043a\u0438 \u043c\u0435\u0442\u043e\u0434 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0435\u0451 \u201c\u0433\u043b\u0443\u0431\u043e\u043a\u043e\u0439\u201d \u043a\u043e\u043f\u0438\u0438.
\u0423\u0440\u043e\u043a 7. \u0412\u043d\u0435\u0448\u043d\u0438\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u043a\u043b\u0430\u0441\u0441\u043e\u0432
- \u041f\u043e\u0432\u0442\u043e\u0440\u0438\u0442\u044c \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f, \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0432 \u0432\u0438\u0434\u0435\u043e: \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043d\u043e\u0432\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442, \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043a \u043d\u0435\u043c\u0443 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 telegram\u00adapi\u00adbridge\u00adv2.jar, \u0434\u043e\u0431\u0438\u0442\u044c\u0441\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043d\u043e\u043c\u0435\u0440\u0430 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0437\u0430\u0434\u0430\u0451\u0442\u0441\u044f \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u0438.
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0431\u0443\u0434\u0435\u0442 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u043e\u0432\u044b\u0432\u0430\u0442\u044c\u0441\u044f \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 Telegram \u0438 \u043f\u0435\u0447\u0430\u0442\u0430\u0442\u044c \u0438\u043c\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f, \u043f\u043e\u0434 \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u043f\u0440\u043e\u0438\u0437\u043e\u0448\u043b\u0430 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u044f. \u041d\u043e\u043c\u0435\u0440 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430 \u0438 \u043a\u043e\u0434 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f \u0434\u043e\u043b\u0436\u043d\u044b \u0432\u0432\u043e\u0434\u0438\u0442\u044c\u0441\u044f \u0438\u0437 \u043a\u043e\u043d\u0441\u043e\u043b\u0438. \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043f\u0440\u0438\u043b\u043e\u0436\u0438\u0442\u044c \u0432 \u0432\u0438\u0434\u0435 zip\u00ad\u0430\u0440\u0445\u0438\u0432\u0430 \u043f\u0430\u043f\u043a\u0438 \u0441 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u043c.
- \u0412 \u043f\u0440\u043e\u0435\u043a\u0442\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u043a\u0443 UTF\u00ad8: \u0432 \u043c\u0435\u043d\u044e Settings > Editor > File Encodings \u0432 \u043f\u0443\u043d\u043a\u0442\u0430\u0445 \u201cIDE Encoding\u201d \u0438 \u201cProject Encoding\u201d \u0432\u0432\u0435\u0440\u0445\u0443 \u0438 \u0432 \u043f\u0443\u043d\u043a\u0442\u0435 \u201cDefault encoding for properties files\u201d \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u201cUTF\u00ad8\u201d, \u043d\u0430\u0436\u0430\u0442\u044c \u201cOK\u201d.
\u0423\u0440\u043e\u043a 8. \u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 JAR\u00ad\u0444\u0430\u0439\u043b\u043e\u0432
- \u0423\u043f\u0430\u043a\u043e\u0432\u0430\u0442\u044c \u0432 JAR\u00ad\u0444\u0430\u0439\u043b \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u043e\u0435 \u0432 \u043f\u0435\u0440\u0432\u043e\u043c \u043c\u043e\u0434\u0443\u043b\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442 \u043e\u043a\u043d\u043e \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u043c 800*600 \u043f\u043e \u0446\u0435\u043d\u0442\u0440\u0443 \u044d\u043a\u0440\u0430\u043d\u0430. \u041d\u0430\u0443\u0447\u0438\u0442\u044c\u0441\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u044d\u0442\u043e\u0442 JAR\u00ad\u0444\u0430\u0439\u043b \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043a\u043b\u0438\u043a\u043e\u043c \u043c\u044b\u0448\u044c\u044e, \u043d\u043e \u0438 \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443. \u041f\u0440\u0438\u043b\u043e\u0436\u0438\u0442\u044c \u0444\u0430\u0439\u043b \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0433\u043e \u0437\u0430\u0434\u0430\u043d\u0438\u044f.
\u0424\u0430\u0439\u043b\u044b \u043a \u0443\u0440\u043e\u043a\u0430\u043c
\u25cf \u0423\u0440\u043e\u043a 2 \u00ad Cat.zip
\u25cf \u0423\u0440\u043e\u043a 7 \u00ad telegram\u00adapi\u00adbridge\u00adv2.jar
", "sort": 1, "materials": [131, 5478, 5479]}}, {"model": "courses.homework", "pk": 20, "fields": {"token": "2#33", "course": 2, "theme": 22, "description": "\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0414\u043b\u044f \u0412\u0430\u0448\u0435\u0433\u043e \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430 \u043c\u044b \u0441\u043e\u0431\u0440\u0430\u043b\u0438 FAQ \u043f\u043e \u0447\u0430\u0441\u0442\u043e \u0437\u0430\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u043c \u0432\u043e\u043f\u0440\u043e\u0441\u0430\u043c. \u041f\u0440\u043e\u0441\u0438\u043c \u0432\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0441 \u043d\u0438\u043c\u0438 \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f.
\u0423\u0440\u043e\u043a 2. \u041f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u044b \u0438 \u043e\u0431\u044a\u0435\u043a\u0442\u044b
- \u0412 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u0445 RoadCamera \u0438 RoadController \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u0432\u0441\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u044b \u043d\u0430 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u0438\u043c \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u044b. \u041f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c, \u0432\u0441\u0451 \u043b\u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442. \u041f\u0440\u0438\u0441\u043b\u0430\u0442\u044c \u0434\u0432\u0430 zip-\u00ad\u0430\u0440\u0445\u0438\u0432\u0430 \u0441 \u0438\u0437\u043c\u0435\u043d\u0451\u043d\u043d\u044b\u043c\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u043c\u0438.
\u0423\u0440\u043e\u043a 3. \u0422\u0438\u043f\u044b \u0447\u0438\u0441\u0435\u043b \u0438 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435
- \u041f\u043e\u0441\u0447\u0438\u0442\u0430\u0439\u0442\u0435 24.0 * 0.1. \u0427\u0442\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c \u0432 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435? \u0415\u0441\u0442\u044c \u043b\u0438 \u0443 \u0432\u0430\u0441 \u0432\u043e\u043f\u0440\u043e\u0441\u044b?
- \u0420\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u0430\u0442\u044c \u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043e\u0442\u0432\u0435\u0442\u0430 \u043a \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u043c\u0443 \u0437\u0430\u0434\u0430\u043d\u0438\u044e \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0438 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f Double.
\u0423\u0440\u043e\u043a 4. \u041e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0441 \u0447\u0438\u0441\u043b\u0430\u043c\u0438
- \u041f\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044e \u043a \u043a\u043b\u0430\u0441\u0441\u0443 Math \u043d\u0430 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u043c \u0441\u0430\u0439\u0442\u0435 Oracle.
- \u0412\u044b \u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0435 \u0433\u0443\u043c\u0430\u043d\u0438\u0442\u0430\u0440\u043d\u0443\u044e \u043f\u043e\u043c\u043e\u0449\u044c \u0432 \u0432\u0438\u0434\u0435 \u044f\u0449\u0438\u043a\u043e\u0432 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u043e\u0433\u043e \u0440\u0430\u0437\u043c\u0435\u0440\u0430. \u0423 \u0432\u0430\u0441 \u0435\u0441\u0442\u044c \u0433\u0440\u0443\u0437\u043e\u0432\u0438\u043a\u0438 \u0438 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u044b. \u0412 \u043a\u0430\u0436\u0434\u044b\u0439 \u0433\u0440\u0443\u0437\u043e\u0432\u0438\u043a \u0432\u043b\u0435\u0437\u0430\u0435\u0442 \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c 12 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432. \u0412 \u043a\u0430\u0436\u0434\u044b\u0439 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u00ad \u043d\u0435 \u0431\u043e\u043b\u0435\u0435 27 \u044f\u0449\u0438\u043a\u043e\u0432. \u042f\u0449\u0438\u043a\u0438, \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u044b \u0438 \u0433\u0440\u0443\u0437\u043e\u0432\u0438\u043a\u0438 \u043f\u0440\u043e\u043d\u0443\u043c\u0435\u0440\u043e\u0432\u0430\u043d\u044b. \u041d\u0430\u043f\u0438\u0448\u0438\u0442\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0442\u044c \u044f\u0449\u0438\u043a\u0438 \u043f\u043e \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430\u043c \u0438 \u0433\u0440\u0443\u0437\u043e\u0432\u0438\u043a\u0430\u043c \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0438\u0445 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442, \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u0441\u0435\u0433\u043e \u043d\u0443\u0436\u043d\u043e \u0433\u0440\u0443\u0437\u043e\u0432\u0438\u043a\u043e\u0432 \u0438 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432. \u041d\u0430 \u0432\u0445\u043e\u0434 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u043d\u0441\u043e\u043b\u044c \u0434\u043e\u043b\u0436\u043d\u043e \u043f\u043e\u0434\u0430\u0432\u0430\u0442\u044c\u0441\u044f \u0447\u0438\u0441\u043b\u043e \u044f\u0449\u0438\u043a\u043e\u0432. \u041d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0434\u043e\u043b\u0436\u0435\u043d \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:
\u0413\u0440\u0443\u0437\u043e\u0432\u0438\u043a 1:
\u041a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 1:
\u041a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 2
\u042f\u0449\u0438\u043a 1
\u042f\u0449\u0438\u043a 2
\u042f\u0449\u0438\u043a 3
...
\u042f\u0449\u0438\u043a 28
\u042f\u0449\u0438\u043a 29
...
\u0423\u0440\u043e\u043a 5. \u0421\u0442\u0440\u043e\u043a\u0438, \u0441\u0438\u043c\u0432\u043e\u043b\u044b \u0438 \u043f\u043e\u0434\u0441\u0442\u0440\u043e\u043a\u0438
- \u0420\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u0430\u0442\u044c \u0441\u0438\u043c\u0432\u043e\u043b\u044b \u0441 \u043a\u043e\u0434\u0430\u043c\u0438 \u043e\u0442 0 \u0434\u043e 512 \u0438 \u043d\u0430\u0439\u0442\u0438 \u0440\u0443\u0441\u0441\u043a\u0438\u0435 \u0432\u0441\u0435 \u0431\u0443\u043a\u0432\u044b. \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043e\u0442\u0432\u0435\u0442\u0430 \u043a \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u043c\u0443 \u0437\u0430\u0434\u0430\u043d\u0438\u044e \u043a\u043e\u0434\u044b \u0440\u0443\u0441\u0441\u043a\u0438\u0445 \u0431\u0443\u043a\u0432.
- \u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043c\u0435\u0442\u043e\u0434\u043e\u0432 indexOf(), lastIndexOf(), substring() \u0438 trim() \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u0434 \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0435 StringExperiments, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u0447\u0438\u0442\u0430\u0435\u0442 \u0441\u0443\u043c\u043c\u0443 \u0437\u0430\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0412\u0430\u0441\u0438 \u0438 \u041c\u0430\u0448\u0438.
- \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043d\u0430 \u0432\u0445\u043e\u0434\u0435 \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u043d\u0441\u043e\u043b\u044c \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u0444\u0430\u043c\u0438\u043b\u0438\u044e, \u0438\u043c\u044f \u0438 \u043e\u0442\u0447\u0435\u0441\u0442\u0432\u043e \u043e\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u043e\u0439 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u201c\u0418\u0432\u0430\u043d\u043e\u0432 \u0421\u0435\u0440\u0433\u0435\u0439 \u041f\u0435\u0442\u0440\u043e\u0432\u0438\u0447\u201d) \u0438 \u0432\u044b\u0432\u043e\u0434\u0438\u0442 \u0444\u0430\u043c\u0438\u043b\u0438\u044e, \u0438\u043c\u044f \u0438 \u043e\u0442\u0447\u0435\u0441\u0442\u0432\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u0444\u043e\u0440\u043c\u0430\u0442\u0435:
\u0424\u0430\u043c\u0438\u043b\u0438\u044f: \u0418\u0432\u0430\u043d\u043e\u0432
\u0418\u043c\u044f: \u0421\u0435\u0440\u0433\u0435\u0439
\u041e\u0442\u0447\u0435\u0441\u0442\u0432\u043e: \u041f\u0435\u0442\u0440\u043e\u0432\u0438\u0447
\u0423\u0440\u043e\u043a 7. \u0420\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u044b\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f
- \u0412 \u043f\u0440\u043e\u0435\u043a\u0442\u0435 StringExperiments \u0432\u043d\u0435\u0441\u0442\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u0441\u0443\u043c\u043c\u044b \u0437\u0430\u0440\u0430\u0431\u043e\u0442\u043a\u043e\u0432 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0430 \u0438\u0437\u0432\u043b\u0435\u043a\u0430\u043b\u0438\u0441\u044c \u0438\u0437 \u0442\u0435\u043a\u0441\u0442\u0430 \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u044b\u043c \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043c, \u0430 \u0432 \u043a\u043e\u043d\u0446\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u044b\u0432\u0430\u043b\u0430\u0441\u044c \u0438 \u0440\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u044b\u0432\u0430\u043b\u0430\u0441\u044c \u043e\u0431\u0449\u0430\u044f \u0441\u0443\u043c\u043c\u0430 \u0437\u0430\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0432\u0441\u0435\u0445. \u041f\u0440\u0438\u043b\u043e\u0436\u0438\u0442\u044c zip-\u00ad\u0430\u0440\u0445\u0438\u0432 \u0438\u0437\u043c\u0435\u043d\u0451\u043d\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430 StringExperiments.
- \u0412\u043e\u0437\u044c\u043c\u0438\u0442\u0435 \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u0438\u0439 \u0442\u0435\u043a\u0441\u0442 (\u043d\u0435 \u043c\u0435\u043d\u0435\u0435 100 \u0441\u043b\u043e\u0432) \u0438 \u043d\u0430\u043f\u0438\u0448\u0438\u0442\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0437\u0431\u0438\u0432\u0430\u0442\u044c \u0435\u0433\u043e \u043d\u0430 \u0441\u043b\u043e\u0432\u0430 \u0438 \u043f\u0435\u0447\u0430\u0442\u0430\u0442\u044c \u0441\u043b\u043e\u0432\u0430 \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u0438. \u041f\u0440\u0438\u043b\u043e\u0436\u0438\u0442\u044c zip\u00ad-\u0430\u0440\u0445\u0438\u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0430.
- \u0418\u0441\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u0443\u044e \u0432 \u0443\u0440\u043e\u043a\u0435 4 \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u0432\u0432\u043e\u0434\u0438\u043c\u0430\u044f \u0441\u0442\u0440\u043e\u043a\u0430 \u0441 \u0444\u0430\u043c\u0438\u043b\u0438\u0435\u0439, \u0438\u043c\u0435\u043d\u0435\u043c \u0438 \u043e\u0442\u0447\u0435\u0441\u0442\u0432\u043e\u043c \u0440\u0430\u0437\u0431\u0438\u0432\u0430\u043b\u0438\u0441\u044c \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u043e\u0433\u043e \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f. \u041f\u0440\u0438\u043b\u043e\u0436\u0438\u0442\u044c zip\u00ad\u0430\u0440\u0445\u0438\u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0430.
- \u041f\u043e \u0434\u0438\u043f\u043b\u043e\u043c\u0443: \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u0447\u0438\u0441\u0442\u043a\u0443 \u043d\u043e\u043c\u0435\u0440\u0430 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430, \u0432\u0432\u043e\u0434\u0438\u043c\u043e\u0433\u043e \u0438\u0437 \u043a\u043e\u043d\u0441\u043e\u043b\u0438, \u043e\u0442 \u043b\u0438\u0448\u043d\u0438\u0445 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432, \u0447\u0442\u043e\u0431\u044b \u0435\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0432\u0432\u043e\u0434\u0438\u0442\u044c \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435
79091234567, \u043d\u043e \u0438 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043b\u0438\u0448\u043d\u0438\u0445 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440:
+7 909 123-\u00ad45-\u00ad67
+7 (909) 1234567
7\u00ad-909-\u00ad123-\u00ad45-\u00ad67
\u041f\u0440\u0438\u043b\u043e\u0436\u0438\u0442\u044c zip-\u00ad\u0430\u0440\u0445\u0438\u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0430.
\u0423\u0440\u043e\u043a 8. \u041a\u0430\u043b\u0435\u043d\u0434\u0430\u0440\u044c \u0438 \u043c\u0435\u0442\u043a\u0430 \u0432\u0440\u0435\u043c\u0435\u043d\u0438
- \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u0412\u0430\u0448 \u0432\u043e\u0437\u0440\u0430\u0441\u0442, \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0439 \u0435\u043c\u0443 \u0434\u0435\u043d\u044c \u0440\u043e\u0436\u0434\u0435\u043d\u0438\u044f \u0438 \u0434\u0435\u043d\u044c \u043d\u0435\u0434\u0435\u043b\u0438. \u0434\u043e \u0442\u0435\u043a\u0443\u0449\u0435\u0433\u043e \u043c\u043e\u043c\u0435\u043d\u0442\u0430
\u0432\u0440\u0435\u043c\u0435\u043d\u0438.
\u0424\u043e\u0440\u043c\u0430\u0442:
0 \u00ad- 13.02.1989 -\u00ad Mon
1 \u00ad- 13.02.1990 \u00ad- Tue
...
\u041f\u0440\u0438\u043b\u043e\u0436\u0438\u0442\u044c zip-\u00ad\u0430\u0440\u0445\u0438\u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0438\u043b\u0438 \u0444\u0430\u0439\u043b *.java \u0441 \u043a\u043e\u0434\u043e\u043c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b.
\u0424\u0430\u0439\u043b\u044b \u043a \u0443\u0440\u043e\u043a\u0430\u043c
\u25cf \u0423\u0440\u043e\u043a 5 \u00ad StringExperiments.zip
", "sort": 1, "materials": [132, 7340]}}, {"model": "courses.homework", "pk": 21, "fields": {"token": "2#40", "course": 2, "theme": 23, "description": "\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0414\u043b\u044f \u0412\u0430\u0448\u0435\u0433\u043e \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430 \u043c\u044b \u0441\u043e\u0431\u0440\u0430\u043b\u0438 FAQ \u043f\u043e \u0447\u0430\u0441\u0442\u043e \u0437\u0430\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u043c \u0432\u043e\u043f\u0440\u043e\u0441\u0430\u043c. \u041f\u0440\u043e\u0441\u0438\u043c \u0432\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0441 \u043d\u0438\u043c\u0438 \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f.
\u0423\u0440\u043e\u043a 2. \u041c\u0430\u0441\u0441\u0438\u0432\u044b
- \u041f\u043e\u0432\u0442\u043e\u0440\u0438\u0442\u044c \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043c\u0430\u0441\u0441\u0438\u0432\u0430 \u0438 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0446\u0432\u0435\u0442\u0430\u043c\u0438 \u0440\u0430\u0434\u0443\u0433\u0438, \u043a\u0430\u043a \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u043e \u0432 \u0432\u0438\u0434\u0435\u043e, \u0430 \u0437\u0430\u0442\u0435\u043c \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u0434, \u043f\u0435\u0440\u0435\u0432\u043e\u0440\u0430\u0447\u0438\u0432\u0430\u044e\u0449\u0438\u0439 \u044d\u0442\u043e\u0442 \u043c\u0430\u0441\u0441\u0438\u0432.
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0438 \u0440\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u0430\u0442\u044c \u043c\u0430\u0441\u0441\u0438\u0432 \u0441\u0435\u0440\u0438\u0439 \u043f\u0430\u0441\u043f\u043e\u0440\u0442\u043e\u0432 \u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0438\u043d\u0430 \u0420\u0424.
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043c\u0430\u0441\u0441\u0438\u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 \u043a\u043b\u0435\u0442\u043e\u043a \u043d\u0430 \u0448\u0430\u0445\u043c\u0430\u0442\u043d\u043e\u0439 \u0434\u043e\u0441\u043a\u0435 \u0438 \u0440\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u0430\u0442\u044c \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u0438 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u044f \u043a\u043b\u0435\u0442\u043e\u043a \u0431\u044b\u043b\u0438 \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u043d\u044b \u0432 \u0444\u043e\u0440\u043c\u0435 \u0448\u0430\u0445\u043c\u0430\u0442\u043d\u043e\u0439 \u0434\u043e\u0441\u043a\u0438.
\u0423\u0440\u043e\u043a 3. \u0421\u043f\u0438\u0441\u043a\u0438. \u041e\u0447\u0435\u0440\u0435\u0434\u044c \u0438 \u0441\u0442\u044d\u043a
- \u0421\u0434\u0435\u043b\u0430\u0442\u044c \u0434\u0435\u0442\u0435\u043a\u0442\u043e\u0440 \u0431\u043b\u0430\u0442\u043d\u044b\u0445 \u043d\u043e\u043c\u0435\u0440\u043e\u0432 \u0434\u043b\u044f \u0413\u0418\u0411\u0414\u0414 (\u0432\u0441\u0435 \u0440\u0435\u0433\u0438\u043e\u043d\u044b): \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u043f\u0438\u0441\u043e\u043a \u043d\u043e\u043c\u0435\u0440\u043e\u0432 \u0438 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043c\u0435\u0442\u043e\u0434, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u044c \u043d\u0430\u043b\u0438\u0447\u0438\u0435 \u043d\u043e\u043c\u0435\u0440\u0430 \u0432 \u0441\u043f\u0438\u0441\u043a\u0435. \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u043d\u0441\u043e\u043b\u044c: \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0442\u044c \u043d\u043e\u043c\u0435\u0440, \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u044c, \u0432\u044b\u0434\u0430\u0432\u0430\u0442\u044c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0438 \u0441\u043d\u043e\u0432\u0430 \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0442\u044c \u043d\u043e\u043c\u0435\u0440. \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0434\u043e\u043b\u0436\u0435\u043d \u0432\u044b\u0434\u0430\u0432\u0430\u0442\u044c\u0441\u044f \u0432 \u0442\u0430\u043a\u043e\u043c \u0444\u043e\u0440\u043c\u0430\u0442\u0435: false (26 ms).
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440 \u0441\u0442\u043e\u044f\u043d\u043a\u0438 \u0441\u0430\u043c\u043e\u043b\u0451\u0442\u043e\u0432 \u00ad \u0441\u0442\u044d\u043a. \u0420\u0430\u0437\u043c\u0435\u0440 \u0441\u0442\u043e\u044f\u043d\u043a\u0438 \u00ad 5 \u043c\u0435\u0441\u0442. \u0420\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c: \u0432\u0432\u043e\u0434\u0438\u043c \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u044c \u0431\u043e\u0440\u0442\u043e\u0432\u044b\u0435 \u043d\u043e\u043c\u0435\u0440\u0430 \u0441\u0430\u043c\u043e\u043b\u0451\u0442\u043e\u0432, \u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0438\u0445 \u0437\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u0435\u0442 (\u201c\u0441\u0442\u0430\u0432\u0438\u0442\u201d \u0438\u0445 \u043d\u0430 \u0441\u0442\u043e\u044f\u043d\u043a\u0443). \u041f\u0440\u0438 \u0432\u0432\u043e\u0434\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u201cexitAll\u201d \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u0440\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u0430\u0442\u044c \u043d\u043e\u043c\u0435\u0440\u0430 \u0441\u0430\u043c\u043e\u043b\u0451\u0442\u043e\u0432 \u0432 \u043f\u043e\u0440\u044f\u0434\u043a\u0435 \u043f\u043e\u043a\u0438\u0434\u0430\u043d\u0438\u044f \u0441\u0442\u043e\u044f\u043d\u043a\u0438 (\u0438 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0438\u0445 \u0432\u0441\u0435 \u0438\u0437 \u043f\u0430\u043c\u044f\u0442\u0438). \u041f\u0440\u0438 \u0432\u0432\u043e\u0434\u0435 \u201cexitLast\u201d \u00ad \u0434\u043e\u043b\u0436\u043d\u0430 \u0440\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u0430\u0442\u044c \u0438 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0438\u0437 \u043f\u0430\u043c\u044f\u0442\u0438 \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u043e\u0442 \u0441\u0430\u043c\u043e\u043b\u0451\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u0435\u0439\u0447\u0430\u0441 \u0432\u044b\u0435\u0437\u0436\u0430\u0435\u0442. \u0415\u0441\u043b\u0438 \u0441\u0442\u043e\u044f\u043d\u043a\u0430 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0430 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e, \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c\u0443 \u0441\u0430\u043c\u043e\u043b\u0451\u0442\u0443 \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u043e\u0442\u043a\u0430\u0437\u0430\u043d\u043e \u0432\u043e \u0432\u044a\u0435\u0437\u0434\u0435.
- \u041f\u043e \u0434\u0438\u043f\u043b\u043e\u043c\u0443: \u043f\u043e\u0441\u043b\u0435 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u0441\u043f\u0438\u0441\u043e\u043a \u0432\u0441\u0435\u0445 \u0441\u0432\u043e\u0438\u0445 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043e\u0432 \u0441 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430\u043c\u0438.
\u0423\u0440\u043e\u043a 4. \u041d\u0430\u0431\u043e\u0440\u044b \u0443\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432
- \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u0432 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u043e\u0436\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0442\u044c \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u043d\u0441\u043e\u043b\u044c \u0438 \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u043f\u0435\u0440\u0435\u0447\u0435\u043d\u044c \u043b\u0435\u043a\u0430\u0440\u0441\u0442\u0432, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0440\u0430\u0441\u043f\u0435\u0447\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u0432\u0435\u0441\u044c \u0438\u0445 \u0441\u043f\u0438\u0441\u043e\u043a \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 LIST.
\u0423\u0440\u043e\u043a 5. \u041a\u0430\u0440\u0442\u044b \u0434\u0430\u043d\u043d\u044b\u0445. \u041a\u043b\u044e\u0447\u0438 \u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f
- \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0434\u0430\u0432\u0430\u0442\u044c \u0438\u043c\u044f \u0432\u043b\u0430\u0434\u0435\u043b\u044c\u0446\u0430 \u0430\u0432\u0442\u043e\u043c\u043e\u0431\u0438\u043b\u044f \u043f\u043e \u0435\u0433\u043e \u043d\u043e\u043c\u0435\u0440\u0443. \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u0431\u044b\u0442\u044c \u0443\u043c\u043d\u043e\u0439: \u0435\u0441\u043b\u0438 \u0443 \u043d\u0435\u0451 \u0432 \u043f\u0430\u043c\u044f\u0442\u0438 \u043d\u043e\u043c\u0435\u0440\u0430 \u043d\u0435\u0442, \u043e\u043d\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u043f\u043e\u043f\u0440\u043e\u0441\u0438\u0442\u044c \u0432\u0432\u0435\u0441\u0442\u0438 \u0435\u0433\u043e \u0438\u043c\u044f \u0438 \u0437\u0430\u043f\u043e\u043c\u043d\u0438\u0442\u044c.
- \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0443\u043c\u043d\u044b\u0439 \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043d\u043e\u0439 \u043a\u043d\u0438\u0433\u0438. \u0415\u0441\u043b\u0438 \u0432 \u043d\u0435\u0451 \u0432\u0432\u0435\u0441\u0442\u0438 \u043d\u043e\u0432\u043e\u0435 \u0438\u043c\u044f, \u043e\u043d\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0438\u0442\u044c \u043d\u043e\u043c\u0435\u0440 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430. \u0415\u0441\u043b\u0438 \u0432 \u043d\u0435\u0451 \u0432\u0432\u0435\u0441\u0442\u0438 \u043d\u043e\u0432\u044b\u0439 \u043d\u043e\u043c\u0435\u0440 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430, \u0434\u043e\u043b\u0436\u043d\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0438\u0442\u044c \u0438\u043c\u044f. \u0415\u0441\u043b\u0438 \u0432\u0432\u0435\u0434\u0451\u043d\u043d\u043e\u0435 \u0438\u043c\u044f \u0438\u043b\u0438 \u043d\u043e\u043c\u0435\u0440 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430 \u043d\u0430\u0439\u0434\u0435\u043d\u044b, \u0434\u043e\u043b\u0436\u043d\u0430 \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e: \u043d\u043e\u043c\u0435\u0440 \u0438\u043b\u0438 \u0438\u043c\u044f, \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e. \u041a\u043e\u043c\u0430\u043d\u0434\u0430 LIST \u0434\u043e\u043b\u0436\u043d\u0430 \u0432\u044b\u0432\u043e\u0434\u0438\u0442\u044c \u0432\u0441\u0435\u0445 \u0430\u0431\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u0432 \u0430\u043b\u0444\u0430\u0432\u0438\u0442\u043d\u043e\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u0435 \u0441 \u043d\u043e\u043c\u0435\u0440\u0430\u043c\u0438 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043e\u0432.
\u0423\u0440\u043e\u043a 6. \u041f\u043e\u0438\u0441\u043a \u0438 \u0441\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043a\u0430
- \u0412 \u0437\u0430\u0434\u0430\u0447\u0435 \u0441 \u0434\u0435\u0442\u0435\u043a\u0442\u043e\u0440\u043e\u043c \u0431\u043b\u0430\u0442\u043d\u044b\u0445 \u043d\u043e\u043c\u0435\u0440\u043e\u0432 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0439 \u043f\u043e\u0438\u0441\u043a, \u043f\u043e\u0438\u0441\u043a \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e HashSet \u0438 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e TreeSet. \u0418\u0437\u043c\u0435\u0440\u0438\u0442\u044c \u0438 \u0441\u0440\u0430\u0432\u043d\u0438\u0442\u044c \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c 4\u00ad\u0445 \u0432\u0438\u0434\u043e\u0432 \u043f\u043e\u0438\u0441\u043a\u0430 \u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0433\u043e \u0437\u0430\u0434\u0430\u043d\u0438\u044f.
", "sort": 1, "materials": [7341]}}, {"model": "courses.homework", "pk": 22, "fields": {"token": "2#47", "course": 2, "theme": 24, "description": "\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0414\u043b\u044f \u0412\u0430\u0448\u0435\u0433\u043e \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430 \u043c\u044b \u0441\u043e\u0431\u0440\u0430\u043b\u0438 FAQ \u043f\u043e \u0447\u0430\u0441\u0442\u043e \u0437\u0430\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u043c \u0432\u043e\u043f\u0440\u043e\u0441\u0430\u043c. \u041f\u0440\u043e\u0441\u0438\u043c \u0432\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0441 \u043d\u0438\u043c\u0438 \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f.
\u0423\u0440\u043e\u043a 2. \u041d\u0430\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0435 \u043a\u043b\u0430\u0441\u0441\u043e\u0432
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0432\u043e\u0440\u043e\u0431\u044c\u044f, \u0441\u0442\u0440\u0430\u0443\u0441\u0430, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0434\u0432\u0430 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0445 \u043a\u043b\u0430\u0441\u0441\u0430 \u0434\u043b\u044f \u043b\u0435\u0442\u0430\u044e\u0449\u0438\u0445 \u0438 \u043d\u0435\u043b\u0435\u0442\u0430\u044e\u0449\u0438\u0445 \u043f\u0442\u0438\u0446, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u043e\u043b\u0436\u043d\u044b \u0440\u0430\u0441\u0448\u0438\u0440\u044f\u0442\u044c \u043a\u043b\u0430\u0441\u0441 Bird. \u041e\u0442\u043d\u0430\u0441\u043b\u0435\u0434\u0443\u0439\u0442\u0435 \u043e\u0442 \u044d\u0442\u0438\u0445 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0445 \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u043a\u043b\u0430\u0441\u0441\u044b \u0432\u0441\u0435\u0445 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0445 \u043f\u0442\u0438\u0446, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0435\u0441\u0442\u044c \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0435.
\u0423\u0440\u043e\u043a 3. \u0414\u043e\u0441\u0442\u0443\u043f \u043a \u043c\u0435\u0442\u043e\u0434\u0430\u043c \u0438 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u043c
- \u041e\u0442\u0432\u0435\u0442\u044c\u0442\u0435, \u043f\u043e\u043d\u044f\u0442\u043d\u043e \u043b\u0438 \u0432\u0430\u043c, \u043f\u043e\u0447\u0435\u043c\u0443 \u0442\u0435 \u0438\u043b\u0438 \u0438\u043d\u044b\u0435 \u043c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u044b \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u044b \u0432 \u043a\u043b\u0430\u0441\u0441\u0430\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432 RoadCamera \u0438 RoadController. \u0417\u0430\u0434\u0430\u0439\u0442\u0435 \u0432\u043e\u043f\u0440\u043e\u0441\u044b, \u0435\u0441\u043b\u0438 \u0447\u0442\u043e-\u00ad\u043b\u0438\u0431\u043e \u0431\u0443\u0434\u0435\u0442 \u043d\u0435\u043f\u043e\u043d\u044f\u0442\u043d\u043e.
\u0423\u0440\u043e\u043a 4. \u0410\u0431\u0441\u0442\u0440\u0430\u043a\u0442\u043d\u044b\u0435 \u043a\u043b\u0430\u0441\u0441\u044b
- \u0421\u0434\u0435\u043b\u0430\u0442\u044c \u0430\u0431\u0441\u0442\u0440\u0430\u043a\u0442\u043d\u044b\u043c\u0438 \u043a\u043b\u0430\u0441\u0441\u044b \u043b\u0435\u0442\u0430\u044e\u0449\u0438\u0445 \u0438 \u043d\u0435\u043b\u0435\u0442\u0430\u044e\u0449\u0438\u0445 \u043f\u0442\u0438\u0446.
\u0423\u0440\u043e\u043a 5. \u0418\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u044b \u0438 \u043f\u043e\u043b\u0438\u043c\u043e\u0440\u0444\u0438\u0437\u043c
- \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044e \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0433\u043e \u0432\u0435\u0441\u0430 \u0443 \u0436\u0438\u0432\u043e\u0442\u043d\u043e\u0433\u043e \u0432 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440 \u0438 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043c\u0435\u0442\u043e\u0434 voice(), \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442 \u0433\u043e\u043b\u043e\u0441 \u0436\u0438\u0432\u043e\u0442\u043d\u043e\u0433\u043e (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u201c\u043a\u0440\u044f\u00ad\u043a\u0440\u044f\u201d) \u0438 \u0435\u0433\u043e \u0432\u0435\u0441.
- \u0421\u0434\u0435\u043b\u0430\u0442\u044c \u0432\u0441\u0435\u0445 \u0436\u0438\u0432\u043e\u0442\u043d\u044b\u0445 \u0441\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u0435\u043c\u044b\u043c\u0438 \u043f\u043e \u0432\u0435\u0441\u0443.
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043c\u043d\u043e\u0433\u043e \u0436\u0438\u0432\u043e\u0442\u043d\u044b\u0445, \u043e\u0442\u0441\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u043e \u0432\u0435\u0441\u0443 \u0438 \u0432\u044b\u0437\u0432\u0430\u0442\u044c \u0443 \u0432\u0441\u0435\u0445 \u043c\u0435\u0442\u043e\u0434 voice().
\u0423\u0440\u043e\u043a 6. \u041f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439
- \u041f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0438\u0442\u044c \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u0443\u0434\u0443\u0442 \u0432 \u0432\u0430\u0448\u0435\u043c \u0434\u0438\u043f\u043b\u043e\u043c\u043d\u043e\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438, \u0441\u043e \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430\u043c\u0438 \u0438 \u043c\u0435\u0442\u043e\u0434\u0430\u043c\u0438. \u041f\u0440\u0438\u043c\u0435\u0440\u044b: Contact, Message...
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043a\u043b\u0430\u0441\u0441\u044b \u201c\u0421\u0442\u0443\u043b\u201d, \u201c\u0441\u0442\u043e\u043b\u201d \u0438 \u201c\u043c\u0435\u0431\u0435\u043b\u044c\u201d, \u0437\u0430\u0434\u0430\u0439\u0442\u0435 \u0438\u043c \u043c\u0435\u0442\u043e\u0434\u044b \u0438 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043e\u0442\u043d\u0430\u0441\u043b\u0435\u0434\u0443\u0439\u0442\u0435 \u044d\u0442\u0438 \u043a\u043b\u0430\u0441\u0441\u044b \u0434\u0440\u0443\u0433 \u043e\u0442 \u0434\u0440\u0443\u0433\u0430.
- \u0417\u0430\u0434\u0430\u043d\u0438\u0435 \u0441 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u043c\u0438 LegsHaving.zip \u0438 BirdsAndNest \u043e\u0442\u043c\u0435\u043d\u0435\u043d\u043e.
\u0424\u0430\u0439\u043b\u044b \u043a \u0443\u0440\u043e\u043a\u0430\u043c
\u0423\u0440\u043e\u043a 6 \u00ad Screens.zip
", "sort": 1, "materials": [133, 7342]}}, {"model": "courses.homework", "pk": 23, "fields": {"token": "3#4", "course": 3, "theme": 43, "description": "\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0432 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e\u0439 \u0444\u043e\u0440\u043c\u0435 \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f Selfiegram \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043d\u043e\u043f\u043e\u043a, \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u043e\u0432 (Segue) \u0438 ViewControllers, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0442\u0430\u043a:
\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c Interface Builder
\u041f\u0435\u0440\u0435\u0442\u044f\u043d\u0443\u0442\u044c \u0432 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e\u0435 \u043c\u0435\u0441\u0442\u043e ViewController
\u041f\u0435\u0440\u0435\u0442\u044f\u043d\u0443\u0442 UIButton \u043d\u0430 View \u0433\u043b\u0430\u0432\u043d\u043e\u0433\u043e ViewController
", "sort": 1, "materials": [134]}}, {"model": "courses.homework", "pk": 24, "fields": {"token": "3#7", "course": 3, "theme": 44, "description": "- \u0421\u0434\u0435\u043b\u0430\u0442\u044c \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u044b \u0434\u043b\u044f \u044d\u043a\u0440\u0430\u043d\u043e\u0432 \u041b\u0435\u043d\u0442\u044b (\u0435\u0441\u043b\u0438 \u043d\u0435 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u043b\u0438 \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u0443\u0440\u043e\u043a\u0430) \u0438 \u041a\u0430\u043c\u0435\u0440\u044b
- \u041f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0441\u0432\u044f\u0437\u043a\u0443 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435\u043c \u043a\u043d\u043e\u043f\u043a\u0438 \u0438 IBAction
", "sort": 2, "materials": []}}, {"model": "courses.homework", "pk": 25, "fields": {"token": "3#11", "course": 3, "theme": 45, "description": "- \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c 3 UILabel \u043d\u0430 \u044d\u043a\u0440\u0430\u043d\u0435 \u043f\u0440\u043e\u0444\u0438\u043b\u044f
- \u0412\u044b\u0440\u043e\u0432\u043d\u044f\u0442\u044c \u0438\u0445 \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u043e \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Constraints
- \u0414\u043b\u044f \u043f\u0435\u0440\u0432\u043e\u0433\u043e Label: \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043c\u0430\u0441\u0441\u0438\u0432(Array) \u0447\u0438\u0441\u0435\u043b(Int) \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0446\u0438\u043a\u043b\u0430 \u0438 \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u0441\u0443\u043c\u043c\u0443
- \u0414\u043b\u044f \u0432\u0442\u043e\u0440\u043e\u0433\u043e Label: \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c c\u043b\u043e\u0432\u0430\u0440\u044c(Dictionary) \u0441 \u043a\u043b\u044e\u0447\u043e\u043c Int \u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u043c \u0442\u0438\u043f\u0430 String, \u0438 \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u043e\u0431\u0449\u0435\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0431\u0443\u043a\u0432 \u0432\u043e \u0432\u0441\u0435\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0445
- \u0414\u043b\u044f \u0442\u0440\u0435\u0442\u044c\u0435\u0433\u043e Label: \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c Set \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0432 \u043d\u0435\u043c
", "sort": 1, "materials": []}}, {"model": "courses.homework", "pk": 26, "fields": {"token": "4#18", "course": 4, "theme": 36, "description": "\u0423 \u0432\u0430\u0441 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0441\u044f \u043e\u0434\u0438\u043d \u0444\u0430\u0439\u043b \u0441 12\u044e \u043b\u0438\u0441\u0442\u0430\u043c\u0438, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u044b \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u044f.
\u041e\u0442\u0447\u0435\u0442\u044b \u043f\u043e \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u043c \u0437\u0430\u0434\u0430\u043d\u0438\u044f\u043c \u043f\u0440\u0438\u043a\u0440\u0435\u043f\u043b\u044f\u0439\u0442\u0435, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0432\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c \u0432 \u0444\u043e\u0440\u043c\u0435 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 \u0441 \u0437\u0430\u0434\u0430\u043d\u0438\u0435\u043c.
\u0418 \u0432\u0441\u043a\u043e\u0440\u0435 \u0432\u0430\u043c \u043f\u0440\u0438\u0434\u0435\u0442 \u043e\u0442\u0432\u0435\u0442 \u0432 \u0432\u0438\u0434\u0435 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0435\u0432.
\u041d\u0430 \u043f\u043e\u0447\u0442\u0443 \u0434\u043e\u043c\u0430\u0448\u043d\u044e\u044e \u0440\u0430\u0431\u043e\u0442\u0443 \u043d\u0435 \u043f\u0440\u0438\u0441\u044b\u043b\u0430\u0439\u0442\u0435, \u0438\u043d\u0430\u0447\u0435 \u0432\u044b \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435.
\u041f\u0440\u043e\u0441\u044c\u0431\u0430 \u043e\u0442\u043d\u0435\u0441\u0442\u0438\u0441\u044c \u043a \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044e \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e.
\u041d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u0435\u043c, \u0447\u0442\u043e \u043a \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c\u0443 \u0437\u0430\u043d\u044f\u0442\u0438\u044e \u0434\u043e\u043f\u0443\u0441\u043a\u0430\u044e\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435, \u043a\u0442\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442 \u0442\u0435\u043a\u0443\u0449\u0435\u0435 \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435.
\u041f\u043e \u043b\u044e\u0431\u044b\u043c \u0432\u043e\u043f\u0440\u043e\u0441\u0430\u043c \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u043a\u0443\u0440\u0441\u0430 \u043f\u0438\u0448\u0438\u0442\u0435 \u043d\u0430 \u043f\u043e\u0447\u0442\u0443 excel@bedev.ru
", "sort": 1, "materials": [258]}}, {"model": "courses.homework", "pk": 27, "fields": {"token": "4#21", "course": 4, "theme": 37, "description": "\u0423 \u0432\u0430\u0441 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0441\u044f \u043e\u0434\u0438\u043d \u0444\u0430\u0439\u043b \u0441 4\u043c\u044f \u043b\u0438\u0441\u0442\u0430\u043c\u0438, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u044b \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u044f.
\u041e\u0442\u0447\u0435\u0442\u044b \u043f\u043e \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u043c \u0437\u0430\u0434\u0430\u043d\u0438\u044f\u043c \u043f\u0440\u0438\u043a\u0440\u0435\u043f\u043b\u044f\u0439\u0442\u0435, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0432\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c \u0432 \u0444\u043e\u0440\u043c\u0435 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 \u0441 \u0437\u0430\u0434\u0430\u043d\u0438\u0435\u043c.
\u0418 \u0432\u0441\u043a\u043e\u0440\u0435 \u0432\u0430\u043c \u043f\u0440\u0438\u0434\u0435\u0442 \u043e\u0442\u0432\u0435\u0442 \u0432 \u0432\u0438\u0434\u0435 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0435\u0432.
\u041d\u0430 \u043f\u043e\u0447\u0442\u0443 \u0434\u043e\u043c\u0430\u0448\u043d\u044e\u044e \u0440\u0430\u0431\u043e\u0442\u0443 \u043d\u0435 \u043f\u0440\u0438\u0441\u044b\u043b\u0430\u0439\u0442\u0435, \u0438\u043d\u0430\u0447\u0435 \u0432\u044b \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435.
\u041f\u0440\u043e\u0441\u044c\u0431\u0430 \u043e\u0442\u043d\u0435\u0441\u0442\u0438\u0441\u044c \u043a \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044e \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e.
\u041d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u0435\u043c, \u0447\u0442\u043e \u043a \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c\u0443 \u0437\u0430\u043d\u044f\u0442\u0438\u044e \u0434\u043e\u043f\u0443\u0441\u043a\u0430\u044e\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435, \u043a\u0442\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442 \u0442\u0435\u043a\u0443\u0449\u0435\u0435 \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435.
\u041f\u043e \u043b\u044e\u0431\u044b\u043c \u0432\u043e\u043f\u0440\u043e\u0441\u0430\u043c \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u043a\u0443\u0440\u0441\u0430 \u043f\u0438\u0448\u0438\u0442\u0435 \u043d\u0430 \u043f\u043e\u0447\u0442\u0443 excel@bedev.ru
", "sort": 1, "materials": [259]}}, {"model": "courses.homework", "pk": 28, "fields": {"token": "3#15", "course": 3, "theme": 46, "description": "\u0414\u043e\u043c\u0430\u0448\u043d\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435 - \u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0441 TabBar
\u0412\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430:
\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043f\u0440\u0438\u043b\u0430\u0433\u0430\u0435\u043c\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u0434\u043e\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0442\u0430\u0431\u0431\u0430\u0440 - \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0434\u0438\u0437\u0430\u0439\u043d \u0434\u043b\u044f \u0442\u0430\u0431\u0430 \u041b\u0435\u043d\u0442\u044b \u0438 \u041a\u0430\u043c\u0435\u0440\u044b:
- \u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0438\u043a\u043e\u043d\u043a\u0438 \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 pdf
- C\u0434\u0435\u043b\u0430\u0442\u044c \u0438\u0445 \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u0430\u0441\u0441\u0435\u0442\u0430\u043c\u0438
- \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u0434 \u0432\u043e ViewController \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u044b\u0439 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u043e\u043c\u0443 \u0432 \u0443\u0440\u043e\u043a\u0435
- \u0421\u0434\u0435\u043b\u0430\u0442\u044c \u0440\u0435\u0444\u0430\u043a\u0442\u043e\u0440\u0438\u043d\u0433 - \u0432\u044b\u043d\u0435\u0441\u0442\u0438 \u043b\u043e\u0433\u0438\u043a\u0443 \u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u0438
", "sort": 1, "materials": [521, 522, 523]}}, {"model": "courses.homework", "pk": 29, "fields": {"token": "3#19", "course": 3, "theme": 47, "description": "\u0414\u043e\u043c\u0430\u0448\u043d\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435 - \u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u044d\u043a\u0440\u0430\u043d\u0430 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0444\u043e\u0442\u043e
I \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0434\u0438\u0437\u0430\u0439\u043d \u043f\u043e\u0441\u0442\u0430 \u0444\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438b
II \u0414\u043e\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 \u043f\u043e\u0441\u0442\u0430
III \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043a\u043d\u043e\u043f\u043a\u0443 \u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u043b\u0430\u0439\u043a\u0430, \u0437\u0430\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c
IV \u0421\u0434\u0435\u043b\u0430\u0442\u044c \u043e\u0431\u044b\u0447\u043d\u044b\u0435 \u043b\u0430\u0439\u043a \u0438 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c
V \u0421\u0434\u0435\u043b\u0430\u0442\u044c \u0438\u043d\u0434\u0438\u043a\u0430\u0442\u043e\u0440 \u043e\u0431\u0449\u0435\u0433\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u043b\u0430\u0439\u043a\u043e\u0432
", "sort": 1, "materials": [524]}}, {"model": "courses.homework", "pk": 30, "fields": {"token": "3#23", "course": 3, "theme": 48, "description": "\u0414\u043e\u043c\u0430\u0448\u043d\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435 - \u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0444\u043e\u0442\u043e\u043b\u0435\u043d\u0442\u044b
\u0414\u043e\u043c\u0430\u0448\u043d\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435 - \u041a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0438
\u0414\u043e\u043c\u0430\u0448\u043d\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435 - \u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u041e\u041e\u041f \u0438 \u041a\u0430\u043c\u0435\u0440\u0430
a. \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u0438\u043d\u0433\u043b\u0442\u043e\u043d \u0432 DataManager
b. \u0421\u0434\u0435\u043b\u0430\u0442\u044c \u0431\u0430\u0437\u043e\u0432\u044b\u0439 \u043a\u043b\u0430\u0441\u0441 DataManager
c. \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0434\u0438\u0437\u0430\u0439\u043d \u0434\u043b\u044f \u044d\u043a\u0440\u0430\u043d\u0430 \u043a\u0430\u043c\u0435\u0440\u044b
", "sort": 1, "materials": [525]}}, {"model": "courses.homework", "pk": 33, "fields": {"token": "5#7", "course": 5, "theme": 60, "description": "\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0423\u0440\u043e\u043a 1
- \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0432 \u0422\u0432\u0438\u0442\u0442\u0435\u0440\u0435, \u0438\u0437\u0443\u0447\u0438\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438, \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435
\u0423\u0440\u043e\u043a 3
- \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c MS Visual Studio Community 2015
\u0423\u0440\u043e\u043a 4
- \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u043a\u043e\u0434 \u043f\u0440\u0438\u043c\u0435\u0440\u0430 - \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0442\u044c \u043b\u0438\u043c\u0438\u0442 \u0438 \u0441\u043d\u0438\u0437\u0438\u0442\u044c \u043a\u043e\u043c\u0438\u0441\u0441\u0438\u044e
- \u043f\u0440\u0438\u043c\u0435\u0440 \u0432 \u0430\u0440\u0445\u0438\u0432\u0435 PaymentConsole.zip
\u0423\u0440\u043e\u043a 6
- \u043f\u043e\u043c\u0435\u043d\u044f\u0442\u044c \u0444\u043e\u043d
- \u043f\u0440\u0438\u043c\u0435\u0440 \u0432 \u0430\u0440\u0445\u0438\u0432\u0435 WpfApplication1
", "sort": 1, "materials": [3410, 3512]}}, {"model": "courses.homework", "pk": 34, "fields": {"token": "3#35", "course": 3, "theme": 51, "description": "a. \u0421\u0434\u0435\u043b\u0430\u0442\u044c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u043c\u043e\u0434\u0435\u043b\u0438 \u0444\u043e\u0442\u043e-\u043f\u043e\u0441\u0442\u0430 \u043f\u043e \u043d\u0430\u0436\u0430\u0442\u0438\u044e \u043b\u0430\u0439\u043a\u0430
b. \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432 \u043c\u043e\u0434\u0435\u043b\u044c API \u043b\u0430\u0439\u043a\u0430/\u0440\u0430\u0437\u043b\u0430\u0439\u043a\u0430 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0437\u0430\u043c\u044b\u043a\u0430\u043d\u0438\u0439
c. \u0421\u0434\u0435\u043b\u0430\u0442\u044c \u0440\u0435\u0444\u0430\u043a\u0442\u043e\u0440\u0438\u043d\u0433, \u0435\u0441\u043b\u0438 \u043a\u043e\u0434 \u0433\u0434\u0435-\u0442\u043e \u043d\u0435 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0435 MVC
", "sort": 1, "materials": []}}, {"model": "courses.homework", "pk": 35, "fields": {"token": "3#40", "course": 3, "theme": 52, "description": "\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u043f\u0430\u0440\u0441\u0438\u043d\u0433
\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0423\u0440\u043e\u043a 2
- \u043f\u0440\u043e\u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c, \u043a\u0430\u043a\u0438\u0435 \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u044b \u0435\u0441\u0442\u044c \u0443 \u043f\u043e\u0441\u0442\u0430 \u0432 \u0422\u0432\u0438\u0442\u0442\u0435\u0440\u0435, \u0438 \u0441\u043e\u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043a\u0430\u0436\u0434\u043e\u043c\u0443 \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u0443 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438\u0439 \u0442\u0438\u043f \u0434\u0430\u043d\u043d\u044b\u0445.
\u0423\u0440\u043e\u043a 4
- \u0432\u0432\u0435\u0441\u0442\u0438 \u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443 \u043f\u043b\u0430\u0442\u0435\u0436\u043d\u043e\u0433\u043e \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b\u0430 \u0440\u0430\u0437\u043d\u044b\u0435 \u0431\u043e\u043d\u0443\u0441\u044b \u0434\u043b\u044f \u0440\u0430\u0437\u043d\u044b\u0445 \u043f\u0440\u043e\u043c\u043e\u043a\u043e\u0434\u043e\u0432 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u0430 switch
\u0423\u0440\u043e\u043a 5
- \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0432 \u0442\u0432\u0438\u0442\u0442\u0435\u0440\u0435, \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043a\u043b\u044e\u0447\u0438, \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u0442\u044c\u0441\u044f \u043d\u0430 \u0434\u0440\u0443\u0433\u0438\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439, \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043f\u0440\u0438\u043c\u0435\u0440 \u0438 \u0443\u0432\u0438\u0434\u0435\u0442\u044c \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u0442\u0432\u0438\u0442\u044b \u0438 \u0442\u0440\u0435\u043d\u0434\u044b, \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u043f\u0435\u0440\u0432\u044b\u0435 15 \u0442\u0432\u0438\u0442\u043e\u0432 \u0432 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u0435
- \u043f\u0440\u0438\u043c\u0435\u0440 \u0432 \u0430\u0440\u0445\u0438\u0432\u0435 TwitterConsole
\u0423\u0440\u043e\u043a 6
- \u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0435 \u043f\u043b\u0430\u0442\u0435\u0436\u043d\u043e\u0433\u043e \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b\u0430 \u0432\u044b\u043d\u0435\u0441\u0442\u0438 \u0430\u043d\u0430\u043b\u0438\u0437 \u043f\u0440\u043e\u043c\u043e\u043a\u043e\u0434\u0430 \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u043c\u0435\u0442\u043e\u0434, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u043d\u0430 \u0432\u0445\u043e\u0434 \u043f\u0440\u043e\u043c\u043e\u043a\u043e\u0434 \u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0440\u0430\u0437\u043c\u0435\u0440 \u0431\u043e\u043d\u0443\u0441\u0430
\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0423\u0440\u043e\u043a 2
- \u0414\u0417: \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u044b\u0432\u043e\u0434\u0438\u0442 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0438 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0442\u0438\u043f\u0430 double
\u0423\u0440\u043e\u043a 3
- \u0414\u0417: \u043f\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u043f\u0440\u043e \u043a\u043b\u0430\u0441\u0441 Math (https://msdn.microsoft.com/ru-ru/library/system.math(v=vs.110).aspx)
\u0423\u0440\u043e\u043a 4
- \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f \u0441 \u0442\u0430\u0431\u043b\u0438\u0446\u0435\u0439 \u043d\u0435\u044f\u0432\u043d\u044b\u0445 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0439 C# (https://msdn.microsoft.com/ru-ru/library/y5b434w4.aspx)
- \u043e\u0442\u0432\u0435\u0442\u0438\u0442\u044c \u043d\u0430 \u0432\u043e\u043f\u0440\u043e\u0441: \u041d\u0443\u0436\u043d\u043e \u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u044f\u0432\u043d\u043e\u0435 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0442\u0438\u043f\u043e\u0432 \u0434\u043b\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u0437 long \u0432 decimal?
\u0423\u0440\u043e\u043a 5
- \u041f\u0440\u0438\u043c\u0435\u0440 \u0432 \u0430\u0440\u0445\u0438\u0432\u0435 DatesAndTime
- \u0414\u0417: \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u0422\u0432\u0438\u0442\u0442\u0435\u0440\u0430 \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0442\u0432\u0438\u0442\u0430 \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043c\u0438\u043d\u0443\u0442/\u0447\u0430\u0441\u043e\u0432/\u0434\u043d\u0435\u0439 \u0441 \u043c\u043e\u043c\u0435\u043d\u0442\u0430 \u0435\u0433\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f
\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0423\u0440\u043e\u043a 3
- \u041f\u043e\u0434\u0441\u0447\u0438\u0442\u0430\u0442\u044c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0441\u043b\u043e\u0432 \u0432 \u0442\u0435\u043a\u0441\u0442\u0435. \u041d\u0430\u0439\u0442\u0438 \u0441\u0430\u043c\u043e\u0435 \u0434\u043b\u0438\u043d\u043d\u043e\u0435 \u0441\u043b\u043e\u0432\u043e \u0438 \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u0435\u0433\u043e \u0434\u043b\u0438\u043d\u0443. \u0415\u0441\u043b\u0438 \u0434\u043b\u0438\u043d\u0430 \u0442\u0435\u043a\u0441\u0442\u0430 \u043f\u0440\u0435\u0432\u044b\u0448\u0430\u0435\u0442 140 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432 - \u043e\u0442\u0441\u0435\u043a\u0430\u0442\u044c \u043b\u0438\u0448\u043d\u044e\u044e \u0447\u0430\u0441\u0442\u044c \u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0442\u044c \u043f\u0435\u0440\u0432\u044b\u0435 140 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432.
\u0423\u0440\u043e\u043a 4
- \u0412 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u0442\u0432\u0438\u0442\u0442\u0435\u0440\u0430, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043a\u043b\u0430\u0441\u0441 StringBuilder, \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u0432\u0441\u0435 \u0442\u0440\u0435\u043d\u0434\u044b, \u043d\u0430\u0447\u0438\u043d\u0430\u044e\u0449\u0438\u0435\u0441\u044f \u043d\u0430 #, \u0432 \u043e\u0434\u043d\u0443 \u0441\u0442\u0440\u043e\u043a\u0443 \u0441 \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u0435\u043c
\u0423\u0440\u043e\u043a 5
- \u0412 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u0434\u043b\u044f \u0422\u0432\u0438\u0442\u0442\u0435\u0440\u0430 \u043d\u0430\u0439\u0442\u0438 \u0432\u0441\u0435 \u0445\u044d\u0448\u0442\u044d\u0433\u0438 \u0432 \u0442\u0432\u0438\u0442\u0430\u0445 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0440\u0435\u0433\u0443\u043b\u044f\u0440\u043d\u043e\u0433\u043e \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0438 \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u0438\u0445 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e \u043f\u043e\u0434 \u043a\u0430\u0436\u0434\u044b\u043c \u0442\u0432\u0438\u0442\u043e\u043c.
\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0423\u0440\u043e\u043a 3
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0438 \u0437\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u043c\u0430\u0441\u0441\u0438\u0432 \u0434\u043d\u0435\u0439 \u043d\u0435\u0434\u0435\u043b\u0438 \u0432 \u043e\u0431\u044b\u0447\u043d\u043e\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u0435, \u0430 \u0437\u0430\u0442\u0435\u043c \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u0435\u0433\u043e \u0432 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u0435
- \u0417\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u043c\u0430\u0441\u0441\u0438\u0432 \u0448\u0430\u0445\u043c\u0430\u0442\u043d\u043e\u0439 \u0434\u043e\u0441\u043a\u0438 \u0446\u0432\u0435\u0442\u043e\u043c, \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u043c \u043a\u0430\u0436\u0434\u043e\u0439 \u043a\u043b\u0435\u0442\u043a\u0435 (0 - \u0431\u0435\u043b\u044b\u0439, 1 - \u0447\u0435\u0440\u043d\u044b\u0439) \u0438 \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u044c \u0432 \u0432\u0438\u0434\u0435 \u0434\u043e\u0441\u043a\u0438 (\u043a\u0430\u0436\u0434\u044b\u0439 \u043d\u043e\u0432\u044b\u0439 \u0440\u044f\u0434 \u0441 \u043d\u043e\u0432\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438)
\u0423\u0440\u043e\u043a 4
- \u0412\u044b\u0431\u0440\u0430\u0442\u044c \u043b\u044e\u0431\u043e\u0439 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u043c\u0430\u0433\u0430\u0437\u0438\u043d \u0438 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0437\u0430\u043a\u0430\u0437\u0430.
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043c\u0430\u0441\u0441\u0438\u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0439 \u0437\u0430\u043a\u0430\u0437\u043e\u0432, \u0437\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0435\u0433\u043e \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c\u0438, \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u0432\u0432\u0435\u0441\u0442\u0438 \u0438\u043d\u0434\u0435\u043a\u0441 \u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u0435 \u0438 \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0437\u0430\u043a\u0430\u0437\u0430 \u043f\u043e \u0434\u0430\u043d\u043d\u043e\u043c\u0443 \u0438\u043d\u0434\u0435\u043a\u0441\u0443.
", "sort": 1, "materials": []}}, {"model": "courses.homework", "pk": 40, "fields": {"token": "5#39", "course": 5, "theme": 65, "description": "\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0423\u0440\u043e\u043a 2
- \u041f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u0442\u044c, \u043a\u0430\u043a\u0438\u0435 \u043a\u043b\u0430\u0441\u0441\u044b \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0432 \u0442\u0432\u0438\u0442\u0442\u0435\u0440\u0435, \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0438\u0445 \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0431\u0430\u0437\u043e\u0432\u044b\u043c\u0438 \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u0430\u043c\u0438 \u0438 \u043f\u0443\u0441\u0442\u044b\u043c\u0438 \u043c\u0435\u0442\u043e\u0434\u0430\u043c\u0438, \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0449\u0438\u043c\u0438 \u0438\u0445 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435
\u0423\u0440\u043e\u043a 3
- \u0420\u0430\u0441\u0448\u0438\u0440\u0438\u0442\u044c \u043c\u043e\u0434\u0435\u043b\u044c \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u0442\u0432\u0438\u0442\u0442\u0435\u0440\u0430 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430\u043c\u0438, \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440\u0430\u043c\u0438 \u0438 \u043c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u0430\u043c\u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u0430
\u0423\u0440\u043e\u043a 5
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u0443 \u0432 \u043a\u043b\u0430\u0441\u0441\u0435 \u0442\u0432\u0438\u0442\u0430, \u0437\u0430\u0434\u0430\u044e\u0449\u0443\u044e \u0435\u0433\u043e \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u0443\u044e \u0434\u043b\u0438\u043d\u0443
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043a\u043b\u0430\u0441\u0441 StringHelper, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043c\u0435\u0442\u043e\u0434 Cut, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043e\u0431\u0440\u0435\u0437\u0430\u0435\u0442 \u0441\u0442\u0440\u043e\u043a\u0443 \u0434\u043e \u043d\u0443\u0436\u043d\u043e\u0439 \u0434\u043b\u0438\u043d\u044b, \u0435\u0441\u043b\u0438 \u0441\u0442\u0440\u043e\u043a\u0430 \u0435\u0435 \u043f\u0440\u0435\u0432\u044b\u0448\u0430\u0435\u0442. \u0412\u044b\u0437\u044b\u0432\u0430\u0442\u044c \u044d\u0442\u043e\u0442 \u043c\u0435\u0442\u043e\u0434 \u0432 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440\u0435 \u043a\u043b\u0430\u0441\u0441\u0430 \u0442\u0432\u0438\u0442\u0430, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u0443 \u0438\u0437 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0437\u0430\u0434\u0430\u043d\u0438\u044f
\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0423\u0440\u043e\u043a 2
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u043d\u0430\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f \u0432 \u043c\u043e\u0434\u0435\u043b\u0438 \u043a\u043b\u0430\u0441\u0441\u043e\u0432, \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0449\u0438\u0445 \u0432\u0438\u0434\u044b \u0442\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442\u0430: \u043d\u0430\u0437\u0435\u043c\u043d\u044b\u0439, \u0436\u0435\u043b\u0435\u0437\u043d\u043e\u0434\u043e\u0440\u043e\u0436\u043d\u044b\u0439, \u0432\u043e\u0437\u0434\u0443\u0448\u043d\u044b\u0439, \u0432\u043e\u0434\u043d\u044b\u0439. \u0412\u0432\u0435\u0441\u0442\u0438 \u043e\u0431\u0449\u0438\u0435 \u043f\u043e\u043b\u044f \u0438 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u0432 \u0431\u0430\u0437\u043e\u0432\u044b\u0445 \u043a\u043b\u0430\u0441\u0441\u0430\u0445 \u0438 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0432 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u044b\u0445.
\u0423\u0440\u043e\u043a 3
- \u0412\u0432\u0435\u0441\u0442\u0438 \u0432 \u043c\u043e\u0434\u0435\u043b\u044c \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u0442\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442\u0430 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u043c\u0435\u0442\u043e\u0434\u044b \u0432 \u0431\u0430\u0437\u043e\u0432\u043e\u043c \u043a\u043b\u0430\u0441\u0441\u0435 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, Move) \u0438 \u043f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u0438\u0445 \u0432 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u043d\u044b\u0445 \u043a\u043b\u0430\u0441\u0441\u0430\u0445
\u0423\u0440\u043e\u043a 4
- \u041f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u0432 \u043a\u043b\u0430\u0441\u0441\u0435 \u0442\u0432\u0438\u0442\u0430 \u043c\u0435\u0442\u043e\u0434 ToString, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u0435\u0440\u043d\u0435\u0442 \u0442\u0435\u043a\u0441\u0442 \u0442\u0432\u0438\u0442\u0430, \u0438 \u0432 \u043a\u043b\u0430\u0441\u0441\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043c\u0435\u0442\u043e\u0434 Equals, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u0441\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u043f\u043e \u0443\u0447\u0435\u0442\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0438
\u0423\u0440\u043e\u043a 5
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0432 \u043e\u0431\u044a\u0435\u043a\u0442\u043d\u043e\u0439 \u043c\u043e\u0434\u0435\u043b\u0438 \u0442\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442\u0430 \u043e\u0434\u0438\u043d \u0430\u0431\u0441\u0442\u0440\u0430\u043a\u0442\u043d\u044b\u0439 \u043a\u043b\u0430\u0441\u0441 - \u0442\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442\u043d\u043e\u0435 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e - \u0438 \u043d\u0430\u0431\u043e\u0440 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u0432 (\u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0435\u0435 \u043d\u0430 \u0442\u043e\u043f\u043b\u0438\u0432\u0435, \u043f\u0435\u0440\u0435\u0432\u043e\u0437\u044f\u0449\u0435\u0435 \u043f\u0430\u0441\u0441\u0430\u0436\u0438\u0440\u043e\u0432 \u0438 \u0442.\u043f.), \u0443\u043d\u0430\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u044c \u043e\u0442 \u043d\u0438\u0445 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u043a\u043b\u0430\u0441\u0441\u044b
\u0423 \u0432\u0430\u0441 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0441\u044f \u043e\u0434\u0438\u043d \u0444\u0430\u0439\u043b \u0441 6\u044e \u043b\u0438\u0441\u0442\u0430\u043c\u0438, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u044b \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u044f.
\u041e\u0442\u0447\u0435\u0442\u044b \u043f\u043e \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u043c \u0437\u0430\u0434\u0430\u043d\u0438\u044f\u043c \u043f\u0440\u0438\u043a\u0440\u0435\u043f\u043b\u044f\u0439\u0442\u0435, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0432\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c \u0432 \u0444\u043e\u0440\u043c\u0435 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 \u0441 \u0437\u0430\u0434\u0430\u043d\u0438\u0435\u043c.
\u0418 \u0432\u0441\u043a\u043e\u0440\u0435 \u0432\u0430\u043c \u043f\u0440\u0438\u0434\u0435\u0442 \u043e\u0442\u0432\u0435\u0442 \u0432 \u0432\u0438\u0434\u0435 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0435\u0432.
\u041d\u0430 \u043f\u043e\u0447\u0442\u0443 \u0434\u043e\u043c\u0430\u0448\u043d\u044e\u044e \u0440\u0430\u0431\u043e\u0442\u0443 \u043d\u0435 \u043f\u0440\u0438\u0441\u044b\u043b\u0430\u0439\u0442\u0435, \u0438\u043d\u0430\u0447\u0435 \u0432\u044b \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435.
\u041f\u0440\u043e\u0441\u044c\u0431\u0430 \u043e\u0442\u043d\u0435\u0441\u0442\u0438\u0441\u044c \u043a \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044e \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e.
\u041d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u0435\u043c, \u0447\u0442\u043e \u043a \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c\u0443 \u0437\u0430\u043d\u044f\u0442\u0438\u044e \u0434\u043e\u043f\u0443\u0441\u043a\u0430\u044e\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435, \u043a\u0442\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442 \u0442\u0435\u043a\u0443\u0449\u0435\u0435 \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435.
\u041f\u043e \u043b\u044e\u0431\u044b\u043c \u0432\u043e\u043f\u0440\u043e\u0441\u0430\u043c \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u043a\u0443\u0440\u0441\u0430 \u043f\u0438\u0448\u0438\u0442\u0435 \u043d\u0430 \u043f\u043e\u0447\u0442\u0443 excel@bedev.ru
", "sort": 1, "materials": [4730]}}, {"model": "courses.homework", "pk": 43, "fields": {"token": "4#33", "course": 4, "theme": 39, "description": "\u0423 \u0432\u0430\u0441 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0441\u044f \u043e\u0434\u0438\u043d \u0444\u0430\u0439\u043b \u0441 6\u044e \u043b\u0438\u0441\u0442\u0430\u043c\u0438, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u044b \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u044f.
\u041e\u0442\u0447\u0435\u0442\u044b \u043f\u043e \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u043c \u0437\u0430\u0434\u0430\u043d\u0438\u044f\u043c \u043f\u0440\u0438\u043a\u0440\u0435\u043f\u043b\u044f\u0439\u0442\u0435, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0432\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c \u0432 \u0444\u043e\u0440\u043c\u0435 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 \u0441 \u0437\u0430\u0434\u0430\u043d\u0438\u0435\u043c.
\u0418 \u0432\u0441\u043a\u043e\u0440\u0435 \u0432\u0430\u043c \u043f\u0440\u0438\u0434\u0435\u0442 \u043e\u0442\u0432\u0435\u0442 \u0432 \u0432\u0438\u0434\u0435 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0435\u0432.
\u041d\u0430 \u043f\u043e\u0447\u0442\u0443 \u0434\u043e\u043c\u0430\u0448\u043d\u044e\u044e \u0440\u0430\u0431\u043e\u0442\u0443 \u043d\u0435 \u043f\u0440\u0438\u0441\u044b\u043b\u0430\u0439\u0442\u0435, \u0438\u043d\u0430\u0447\u0435 \u0432\u044b \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435.
\u041f\u0440\u043e\u0441\u044c\u0431\u0430 \u043e\u0442\u043d\u0435\u0441\u0442\u0438\u0441\u044c \u043a \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044e \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e.
\u041d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u0435\u043c, \u0447\u0442\u043e \u043a \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c\u0443 \u0437\u0430\u043d\u044f\u0442\u0438\u044e \u0434\u043e\u043f\u0443\u0441\u043a\u0430\u044e\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435, \u043a\u0442\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442 \u0442\u0435\u043a\u0443\u0449\u0435\u0435 \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435.
\u041f\u043e \u043b\u044e\u0431\u044b\u043c \u0432\u043e\u043f\u0440\u043e\u0441\u0430\u043c \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u043a\u0443\u0440\u0441\u0430 \u043f\u0438\u0448\u0438\u0442\u0435 \u043d\u0430 \u043f\u043e\u0447\u0442\u0443 excel@bedev.ru
", "sort": 1, "materials": [4735]}}, {"model": "courses.homework", "pk": 44, "fields": {"token": "4#38", "course": 4, "theme": 40, "description": "\u0423 \u0432\u0430\u0441 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0441\u044f \u043e\u0434\u0438\u043d \u0444\u0430\u0439\u043b \u0441 6\u044e \u043b\u0438\u0441\u0442\u0430\u043c\u0438, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u044b \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u044f.
\u041e\u0442\u0447\u0435\u0442\u044b \u043f\u043e \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u043c \u0437\u0430\u0434\u0430\u043d\u0438\u044f\u043c \u043f\u0440\u0438\u043a\u0440\u0435\u043f\u043b\u044f\u0439\u0442\u0435, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0432\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c \u0432 \u0444\u043e\u0440\u043c\u0435 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 \u0441 \u0437\u0430\u0434\u0430\u043d\u0438\u0435\u043c.
\u0418 \u0432\u0441\u043a\u043e\u0440\u0435 \u0432\u0430\u043c \u043f\u0440\u0438\u0434\u0435\u0442 \u043e\u0442\u0432\u0435\u0442 \u0432 \u0432\u0438\u0434\u0435 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0435\u0432.
\u041d\u0430 \u043f\u043e\u0447\u0442\u0443 \u0434\u043e\u043c\u0430\u0448\u043d\u044e\u044e \u0440\u0430\u0431\u043e\u0442\u0443 \u043d\u0435 \u043f\u0440\u0438\u0441\u044b\u043b\u0430\u0439\u0442\u0435, \u0438\u043d\u0430\u0447\u0435 \u0432\u044b \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435.
\u041f\u0440\u043e\u0441\u044c\u0431\u0430 \u043e\u0442\u043d\u0435\u0441\u0442\u0438\u0441\u044c \u043a \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044e \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e.
\u041d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u0435\u043c, \u0447\u0442\u043e \u043a \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c\u0443 \u0437\u0430\u043d\u044f\u0442\u0438\u044e \u0434\u043e\u043f\u0443\u0441\u043a\u0430\u044e\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435, \u043a\u0442\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442 \u0442\u0435\u043a\u0443\u0449\u0435\u0435 \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435.
\u041f\u043e \u043b\u044e\u0431\u044b\u043c \u0432\u043e\u043f\u0440\u043e\u0441\u0430\u043c \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u043a\u0443\u0440\u0441\u0430 \u043f\u0438\u0448\u0438\u0442\u0435 \u043d\u0430 \u043f\u043e\u0447\u0442\u0443 excel@bedev.ru
", "sort": 1, "materials": [4736]}}, {"model": "courses.homework", "pk": 45, "fields": {"token": "5#51", "course": 5, "theme": 67, "description": "\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0423\u0440\u043e\u043a 3
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439 \u043f\u0440\u0438 \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u0438 \u043a \u043c\u0435\u0442\u043e\u0434\u0430\u043c Twitter API, \u0432\u044b\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0442\u044c \u0432 catch \u0441\u0432\u043e\u0435 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435.
\u0423\u0440\u043e\u043a 4
- \u041f\u043e\u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u043c\u0438 \u043e\u0442\u043b\u0430\u0434\u043a\u0438 \u043d\u0430 \u0441\u0432\u043e\u0438\u0445 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u0445 \u0438\u0437 \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u0445 \u0437\u0430\u0434\u0430\u043d\u0438\u0439.
\u0423\u0440\u043e\u043a 5
- \u041f\u043e\u043a\u0440\u044b\u0442\u044c \u0442\u0435\u0441\u0442\u0430\u043c\u0438 \u043c\u0435\u0442\u043e\u0434 Cut \u0432 \u043a\u043b\u0430\u0441\u0441\u0435 StringHelper \u0438\u0437 \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0433\u043e \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u043a \u0443\u0440\u043e\u043a\u0443 4, \u043c\u043e\u0434\u0443\u043b\u044c 6.
\u0420\u0430\u0431\u043e\u0442\u0430 \u0441 \u0421\u0435\u0442\u044c\u044e
a. \u0421\u0434\u0435\u043b\u0430\u0442\u044c \u0441\u0435\u0440\u0432\u0435\u0440 \u043d\u0430 Swifter \u043a\u0430\u043a \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u043e \u0432 \u0443\u0440\u043e\u043a\u0435
b. \u041e\u043f\u0438\u0441\u0430\u0442\u044c \u0432 \u0442\u0435\u0441\u0442\u043e\u0432\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u043b\u0435\u043d\u0442\u044b \u0432\u0435\u0441\u0442\u044c \u0444\u043e\u0442\u043e\u043f\u043e\u0441\u0442 \u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0442\u044c \u0435\u0433\u043e \u043d\u0430 \u043a\u043b\u0438\u0435\u043d\u0442
c. \u0421\u0434\u0435\u043b\u0430\u0442\u044c \u0442\u0435\u0441\u0442\u043e\u0432\u044b\u0439 \u043c\u0435\u0442\u043e\u0434 \u0434\u043b\u044f \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u043f\u0440\u043e\u0444\u0438\u043b\u044f \u043f\u043e \u0434\u0440\u0443\u0433\u043e\u043c\u0443 \u0430\u0434\u0440\u0435\u0441\u0443
", "sort": 1, "materials": []}}, {"model": "courses.homework", "pk": 47, "fields": {"token": "4#43", "course": 4, "theme": 41, "description": "\u0423 \u0432\u0430\u0441 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0441\u044f \u043e\u0434\u0438\u043d \u0444\u0430\u0439\u043b \u0441 10\u044e \u043b\u0438\u0441\u0442\u0430\u043c\u0438, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u044b \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u044f.
\u041e\u0442\u0447\u0435\u0442\u044b \u043f\u043e \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u043c \u0437\u0430\u0434\u0430\u043d\u0438\u044f\u043c \u043f\u0440\u0438\u043a\u0440\u0435\u043f\u043b\u044f\u0439\u0442\u0435, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0432\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c \u0432 \u0444\u043e\u0440\u043c\u0435 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 \u0441 \u0437\u0430\u0434\u0430\u043d\u0438\u0435\u043c.
\u0418 \u0432\u0441\u043a\u043e\u0440\u0435 \u0432\u0430\u043c \u043f\u0440\u0438\u0434\u0435\u0442 \u043e\u0442\u0432\u0435\u0442 \u0432 \u0432\u0438\u0434\u0435 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0435\u0432.
\u041d\u0430 \u043f\u043e\u0447\u0442\u0443 \u0434\u043e\u043c\u0430\u0448\u043d\u044e\u044e \u0440\u0430\u0431\u043e\u0442\u0443 \u043d\u0435 \u043f\u0440\u0438\u0441\u044b\u043b\u0430\u0439\u0442\u0435, \u0438\u043d\u0430\u0447\u0435 \u0432\u044b \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435.
\u041f\u0440\u043e\u0441\u044c\u0431\u0430 \u043e\u0442\u043d\u0435\u0441\u0442\u0438\u0441\u044c \u043a \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044e \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e.
\u041d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u0435\u043c, \u0447\u0442\u043e \u043a \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c\u0443 \u0437\u0430\u043d\u044f\u0442\u0438\u044e \u0434\u043e\u043f\u0443\u0441\u043a\u0430\u044e\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435, \u043a\u0442\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442 \u0442\u0435\u043a\u0443\u0449\u0435\u0435 \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435.
\u041f\u043e \u043b\u044e\u0431\u044b\u043c \u0432\u043e\u043f\u0440\u043e\u0441\u0430\u043c \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u043a\u0443\u0440\u0441\u0430 \u043f\u0438\u0448\u0438\u0442\u0435 \u043d\u0430 \u043f\u043e\u0447\u0442\u0443 excel@bedev.ru
", "sort": 1, "materials": [5259]}}, {"model": "courses.homework", "pk": 48, "fields": {"token": "4#48", "course": 4, "theme": 42, "description": "\u0423 \u0432\u0430\u0441 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c\u0441\u044f \u043e\u0434\u0438\u043d \u0444\u0430\u0439\u043b \u0441 7\u044e \u043b\u0438\u0441\u0442\u0430\u043c\u0438, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u044b \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u044f.
\u041e\u0442\u0447\u0435\u0442\u044b \u043f\u043e \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u043c \u0437\u0430\u0434\u0430\u043d\u0438\u044f\u043c \u043f\u0440\u0438\u043a\u0440\u0435\u043f\u043b\u044f\u0439\u0442\u0435, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0432\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c \u0432 \u0444\u043e\u0440\u043c\u0435 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 \u0441 \u0437\u0430\u0434\u0430\u043d\u0438\u0435\u043c.
\u0418 \u0432\u0441\u043a\u043e\u0440\u0435 \u0432\u0430\u043c \u043f\u0440\u0438\u0434\u0435\u0442 \u043e\u0442\u0432\u0435\u0442 \u0432 \u0432\u0438\u0434\u0435 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0435\u0432.
\u041d\u0430 \u043f\u043e\u0447\u0442\u0443 \u0434\u043e\u043c\u0430\u0448\u043d\u044e\u044e \u0440\u0430\u0431\u043e\u0442\u0443 \u043d\u0435 \u043f\u0440\u0438\u0441\u044b\u043b\u0430\u0439\u0442\u0435, \u0438\u043d\u0430\u0447\u0435 \u0432\u044b \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435.
\u041f\u0440\u043e\u0441\u044c\u0431\u0430 \u043e\u0442\u043d\u0435\u0441\u0442\u0438\u0441\u044c \u043a \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044e \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e.
\u041d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u0435\u043c, \u0447\u0442\u043e \u043a \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c\u0443 \u0437\u0430\u043d\u044f\u0442\u0438\u044e \u0434\u043e\u043f\u0443\u0441\u043a\u0430\u044e\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435, \u043a\u0442\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442 \u0442\u0435\u043a\u0443\u0449\u0435\u0435 \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435.
\u041f\u043e \u043b\u044e\u0431\u044b\u043c \u0432\u043e\u043f\u0440\u043e\u0441\u0430\u043c \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u043a\u0443\u0440\u0441\u0430 \u043f\u0438\u0448\u0438\u0442\u0435 \u043d\u0430 \u043f\u043e\u0447\u0442\u0443 excel@bedev.ru
", "sort": 1, "materials": [5260]}}, {"model": "courses.homework", "pk": 49, "fields": {"token": "5#57", "course": 5, "theme": 68, "description": "\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0423\u0440\u043e\u043a 3
- \u0412 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u0434\u043b\u044f \u0442\u0432\u0438\u0442\u0442\u0435\u0440\u0430 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0441\u043f\u0438\u0441\u043e\u043a \u0442\u0440\u0435\u043d\u0434\u043e\u0432 (\u043f\u0440\u043e\u0441\u0442\u043e \u0441\u0442\u0440\u043e\u043a\u0438), \u0437\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u043f\u043e\u0441\u043b\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445, \u043e\u0442\u0441\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438 \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d \u0442\u0440\u0435\u043d\u0434\u044b \u0438 \u0438\u0445 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e
- \u0412 \u043c\u043e\u0434\u0435\u043b\u0438 \u0442\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442\u043d\u044b\u0445 \u0441\u0440\u0435\u0434\u0441\u0442\u0432 \u0441\u043e\u0437\u0434\u0430\u0442\u044c generic-\u043a\u043b\u0430\u0441\u0441 Station<T>, \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0449\u0438\u0439 \u043f\u043e\u043d\u044f\u0442\u0438\u0435 \u0441\u0442\u0430\u043d\u0446\u0438\u0438, \u0441\u043e \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430\u043c\u0438: \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435, \u0441\u043f\u0438\u0441\u043e\u043a \u0442\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442\u043d\u044b\u0445 \u0441\u0440\u0435\u0434\u0441\u0442\u0432 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0433\u043e \u0442\u0438\u043f\u0430 \u0438 \u043c\u0435\u0442\u043e\u0434\u0430\u043c\u0438: \u043f\u0440\u0438\u043d\u044f\u0442\u044c T, \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c T. \u0417\u0430\u0442\u0435\u043c \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u044b \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0445 \u0441\u0442\u0430\u043d\u0446\u0438\u0439, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440: Station<Train>, Station<Bus> \u0438 \u043f\u043e\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u043d\u0438\u043c\u0438.
\r\n\u0423\u0440\u043e\u043a 4
- \u0412 \u0414\u0417 \u043f\u0440\u043e \u0437\u0430\u043a\u0430\u0437\u044b \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u043c\u0430\u0433\u0430\u0437\u0438\u043d\u0430 \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u043c\u0430\u0441\u0441\u0438\u0432 \u043d\u0430 \u043e\u0447\u0435\u0440\u0435\u0434\u044c. \u0412\u0432\u043e\u0434\u0438\u043c \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u201c\u0440\u0430\u0437\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u0437\u0430\u043a\u0430\u0437\u201d + \u2116 \u0437\u0430\u043a\u0430\u0437\u0430 \u0438 \u201c\u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0437\u0430\u043a\u0430\u0437\u201d. \u0415\u0441\u043b\u0438 \u0432 \u043e\u0447\u0435\u0440\u0435\u0434\u0438 \u0441\u043a\u043e\u043f\u0438\u043b\u043e\u0441\u044c 10 \u0437\u0430\u043a\u0430\u0437\u043e\u0432, \u0437\u0430\u043f\u0440\u0435\u0449\u0430\u0435\u043c \u0440\u0430\u0437\u043c\u0435\u0449\u0430\u0442\u044c \u043d\u043e\u0432\u044b\u0435 \u0437\u0430\u043a\u0430\u0437\u044b \u0438 \u0432\u044b\u0432\u043e\u0434\u0438\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435. \u041f\u0440\u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0438 \u0432\u044b\u0432\u043e\u0434\u0438\u043c \u043d\u043e\u043c\u0435\u0440 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u043e\u0433\u043e \u0437\u0430\u043a\u0430\u0437\u0430.
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043c\u043e\u0434\u0435\u043b\u044c \u0441\u0442\u043e\u044f\u043d\u043a\u0438 \u0441\u0430\u043c\u043e\u043b\u0435\u0442\u043e\u0432 \u0432 \u0432\u0438\u0434\u0435 \u0441\u0442\u044d\u043a\u0430. \u0420\u0430\u0437\u043c\u0435\u0440 \u0441\u0442\u043e\u044f\u043d\u043a\u0438 - 5 \u043c\u0435\u0441\u0442. \u0412\u0432\u043e\u0434\u0438\u043c \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u201c\u0432\u044a\u0435\u0445\u0430\u0442\u044c \u043d\u0430 \u0441\u0442\u043e\u044f\u043d\u043a\u0443\u201d + \u2116 \u0431\u043e\u0440\u0442\u0430 \u0438 \u201c\u043f\u043e\u043a\u0438\u043d\u0443\u0442\u044c \u0441\u0442\u043e\u044f\u043d\u043a\u0443\u201d; \u0435\u0441\u043b\u0438 \u0441\u0442\u043e\u044f\u043d\u043a\u0430 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0430 - \u043e\u0447\u0435\u0440\u0435\u0434\u043d\u043e\u043c\u0443 \u0431\u043e\u0440\u0442\u0443 \u0432\u044a\u0435\u0437\u0436\u0430\u0442\u044c \u043d\u0435\u043b\u044c\u0437\u044f (\u0432\u044b\u0432\u043e\u0434\u0438\u043c \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435). \u041f\u0440\u0438 \u0432\u044b\u0435\u0437\u0434\u0435 \u0441\u043e \u0441\u0442\u043e\u044f\u043d\u043a\u0438 \u043f\u0435\u0447\u0430\u0442\u0430\u0435\u043c \u043d\u043e\u043c\u0435\u0440 \u0432\u044b\u0435\u0437\u0436\u0430\u044e\u0449\u0435\u0433\u043e \u0431\u043e\u0440\u0442\u0430.
\u0423\u0440\u043e\u043a 5
- \u0421\u043c\u043e\u0434\u0435\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044e \u0432 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0441\u0435\u0440\u0432\u0438\u0441\u0435 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e Dictionary. \u041a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442 \u0432\u0432\u0435\u0441\u0442\u0438 \u0443\u0447\u0435\u0442\u043d\u0443\u044e \u0437\u0430\u043f\u0438\u0441\u044c (\u043b\u043e\u0433\u0438\u043d). \u0415\u0441\u043b\u0438 \u043b\u043e\u0433\u0438\u043d \u043d\u0430\u0439\u0434\u0435\u043d - \u0432\u044b\u0432\u043e\u0434\u0438\u0442 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d \u201c\u0417\u0434\u0440\u0430\u0432\u0441\u0442\u0432\u0443\u0439\u0442\u0435, <\u0438\u043c\u044f>\u201d, \u0435\u0441\u043b\u0438 \u043d\u0435\u0442 - \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442 \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f (\u043b\u043e\u0433\u0438\u043d \u0438 \u0438\u043c\u044f). \u041e\u0442\u0434\u0435\u043b\u044c\u043d\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u0432\u044b\u0432\u043e\u0434\u0438\u0442 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d \u0438\u043c\u0435\u043d\u0430 \u0432\u0441\u0435\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439.
\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0423\u0440\u043e\u043a 2
- \u0412\u0437\u044f\u0442\u044c \u043f\u0440\u0438\u043c\u0435\u0440 \u0441 \u043e\u0447\u0435\u0440\u0435\u0434\u044c\u044e \u0437\u0430\u043a\u0430\u0437\u043e\u0432 \u0438\u0437 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f \u0438 \u0441\u0432\u0435\u0440\u0441\u0442\u0430\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0434\u0438\u0437\u0430\u0439\u043d\u0435\u0440\u0430 WPF \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0434\u043b\u044f \u043d\u0435\u0433\u043e: \u043a\u043d\u043e\u043f\u043a\u0438, \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0435 \u043f\u043e\u043b\u044f. \u0423\u043a\u0430\u0437\u0430\u0442\u044c \u0438\u043c\u0435\u043d\u0430 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432, \u043e\u0442\u0441\u0442\u0443\u043f\u044b, \u0440\u0430\u0437\u043c\u0435\u0440\u044b, \u0446\u0432\u0435\u0442\u0430.
\u0423\u0440\u043e\u043a 3
- \u0412\u0437\u044f\u0442\u044c \u043f\u0440\u0438\u043c\u0435\u0440 \u0441\u043e \u0441\u0442\u043e\u044f\u043d\u043a\u043e\u0439 \u0441\u0430\u043c\u043e\u043b\u0435\u0442\u043e\u0432 \u0438\u0437 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f \u0438 \u0441\u0432\u0435\u0440\u0441\u0442\u0430\u0442\u044c \u0435\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e XAML. \u0423\u043a\u0430\u0437\u0430\u0442\u044c \u0438\u043c\u0435\u043d\u0430 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432, \u043e\u0442\u0441\u0442\u0443\u043f\u044b, \u0440\u0430\u0437\u043c\u0435\u0440\u044b, \u0432\u044b\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u043d\u0438\u0435.
\u0423\u0440\u043e\u043a 4
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043a\u043d\u043e\u043f\u043e\u043a \u0432 \u0440\u0435\u0448\u0435\u043d\u0438\u044f\u0445 \u0438\u0437 \u0443\u0440\u043e\u043a\u043e\u0432 1 \u0438 2.
\u0423\u0440\u043e\u043a 5
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e MessageBox \u0432\u044b\u0432\u043e\u0434 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439 \u043e \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430\u0445 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439 \u0432 \u0440\u0435\u0448\u0435\u043d\u0438\u044f\u0445 \u0438\u0437 \u0443\u0440\u043e\u043a\u0430 3.
\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0414\u043b\u044f \u0412\u0430\u0448\u0435\u0433\u043e \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430 \u043c\u044b \u0441\u043e\u0431\u0440\u0430\u043b\u0438 FAQ \u043f\u043e \u0447\u0430\u0441\u0442\u043e \u0437\u0430\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u043c \u0432\u043e\u043f\u0440\u043e\u0441\u0430\u043c. \u041f\u0440\u043e\u0441\u0438\u043c \u0432\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0441 \u043d\u0438\u043c\u0438 \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f.
\u0423\u0440\u043e\u043a 2. \u041e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439
- \u041a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u0430\u044f \u0438\u0433\u0440\u0430 \u201c\u0413\u043e\u0440\u043e\u0434\u0430\u201d \u00ad \u043f\u0440\u043e\u0435\u043a\u0442 Cities.zip. \u0412 \u044d\u0442\u043e\u0439 \u0438\u0433\u0440\u0435 \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u0438 \u043d\u0443\u0436\u043d\u043e \u043f\u0435\u0447\u0430\u0442\u0430\u0442\u044c \u0433\u043e\u0440\u043e\u0434\u0430. \u041d\u043e \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u043f\u0435\u0447\u0430\u0442\u0430\u0442\u044c \u0442\u043e, \u0447\u0442\u043e \u043f\u0440\u0438\u0432\u0435\u0434\u0451\u0442 \u043a \u043e\u0448\u0438\u0431\u043a\u0435 \u0438 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044e. \u041d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0437\u0430\u0449\u0438\u0442\u0438\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443 \u043e\u0442 \u043e\u0448\u0438\u0431\u043e\u043a \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 try...catch.
\u0423\u0440\u043e\u043a 5. \u041c\u043e\u0434\u0443\u043b\u044c\u043d\u043e\u0435 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435
- \u041c\u0435\u0442\u043e\u0434\u044b \u043a\u043b\u0430\u0441\u0441\u0430 TextAnalyzer (\u043f\u0440\u043e\u0435\u043a\u0442 TextAnalyzer.zip) \u043f\u043e\u043a\u0440\u044b\u0442\u044c \u0442\u0435\u0441\u0442\u0430\u043c\u0438.
\u0424\u0430\u0439\u043b\u044b \u043a \u0443\u0440\u043e\u043a\u0430\u043c
- \u0423\u0440\u043e\u043a 2 \u00ad Cities.zip
- \u0423\u0440\u043e\u043a 5 \u00ad TextAnalizer.zip
", "sort": 1, "materials": [5494, 5495, 13588]}}, {"model": "courses.homework", "pk": 52, "fields": {"token": "2#61", "course": 2, "theme": 27, "description": "\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0414\u043b\u044f \u0412\u0430\u0448\u0435\u0433\u043e \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430 \u043c\u044b \u0441\u043e\u0431\u0440\u0430\u043b\u0438 FAQ \u043f\u043e \u0447\u0430\u0441\u0442\u043e \u0437\u0430\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u043c \u0432\u043e\u043f\u0440\u043e\u0441\u0430\u043c. \u041f\u0440\u043e\u0441\u0438\u043c \u0432\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0441 \u043d\u0438\u043c\u0438 \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f.
\u0423\u0440\u043e\u043a 2. \u0421\u043e\u0437\u0434\u0430\u0451\u043c \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0444\u043e\u0440\u043c\u0443 \u0441 \u043f\u043e\u043b\u044f\u043c\u0438: \u201c\u0424\u0430\u043c\u0438\u043b\u0438\u044f\u201d, \u201c\u0418\u043c\u044f\u201d, \u201c\u041e\u0442\u0447\u0435\u0441\u0442\u0432\u043e\u201d, \u201c\u0414\u0430\u0442\u0430 \u0440\u043e\u0436\u0434\u0435\u043d\u0438\u044f\u201d \u0438 \u201c\u0413\u043e\u0440\u043e\u0434 \u043f\u0440\u043e\u0436\u0438\u0432\u0430\u043d\u0438\u044f\u201d.
\u0423\u0440\u043e\u043a 3. \u0421\u043e\u0431\u044b\u0442\u0438\u044f \u0438 \u0438\u0445 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0434\u0432\u0435 \u0444\u043e\u0440\u043c\u044b: \u043f\u0435\u0440\u0432\u0443\u044e \u00ad \u0441 \u0442\u0440\u0435\u043c\u0430 \u043f\u043e\u043b\u044f\u043c\u0438 \u00ad \u201c\u0424\u0430\u043c\u0438\u043b\u0438\u044f\u201d, \u201c\u0418\u043c\u044f\u201d \u0438 \u201c\u041e\u0442\u0447\u0435\u0441\u0442\u0432\u043e\u201d \u0438 \u043a\u043d\u043e\u043f\u043e\u0439, \u0438 \u0432\u0442\u043e\u0440\u0443\u044e \u0441 \u043e\u0434\u043d\u0438\u043c \u043f\u043e\u043b\u0435\u043c \u201c\u0424.\u0418.\u041e.\u201d \u0438 \u043a\u043d\u043e\u043f\u043a\u043e\u0439. \u041f\u0440\u0438 \u043d\u0430\u0436\u0430\u0442\u0438\u0438 \u043d\u0430 \u043a\u043d\u043e\u043f\u043a\u0443 \u043f\u0435\u0440\u0432\u0430\u044f \u0444\u043e\u0440\u043c\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u043f\u043e\u0434\u043c\u0435\u043d\u044f\u0442\u044c\u0441\u044f \u0432\u0442\u043e\u0440\u043e\u0439, \u0438 \u043d\u0430\u043e\u0431\u043e\u0440\u043e\u0442. \u041f\u0440\u0438 \u044d\u0442\u043e\u043c \u043f\u043e\u043b\u044f \u0444\u043e\u0440\u043c\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0437\u0430\u043f\u043e\u043b\u043d\u044f\u0442\u044c\u0441\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438: \u0435\u0441\u043b\u0438 \u0432 \u043f\u0435\u0440\u0432\u043e\u0439 \u0444\u043e\u0440\u043c\u0435 \u0431\u044b\u043b\u0438 \u0432\u0432\u0435\u0434\u0435\u043d\u044b \u0434\u0430\u043d\u043d\u044b\u0435, \u043e\u043d\u0438 \u0434\u043e\u043b\u0436\u043d\u044b \u043e\u043a\u0430\u0437\u0430\u0442\u044c\u0441\u044f \u0432\u043e \u0432\u0442\u043e\u0440\u043e\u0439 \u0444\u043e\u0440\u043c\u0435, \u0438 \u043d\u0430\u043e\u0431\u043e\u0440\u043e\u0442.
- \u0421\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e \u0438\u0437\u0443\u0447\u0438\u0442\u044c, \u043a\u0430\u043a \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u0441\u043e\u0447\u0435\u0442\u0430\u043d\u0438\u044f \u043a\u043b\u0430\u0432\u0438\u0448.
- \u0423\u0441\u043b\u043e\u0436\u043d\u0451\u043d\u043d\u043e\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435: \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043c\u0435\u0436\u0434\u0443 \u0434\u0432\u0443\u043c\u044f \u0444\u043e\u0440\u043c\u0430\u043c\u0438 \u0432 \u043e\u0431\u0435 \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e \u0442\u0430\u043a\u0436\u0435 \u043f\u0440\u0438 \u043d\u0430\u0436\u0430\u0442\u0438\u0438 \u043d\u0430 <Ctrl+Enter>.
\u0423\u0440\u043e\u043a 4. \u0414\u0438\u0430\u043b\u043e\u0433\u043e\u0432\u044b\u0435 \u043e\u043a\u043d\u0430
- \u0412 \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u043e\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438, \u0435\u0441\u043b\u0438 \u043d\u0435 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u043e \u043f\u043e\u043b\u0435 \u0441 \u0444\u0430\u043c\u0438\u043b\u0438\u0435\u0439 \u0438\u043b\u0438 \u0438\u043c\u0435\u043d\u0435\u043c, \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0430\u0442\u044c, \u0447\u0442\u043e \u043d\u0443\u0436\u043d\u043e \u0437\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u044c. \u0415\u0441\u043b\u0438 \u043d\u0435 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u043e \u043e\u0442\u0447\u0435\u0441\u0442\u0432\u043e, \u0441\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0442\u044c, \u0443\u0432\u0435\u0440\u0435\u043d\u044b \u043b\u0438 \u0412\u044b \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u043d\u0435 \u0445\u043e\u0442\u0438\u0442\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043e\u0442\u0447\u0435\u0441\u0442\u0432\u043e.
- \u0423\u0441\u043b\u043e\u0436\u043d\u0451\u043d\u043d\u043e\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435: \u0443\u0431\u0440\u0430\u0442\u044c \u043a\u043d\u043e\u043f\u043a\u0443 \u201cCancel\u201d \u0432 \u0434\u0438\u0430\u043b\u043e\u0433\u043e\u0432\u043e\u043c \u043e\u043a\u043d\u0435 \u0438\u0437 \u0442\u0440\u0451\u0445 \u043a\u043d\u043e\u043f\u043e\u043a (\u043d\u0430\u0439\u0442\u0438 \u044d\u0442\u0443 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0438 \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e).
\u0423\u0440\u043e\u043a 5. \u041c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u044b \u043a\u043e\u043c\u043f\u043e\u043d\u043e\u0432\u043a\u0438
- \u0412 \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u043e\u0439 \u0444\u043e\u0440\u043c\u0435 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u043d\u0435 \u0440\u0430\u0437\u044a\u0435\u0437\u0436\u0430\u043b\u0438\u0441\u044c \u043f\u0440\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0438 \u0440\u0430\u0437\u043c\u0435\u0440\u0430 \u043e\u043a\u043d\u0430.
\u0423\u0440\u043e\u043a 6. \u041a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b \u0438 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u044b
- \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432 \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0432\u043e \u0432\u0442\u043e\u0440\u0443\u044e \u0444\u043e\u0440\u043c\u0443 JProgressBar \u0438 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0442\u044c \u043d\u0430 \u043d\u0451\u043c, \u0432 \u043a\u0430\u043a\u043e\u0439 \u043c\u0435\u0440\u0435 \u0444\u043e\u0440\u043c\u0430 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0430 (\u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u0434\u043b\u0438\u043d\u0430 \u00ad \u043d\u0430 \u0412\u0430\u0448\u0435 \u0443\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u0438\u0435).
\u0423\u0440\u043e\u043a 7. \u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0441\u043b\u043e\u0436\u043d\u043e\u0433\u043e GUI
- \u041f\u043e \u043d\u0435\u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u043d\u044b\u043c \u0432 \u0432\u0438\u0434\u0435\u043e \u044d\u043a\u0440\u0430\u043d\u0430\u043c \u0440\u0430\u0441\u043f\u0438\u0441\u0430\u0442\u044c, \u0438\u0437 \u0447\u0435\u0433\u043e \u043e\u043d\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u0442. \u041d\u0430\u0440\u0438\u0441\u043e\u0432\u0430\u0442\u044c \u0441\u0445\u0435\u043c\u0443 \u043d\u0430 \u0431\u0443\u043c\u0430\u0433\u0435, \u043e\u0442\u0441\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u043b\u0438 \u0441\u0444\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438 \u043f\u0440\u0438\u0441\u043b\u0430\u0442\u044c.
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0438\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0438\u0437 \u0442\u0440\u0451\u0445 \u044d\u043a\u0440\u0430\u043d\u043e\u0432 \u0431\u0435\u0437 \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u044f \u0438 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0439 (\u0442\u043e\u043b\u044c\u043a\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0444\u043e\u0440\u043c): \u0432\u0432\u043e\u0434 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430, \u0432\u0432\u043e\u0434 \u043a\u043e\u0434\u0430 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f \u0438 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0441\u043f\u0438\u0441\u043a\u0430 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043e\u0432.
\u0424\u0430\u0439\u043b\u044b \u043a \u0443\u0440\u043e\u043a\u0430\u043c
\u0423\u0440\u043e\u043a 7 \u00ad Screens.zip
", "sort": 1, "materials": [5500, 13705]}}, {"model": "courses.homework", "pk": 53, "fields": {"token": "2#68", "course": 2, "theme": 28, "description": "\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0415\u0434\u0438\u043d\u043e\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435 \u043f\u043e \u0432\u0441\u0435\u043c\u0443 \u043c\u043e\u0434\u0443\u043b\u044e
- \u0414\u043e\u0434\u0435\u043b\u0430\u0442\u044c \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u044e\u0449\u0438\u0435 \u044d\u043a\u0440\u0430\u043d\u044b \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0438 \u043e\u0444\u043e\u0440\u043c\u0438\u0442\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0432\u0441\u0435\u0445 \u044d\u043a\u0440\u0430\u043d\u043e\u0432 \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u0434\u0438\u0437\u0430\u0439\u043d\u043e\u043c.
P.S. \u0435\u0441\u043b\u0438 \u0412\u0430\u0448 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0445\u043e\u0440\u043e\u0448\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0438 \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u0434\u0438\u0437\u0430\u0439\u043d\u043e\u043c, \u0442\u043e \u044d\u0442\u043e\u0433\u043e \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e :)
\u0424\u0430\u0439\u043b\u044b \u043a \u0443\u0440\u043e\u043a\u0430\u043c
- OpenSans.zip \u00ad \u0444\u0430\u0439\u043b\u044b \u0448\u0440\u0438\u0444\u0442\u043e\u0432
- GUI Components.zip \u00ad \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430
", "sort": 1, "materials": [6843, 6844]}}, {"model": "courses.homework", "pk": 54, "fields": {"token": "5#70", "course": 5, "theme": 70, "description": "\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0421\u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043d\u0430 WPF \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0434\u0438\u043f\u043b\u043e\u043c\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0434\u043b\u044f \u0447\u0442\u0435\u043d\u0438\u044f \u0422\u0432\u0438\u0442\u0442\u0435\u0440\u0430 \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u043c \u0434\u0438\u0437\u0430\u0439\u043d\u043e\u043c.
CoreData
\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u0430\u0448\u0443 \u0440\u0430\u0431\u043e\u0442\u0443 \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u0435\u0433\u043e \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0423\u0440\u043e\u043a 1. \u0427\u0442\u0435\u043d\u0438\u0435 \u0444\u0430\u0439\u043b\u043e\u0432
- \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u0434, \u043d\u0430 \u0432\u0445\u043e\u0434 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043f\u043e\u0434\u0430\u0451\u0442\u0441\u044f \u043f\u0443\u0442\u044c \u043a \u043f\u0430\u043f\u043a\u0435, \u0430 \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u043f\u0435\u0447\u0430\u0442\u0430\u0435\u0442\u0441\u044f \u0434\u0435\u0440\u0435\u0432\u043e \u0438\u0437 \u0444\u0430\u0439\u043b\u043e\u0432 \u0438 \u043f\u0430\u043f\u043e\u043a, \u043d\u0430\u0445\u043e\u0434\u044f\u0449\u0438\u0445\u0441\u044f \u0432 \u044d\u0442\u043e\u0439 \u043f\u0430\u043f\u043a\u0435. \u041f\u0440\u0438 \u044d\u0442\u043e\u043c \u0443 \u0444\u0430\u0439\u043b\u043e\u0432 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0443\u043a\u0430\u0437\u0430\u043d \u0440\u0430\u0437\u043c\u0435\u0440 \u0432 \u0431\u0430\u0439\u0442\u0430\u0445.
\u0423\u0440\u043e\u043a 2. \u0417\u0430\u043f\u0438\u0441\u044c \u0432 \u0444\u0430\u0439\u043b
- \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u0434, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u0443\u044e \u043f\u0430\u043f\u043a\u0443 \u0441 \u0444\u0430\u0439\u043b\u0430\u043c\u0438 \u0441 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435\u043c \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0432 \u0434\u0440\u0443\u0433\u0443\u044e \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u0443\u044e \u043f\u0430\u043f\u043a\u0443.
\u0423\u0440\u043e\u043a 3. \u0422\u0430\u0431\u043b\u0438\u0447\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b
- \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u044b\u0432\u0430\u0442\u044c \u0444\u0430\u0439\u043b\u044b \u0444\u043e\u0440\u043c\u0430\u0442\u0430 \u201cProbabilites.txt\u201d \u0432 \u0444\u0430\u0439\u043b\u044b \u0444\u043e\u0440\u043c\u0430\u0442\u0430 \u201cProbabilities \u00ad formatted.txt\u201d.
\u0423\u0440\u043e\u043a 4. \u0424\u0430\u0439\u043b\u044b XML \u0438 HTML
- \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u0434, \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u044e\u0449\u0438\u0439 \u0441\u043f\u0438\u0441\u043e\u043a \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u044b\u0445 \u043f\u0443\u0442\u0435\u0439 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0439, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 \u043a\u0443\u0440\u0441\u0430 \u00ad http://ucancode.ru/java/
\u0423\u0440\u043e\u043a 5. \u0424\u0430\u0439\u043b\u044b JSON
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043d\u043e\u0439 \u043a\u043d\u0438\u0433\u0438 \u0438\u0437 4\u00ad\u0433\u043e \u0443\u0440\u043e\u043a\u0430 5\u00ad\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f \u0432 JSON\u00ad \u0444\u043e\u0440\u043c\u0430\u0442 (\u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u0443 EXPORT\u0438 \u0437\u0430\u043f\u0440\u043e\u0441 \u043f\u0443\u0442\u0438 \u043a \u043f\u0430\u043f\u043a\u0435, \u0432 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0444\u0430\u0439\u043b).
\u0423\u0440\u043e\u043a 6. \u0427\u0442\u0435\u043d\u0438\u0435 \u0444\u0430\u0439\u043b\u043e\u0432 \u0438\u0437 \u0441\u0435\u0442\u0438
- \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0431\u0443\u0434\u0435\u0442 \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u0442\u044c \u0432 \u043f\u0430\u043f\u043a\u0443 \u0432\u0441\u0435 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0441 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0439 \u0432\u0435\u0431\u00ad\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b.
", "sort": 2, "materials": [8657, 8658, 8659]}}, {"model": "courses.homework", "pk": 57, "fields": {"token": "2#82", "course": 2, "theme": 30, "description": "\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0420\u0430\u0431\u043e\u0442\u0430 \u0441 \u0431\u0430\u0437\u0430\u043c\u0438 \u0434\u0430\u043d\u043d\u044b\u0445
- \u041f\u043e\u0432\u0442\u043e\u0440\u0438\u0442\u044c \u0441\u0434\u0435\u043b\u0430\u043d\u043d\u043e\u0435 \u0432 \u0443\u0440\u043e\u043a\u0435: \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c MySQL\u00ad\u0441\u0435\u0440\u0432\u0435\u0440 \u0438 MySQL Workbench, \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0431\u0430\u0437\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u201clearn\u201d \u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0432 \u043d\u0435\u0451 \u0434\u0430\u043c\u043f db.sql
\u0423\u0440\u043e\u043a 2. \u0422\u0430\u0431\u043b\u0438\u0446\u044b, \u043f\u043e\u043b\u044f, \u0437\u0430\u043f\u0438\u0441\u0438
- \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c SQL\u00ad\u0437\u0430\u043f\u0440\u043e\u0441\u044b:
\u25cb \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u043e\u0448\u0438\u0431\u043e\u0447\u043d\u043e \u043f\u0440\u0438\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0445 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u0432 \u043e\u0434\u043d\u0438\u0445 \u043e\u0442\u0434\u0435\u043b\u0430\u0445, \u0430 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u044f\u0442 \u0434\u0440\u0443\u0433\u0438\u043c\u0438;
\u25cb \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u0435\u0439 \u043e\u0442\u0434\u0435\u043b\u043e\u0432, \u0437\u0430\u0440\u043f\u043b\u0430\u0442\u0430 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u043c\u0435\u043d\u0435\u0435 115 000 \u0440\u0443\u0431\u043b\u0435\u0439 \u0432 \u043c\u0435\u0441\u044f\u0446;
\u25cb \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u0435\u0439 \u043e\u0442\u0434\u0435\u043b\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u044b\u0448\u043b\u0438 \u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0443 \u0434\u043e \u043c\u0430\u0440\u0442\u0430
\u0423\u0440\u043e\u043a 3. ORM: \u043e\u0431\u044a\u0435\u043a\u0442\u044b \u0438 \u0437\u0430\u043f\u0438\u0441\u0438
- \u041f\u0440\u043e\u043f\u0438\u0441\u0430\u0442\u044c \u0441\u0432\u044f\u0437\u044c one\u00adto\u00adone \u0434\u043b\u044f \u043f\u043e\u043b\u044f headId.
- SQL\u00ad\u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0438\u0437 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0433\u043e \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e HQL.
\u0423\u0440\u043e\u043a 4. \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435, \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043a\u043e\u0434, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u0440\u043e\u0436\u0434\u0430\u0442\u044c \u0442\u0430\u0431\u043b\u0438\u0446\u0443 \u0441 \u043e\u0442\u043f\u0443\u0441\u043a\u0430\u043c\u0438 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432 \u0438 \u0437\u0430\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0435\u0451 \u0442\u0435\u0441\u0442\u043e\u0432\u044b\u043c\u0438 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u0432\u0438\u0434\u0435: \u043f\u043e 4 3 \u00ad\u043d\u0435\u0434\u0435\u043b\u0438 \u043e\u0442\u043f\u0443\u0441\u043a\u0430 \u0435\u0436\u0435\u0433\u043e\u0434\u043d\u043e \u0432 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u0441\u043e \u0434\u043d\u044f \u043d\u0430\u0439\u043c\u0430 \u0434\u043e \u043a\u043e\u043d\u0446\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u0433\u043e\u0434\u0430.
- \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u0434, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b\u0432\u043e\u0434\u0438\u0442 \u043f\u0435\u0440\u0435\u0441\u0435\u0447\u0435\u043d\u0438\u044f \u043e\u0442\u043f\u0443\u0441\u043a\u043e\u0432 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432 \u0432 \u0442\u0435\u043a\u0443\u0449\u0435\u043c \u0438
\u0423\u0440\u043e\u043a 5. \u0421\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043a\u0430 \u0438 \u0433\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u043a\u0430
- \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c SQL\u00ad\u0437\u0430\u043f\u0440\u043e\u0441\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u0443\u0434\u0443\u0442 \u0432\u044b\u0432\u043e\u0434\u0438\u0442\u044c:
\u25cb \u0421\u043f\u0438\u0441\u043e\u043a \u043e\u0442\u0434\u0435\u043b\u043e\u0432 \u0441 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e\u043c \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432 \u0432 \u043a\u0430\u0436\u0434\u043e\u043c \u0438\u0437 \u043d\u0438\u0445
\u25cb \u0421\u043f\u0438\u0441\u043e\u043a \u043e\u0442\u0434\u0435\u043b\u043e\u0432, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043c\u0435\u043d\u044c\u0448\u0435 \u0442\u0440\u0451\u0445 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432
\u0424\u0430\u0439\u043b\u044b \u043a \u0443\u0440\u043e\u043a\u0430\u043c
- \u0423\u0440\u043e\u043a 1 \u00ad db.sql
- \u0423\u0440\u043e\u043a 3 \u00ad Hibernate.zip
", "sort": 1, "materials": [8664, 8662]}}, {"model": "courses.homework", "pk": 58, "fields": {"token": "2#89", "course": 2, "theme": 31, "description": "\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0423\u0440\u043e\u043a 2. \u041f\u0440\u0438\u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0438 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435
- \u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u00ad\u0441\u0435\u043a\u0443\u043d\u0434\u043e\u043c\u0435\u0440 \u0441 \u201c\u0431\u0435\u0433\u0443\u0449\u0438\u043c\u0438\u201d \u0446\u0438\u0444\u0440\u0430\u043c\u0438 \u0438 \u043a\u043d\u043e\u043f\u043a\u0430\u043c\u0438 \u201cStart\u201d, \u201cPause\u201d \u0438 \u201cStop\u201d (\u0441\u043e\u0437\u0434\u0430\u0451\u0442\u0435 \u0438\u0445 \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u0438\u043c\u0438 \u0431\u044b\u043b\u043e \u0443\u0434\u043e\u0431\u043d\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f).
\u0423\u0440\u043e\u043a 5. \u041f\u043e\u0442\u043e\u043a\u043e\u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c
- \u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0441 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u043c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u043c, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u043a\u0430\u0440\u0442\u0443 \u0441\u0430\u0439\u0442\u0430 \u00ad \u0432\u044b\u0432\u043e\u0434\u0438\u0442\u044c \u0432 \u0444\u0430\u0439\u043b \u0441\u043f\u0438\u0441\u043e\u043a \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0435\u0441\u0442\u044c \u043d\u0430 \u0441\u0430\u0439\u0442\u0435. \u0424\u043e\u0440\u043c\u0430\u0442 \u043a\u0430\u0440\u0442\u044b \u0441\u0430\u0439\u0442\u0430 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c:
http://ucancode.ru/mobile/conf.pdf
\u0412 \u0444\u0430\u0439\u043b\u0435 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u0441\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b, \u0440\u0430\u0437\u043c\u0435\u0449\u0451\u043d\u043d\u044b\u0435 \u043d\u0430 \u0442\u043e\u043c \u0436\u0435 \u0434\u043e\u043c\u0435\u043d\u0435 (\u0432 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u00ad http://ucancode.ru/). \u0421\u0441\u044b\u043b\u043a\u0438 \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u0441\u0434\u0432\u0438\u043d\u0443\u0442\u044b \u0432\u043f\u0440\u0430\u0432\u043e \u043d\u0430 \u0442\u0430\u043a\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432 \u0442\u0430\u0431\u0443\u043b\u044f\u0446\u0438\u0438, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0443\u0440\u043e\u0432\u043d\u044e \u0432\u043b\u043e\u0436\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0433\u043b\u0430\u0432\u043d\u043e\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b. \u0412 \u0441\u043f\u0438\u0441\u043a\u0435 \u043d\u0435 \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430 \u0434\u0440\u0443\u0433\u0438\u0435 \u0441\u0430\u0439\u0442\u044b.
\u0412 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c:
\u25cb \u041f\u043e\u043b\u0435 \u0432\u0432\u043e\u0434\u0430 \u0430\u0434\u0440\u0435\u0441\u0430 \u0441\u0430\u0439\u0442\u0430 (\u0430\u0434\u0440\u0435\u0441\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b, \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u043a\u0430\u0440\u0442\u0443).
\u25cb \u041f\u043e\u043b\u0435 \u0432\u044b\u0431\u043e\u0440\u0430 \u0444\u0430\u0439\u043b\u0430 (JFileChooser) \u0434\u043b\u044f \u0443\u043a\u0430\u0437\u0430\u043d\u0438\u044f \u0438\u043c\u0435\u043d\u0438 \u0444\u0430\u0439\u043b\u0430, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u0441\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b \u0441\u0430\u0439\u0442\u0430.
\u25cb \u041f\u043e\u043b\u0435 \u0441 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0435\u0439 \u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0441\u0431\u043e\u0440\u0430 \u0441\u0441\u044b\u043b\u043e\u043a (\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0442\u0440\u0430\u043d\u0438\u0446 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u043e\u0431\u043e\u0448\u043b\u0430 \u0438 \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043f\u0440\u043e\u0448\u043b\u043e \u0441 \u043c\u043e\u043c\u0435\u043d\u0442\u0430 \u0437\u0430\u043f\u0443\u0441\u043a\u0430).
\u25cb \u041a\u043d\u043e\u043f\u043a\u0438 \u201cStart/Stop\u201d \u0438 \u201cPause\u201d.
\u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u043f\u0440\u0438\u043c\u0435\u0447\u0430\u043d\u0438\u044f \u0438 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f:
- \u0414\u043b\u044f \u043e\u0442\u043b\u0430\u0434\u043a\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0441\u0430\u0439\u0442, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0439 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u043e\u0442\u0435\u043d \u0438\u043b\u0438 \u0442\u044b\u0441\u044f\u0447 \u0441\u0442\u0440\u0430\u043d\u0438\u0446 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, http://www.lenta.ru/).
- \u041f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u043e\u043b\u0436\u043d\u043e \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b \u0432 \u043c\u043d\u043e\u0433\u043e\u043f\u043e\u0442\u043e\u0447\u043d\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435. \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u043e\u0442\u043e\u043a\u043e\u0432 \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u043e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u043c (\u0432\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u00ad \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c, \u043a\u0430\u043a\u0438\u043c \u0438\u043c\u0435\u043d\u043d\u043e).
- \u041f\u0440\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u0435 \u0441\u0442\u0440\u0430\u043d\u0438\u0446, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u043d\u0443\u0436\u043d\u043e \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0430\u0443\u0437\u044b (\u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043c\u0435\u0442\u043e\u0434\u0430 \u201csleep\u201d), \u0447\u0442\u043e\u0431\u044b \u0441\u0430\u0439\u0442 \u043d\u0435 \u0437\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043b \u043a \u0441\u0435\u0431\u0435 \u0434\u043e\u0441\u0442\u0443\u043f \u0432\u0430\u0448\u0435\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f.
\u0423\u0440\u043e\u043a 6. \u0412\u0437\u0430\u0438\u043c\u043d\u0430\u044f \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0430
- \u041f\u0440\u043e\u0435\u043a\u0442 Transactions. \u0415\u0441\u0442\u044c \u0431\u0430\u043d\u043a, \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0439 \u043a\u043b\u0430\u0441\u0441\u043e\u043c Bank, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0435\u0441\u0442\u044c \u0441\u0447\u0435\u0442\u0430 (\u043a\u043b\u0430\u0441\u0441 Account) \u0441 \u0434\u0432\u0443\u043c\u044f \u043f\u043e\u043b\u044f\u043c\u0438 \u00ad money \u0438 accNumber. \u0412\u0441\u0435 \u0441\u0447\u0435\u0442\u0430 \u0445\u0440\u0430\u043d\u044f\u0442\u0441\u044f \u0432\u043d\u0443\u0442\u0440\u0438 \u0431\u0430\u043d\u043a\u0430. \u041a\u043b\u0438\u0435\u043d\u0442\u044b \u0431\u0430\u043d\u043a\u0430 (\u0438\u0445 \u043c\u043d\u043e\u0433\u043e) \u043c\u043e\u0433\u0443\u0442 \u0434\u0435\u043b\u0430\u0442\u044c \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u044b \u043c\u0435\u0436\u0434\u0443 \u0441\u0447\u0435\u0442\u0430\u043c\u0438, \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0442\u044c \u0431\u0430\u043b\u0430\u043d\u0441 \u043f\u043e \u0441\u0432\u043e\u0435\u043c\u0443 \u0441\u0447\u0435\u0442\u0443. \u0412\u0441\u0435 \u044d\u0442\u043e \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0432 highly concurrent (\u043c\u043d\u043e\u0433\u043e\u043f\u043e\u0442\u043e\u0447\u043d\u043e\u0439) \u0441\u0440\u0435\u0434\u0435. \u041f\u0440\u0438 \u044d\u0442\u043e\u043c, \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 \u043d\u0430 \u043a\u0440\u0443\u043f\u043d\u044b\u0435 \u0441\u0443\u043c\u043c\u044b (> 50000) \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u0421\u043b\u0443\u0436\u0431\u0435 \u0411\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438. \u041c\u043e\u0436\u043d\u043e \u0441\u0447\u0438\u0442\u0430\u0442\u044c, \u0447\u0442\u043e \u0442\u0430\u043a\u0438\u0445 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0439 \u043d\u0435 \u0431\u043e\u043b\u0435\u0435 5% \u043e\u0442 \u0432\u0441\u0435\u0445. \u0417\u0430 \u044d\u0442\u0443 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u0438 \u0443\u0436\u0435 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043a\u0435\u043c\u00ad\u0442\u043e \u043c\u0435\u0442\u043e\u0434 Bank.isFraud. \u0421\u043b\u0443\u0436\u0431\u0430 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u0432 \u0411\u0430\u043d\u043a\u0435 \u0432\u0441\u0435\u0433\u043e \u043e\u0434\u043d\u0430, \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043c\u0435\u0434\u043b\u0435\u043d\u043d\u043e \u0438 \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u0431\u043e\u043b\u0435\u0435 \u043e\u0434\u043d\u043e\u0439 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e. \u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 \u0443 \u043d\u0438\u0445 1000 \u043c\u0441. \u0415\u0441\u043b\u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0432\u044b\u044f\u0432\u0438\u043b\u0430 \u043c\u043e\u0448\u0435\u043d\u043d\u0438\u0447\u0435\u0441\u0442\u0432\u043e, \u0442\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0437\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043e\u0431\u0430 \u0441\u0447\u0435\u0442\u0430, \u0442.\u0435. \u0437\u0430\u043f\u0440\u0435\u0442\u0438\u0442\u044c \u043b\u044e\u0431\u044b\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043e\u0441\u0442\u0430\u0442\u043a\u043e\u0432.
\u041d\u0443\u0436\u043d\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c:
- \u041c\u0435\u0442\u043e\u0434 \u201ctransfer\u201d \u043a\u043b\u0430\u0441\u0441\u0430 Bank, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0438\u0442 \u0434\u0435\u043d\u044c\u0433\u0438 \u0441 \u043e\u0434\u043d\u043e\u0433\u043e \u0441\u0447\u0435\u0442\u0430 \u043d\u0430 \u0434\u0440\u0443\u0433\u043e\u0439. \u0415\u0441\u043b\u0438 \u0441\u0443\u043c\u043c\u0430 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 > 50000, \u0442\u043e \u043f\u043e\u0441\u043b\u0435 \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438, \u043e\u043d\u0430 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u0421\u043b\u0443\u0436\u0431\u0435 \u0411\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u2013 \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043c\u0435\u0442\u043e\u0434 isFraud. \u0415\u0441\u043b\u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044f true, \u0442\u043e \u0434\u0435\u043b\u0430\u0435\u0442\u0441\u044f \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0430 \u0441\u0447\u0435\u0442\u043e\u0432 (\u043a\u0430\u043a \u2013 \u043d\u0430 \u0432\u0430\u0448\u0435 \u0443\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u0438\u0435).
- \u041c\u0435\u0442\u043e\u0434 getBalance \u043a\u043b\u0430\u0441\u0441\u0430 Bank, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u043e\u0441\u0442\u0430\u0442\u043e\u043a \u043d\u0430 \u0441\u0447\u0435\u0442\u0435. \u041a\u043b\u0430\u0441\u0441\u044b Account \u0438 Bank \u043c\u043e\u0436\u043d\u043e \u0434\u043e\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u043a\u0430\u043a \u0443\u0433\u043e\u0434\u043d\u043e \u0434\u043b\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0437\u0430\u0434\u0430\u0447\u0438. \u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0430\u0434\u0435\u043a\u0432\u0430\u0442\u043d\u044b\u0439 \u0442\u0435\u0441\u0442 (\u0438\u043b\u0438 \u043d\u0430\u0431\u043e\u0440 \u0442\u0435\u0441\u0442\u043e\u0432) \u0434\u043b\u044f \u044d\u043c\u0443\u043b\u044f\u0446\u0438\u0438 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u044b \u044d\u0442\u0438\u0445 \u0434\u0432\u0443\u0445 \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u044b.
\u0424\u0430\u0439\u043b\u044b \u043a \u0443\u0440\u043e\u043a\u0430\u043c
- \u0423\u0440\u043e\u043a 1 \u00ad GUIMultithreading.zip
- \u0423\u0440\u043e\u043a 3 \u00ad Concurrency.zip
- \u0423\u0440\u043e\u043a 5 \u00ad ThreadSafety.zip
- \u0423\u0440\u043e\u043a 6 \u00ad Deadlock.zip \u0438 Transactions.zip
", "sort": 1, "materials": [8666, 8667, 8668, 8669, 8670]}}, {"model": "courses.homework", "pk": 59, "fields": {"token": "2#94", "course": 2, "theme": 32, "description": "\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0423\u0440\u043e\u043a 2. \u041e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f \u043f\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438
- \u0412 \u043f\u0440\u043e\u0435\u043a\u0442\u0435 CarNumberGenerator \u0432\u043d\u0435\u0441\u0442\u0438 \u0441\u0434\u0435\u043b\u0430\u043d\u043d\u044b\u0435 \u0432 \u0432\u0438\u0434\u0435\u043e \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0438 \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u0435\u0433\u043e \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c, \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u044b\u0432 \u0432\u044b\u0432\u043e\u0434 \u043d\u043e\u043c\u0435\u0440\u043e\u0432 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0432 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0444\u0430\u0439\u043b\u043e\u0432 \u0438\u0437 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u043f\u043e\u0442\u043e\u043a\u043e\u0432. \u0418\u0437\u043c\u0435\u0440\u0438\u0442\u044c \u0432\u0440\u0435\u043c\u044f, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c, \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0441\u0442\u0430\u043b\u0430 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0431\u044b\u0441\u0442\u0440\u0435\u0435 \u0438 \u043e\u0431\u044a\u044f\u0441\u043d\u0438\u0442\u044c,
\u0423\u0440\u043e\u043a 3. \u041e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f \u043f\u043e \u043f\u0430\u043c\u044f\u0442\u0438
- \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0449\u0438\u043a (\u0438\u043b\u0438, \u043b\u0443\u0447\u0448\u0435, \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440) \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0444\u0430\u0439\u043b\u043e\u0432. \u041e\u043d \u0434\u043e\u043b\u0436\u0435\u043d \u0443\u043c\u0435\u0442\u044c \u043f\u0440\u043e\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0442\u044c \u0444\u0430\u0439\u043b\u044b \u043b\u044e\u0431\u043e\u0433\u043e \u0440\u0430\u0437\u043c\u0435\u0440\u0430, \u043d\u0435 \u0437\u0430\u043d\u0438\u043c\u0430\u044f \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u043c\u043d\u043e\u0433\u043e \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438. \u0414\u043b\u044f \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u0444\u0430\u0439\u043b\u0430 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0444\u0430\u0439\u043b \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u043c 1,5 Gb, \u0438\u043c\u0435\u044e\u0449\u0438\u0439\u0441\u044f \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0435 VoteAnalyzer.
\u0423\u0440\u043e\u043a 4. \u041e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0431\u0430\u0437\u0430\u043c\u0438 \u0434\u0430\u043d\u043d\u044b\u0445
- \u041f\u043e\u0432\u0442\u043e\u0440\u0438\u0442\u044c \u0441\u0434\u0435\u043b\u0430\u043d\u043d\u043e\u0435 \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0435 VoteAnalyzer \u0438 \u043f\u043e\u043f\u044b\u0442\u0430\u0442\u044c\u0441\u044f \u0435\u0433\u043e \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438. \u0422\u0430\u043a\u0436\u0435 \u043f\u043e\u0438\u0441\u043a\u0430\u0442\u044c \u0432 \u043d\u0451\u043c \u043e\u0448\u0438\u0431\u043a\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0438, \u0435\u0441\u043b\u0438 \u0442\u0430\u043a\u0438\u0435 \u0435\u0441\u0442\u044c, \u0438\u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u0438\u0445. \u041f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0444\u0430\u0439\u043b \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u043c 1,5 Gb, \u0438\u043c\u0435\u044e\u0449\u0438\u0439\u0441\u044f \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u0435. \u0423\u0431\u0435\u0434\u0438\u0442\u044c\u0441\u044f, \u0447\u0442\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u043d\u0435 \u201c\u0432\u044b\u043b\u0435\u0442\u0430\u0435\u0442\u201d \u043f\u043e \u043f\u0430\u043c\u044f\u0442\u0438 \u0438 \u0438\u0437\u043c\u0435\u0440\u0438\u0442\u044c \u0432\u0440\u0435\u043c\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f.
\u0424\u0430\u0439\u043b\u044b \u043a \u0443\u0440\u043e\u043a\u0430\u043c
- \u0423\u0440\u043e\u043a 2 \u00ad CarNumberGenerator.zip
- \u0423\u0440\u043e\u043a 3 \u00ad VoteAnalyzer.zip (\u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435: \u0444\u0430\u0439\u043b \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 257 \u041c\u0431, \u0432 \u0440\u0430\u0437\u0430\u0440\u0445\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u043c \u0432\u0438\u0434\u0435 \u0431\u043e\u043b\u0435\u0435 1,5 \u0413\u0431)
", "sort": 1, "materials": [8673, 8671]}}, {"model": "courses.homework", "pk": 60, "fields": {"token": "2#101", "course": 2, "theme": 33, "description": "\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0423\u0440\u043e\u043a 1. \u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0432\u0435\u0431\u00ad\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b
- \u041d\u0430\u0439\u0442\u0438 \u0441\u0430\u0439\u0442, \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0440\u0430\u0437\u043c\u0435\u0447\u0435\u043d\u044b \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441\u043e \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043e\u043c HTML5 \u0438 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442 \u0432\u0441\u0435 \u0438\u043b\u0438 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0432\u043d\u0443\u0442\u0440\u0438 \u201cbody\u201d (\u201cheader\u201d, \u201cfooter\u201d, \u201cnav\u201d, \u201csection\u201d, \u201carticle\u201d \u0438 \u201caside\u201d).
\u0423\u0440\u043e\u043a 3. \u0411\u043b\u043e\u0447\u043d\u044b\u0435 HTML\u00ad\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0432\u0435\u0431\u00ad\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0432 \u043d\u0435\u0439 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0442\u044d\u0433\u043e\u0432: a, b, audio, br, code, div, h1\u00adh6, hr, iframe, img, p, \u0441\u043f\u0438\u0441\u043a\u0438 (ol, ul, li), table, th, tr, td, pre, video.
\u0423\u0440\u043e\u043a 4. \u041a\u0430\u0441\u043a\u0430\u0434\u043d\u044b\u0435 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0441\u0442\u0438\u043b\u0435\u0439 (CSS)
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0432\u0435\u0431\u00ad\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0432 \u043d\u0435\u0439 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0441\u0442\u0438\u043b\u0435\u0439: \u0432\u0441\u0435 \u0441\u0442\u0438\u043b\u0438 \u0434\u043b\u044f \u0430\u043d\u0438\u043c\u0430\u0446\u0438\u0438, @media\u00ad\u0437\u0430\u043f\u0440\u043e\u0441\u044b (\u0434\u043b\u044f \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0439 \u044d\u043a\u0440\u0430\u043d\u043e\u0432 \u00ad \u043d\u0430\u0441\u0442\u043e\u043b\u044c\u043d\u044b\u0439 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440, \u043f\u043b\u0430\u043d\u0448\u0435\u0442, \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d), border \u0441\u043e \u0432\u0441\u0435\u043c\u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u043c\u0438, cursor, margin, padding, position (+top, left, right, bottom \u0438 z\u00adindex), \u0432\u0441\u0435 \u043f\u0441\u0435\u0432\u0434\u043e\u043a\u043b\u0430\u0441\u0441\u044b \u0441\u0441\u044b\u043b\u043e\u043a, width, height, max\u00adheight, max\u00adwidth, min\u00adheight, min- width, border\u00adradius, list\u00adstyle, border\u00adcollapse, text\u00adalign, line\u00adheight, text\u00adindent, display, float, overflow, vertical\u00adalign, background, color, opacity, \u0432\u0441\u0435 \u0441\u0442\u0438\u043b\u0438 \u0434\u043b\u044f \u0448\u0440\u0438\u0444\u0442\u043e\u0432.
\u0423\u0440\u043e\u043a 5. \u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 JavaScript\u00ad\u043a\u043e\u0434\u0430
- \u041e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f \u0441 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0435\u0439 \u043f\u043e jQuery. \u041f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u0447\u0442\u043e\u00ad\u043d\u0438\u0431\u0443\u0434\u044c \u0438\u0437 jQueryUI.
\u0423\u0440\u043e\u043a 6. Java Server Pages (JSP)
- \u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u043c \u043c\u043e\u0434\u0443\u043b\u0435 (\u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f \u043f\u043e \u043f\u0430\u043c\u044f\u0442\u0438) \u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043b\u0441\u044f \u0444\u0430\u0439\u043b \u0441 \u0438\u0437\u0431\u0438\u0440\u0430\u0442\u0435\u043b\u044f\u043c\u0438 (\u043f\u0440\u043e\u0435\u043a\u0442 VoteAnalyzer). \u0420\u0435\u0430\u043b\u0438\u0437\u0443\u0439\u0442\u0435 \u0430\u043d\u0430\u043b\u0438\u0437 \u0444\u0430\u0439\u043b\u0430 (\u0441\u0430\u043c\u043e\u0433\u043e \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u043e\u0433\u043e \u00ad \u201cdata\u00ad0.2\u041c.xml\u201d) \u0432 \u0432\u0435\u0431\u00ad\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u0438 \u0432\u044b\u0432\u0435\u0434\u0438\u0442\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0432 \u0432\u0438\u0434\u0435 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u0432 \u0441\u0442\u0440\u043e\u043a\u0430\u0445 \u043d\u0430\u0445\u043e\u0434\u0438\u043b\u0438\u0441\u044c \u0438\u0437\u0431\u0438\u0440\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0443\u0447\u0430\u0441\u0442\u043a\u0438, \u0432 \u0441\u0442\u043e\u043b\u0431\u0446\u0430\u0445 \u00ad \u0434\u043d\u0438, \u0430 \u0432 \u044f\u0447\u0435\u0439\u043a\u0430\u0445 \u00ad \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u044b \u0432\u0440\u0435\u043c\u0435\u043d\u0438. \u0424\u0430\u0439\u043b \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u043c\u043e\u0436\u0435\u0442 \u043b\u0435\u0436\u0430\u0442\u044c \u0433\u0434\u0435 \u0443\u0433\u043e\u0434\u043d\u043e.
", "sort": 2, "materials": []}}, {"model": "courses.homework", "pk": 61, "fields": {"token": "2#107", "course": 2, "theme": 34, "description": "\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0423\u0440\u043e\u043a 1. \u0424\u043e\u0440\u043c\u044b \u0438 \u043f\u043e\u043b\u044f \u0444\u043e\u0440\u043c
- \u041f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u0432\u0441\u0435 \u0442\u0438\u043f\u044b input\u00ad\u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432, \u0432\u0432\u0435\u0434\u0451\u043d\u043d\u044b\u0435 \u0432 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0435 HTML5.
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0444\u043e\u0440\u043c\u0443 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u0437\u0430\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u0430 \u043a\u0440\u0435\u0434\u0438\u0442 \u0434\u043b\u044f \u0443\u0441\u043b\u043e\u0432\u043d\u043e\u0433\u043e \u0431\u0430\u043d\u043a\u0430. \u0424\u043e\u0440\u043c\u0430 \u043f\u043e \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u044e \u0434\u043e\u043b\u0436\u043d\u0430 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0440\u0435\u0430\u043b\u044c\u043d\u043e.
\u0423\u0440\u043e\u043a 2. \u041e\u0442\u043f\u0440\u0430\u0432\u043a\u0430 \u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445
- \u0412 \u0444\u043e\u0440\u043c\u0435 \u0437\u0430\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u0430 \u043a\u0440\u0435\u0434\u0438\u0442 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u043c\u0435\u0442\u043e\u0434\u043e\u043c \u201cPOST\u201d \u043d\u0430 \u0434\u0440\u0443\u0433\u0443\u044e \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0434\u043e\u043b\u0436\u043d\u0430 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0442\u044c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 JSON. \u0412 \u044d\u0442\u043e\u043c JSON \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0432\u0441\u0435\u0445 \u043f\u043e\u043b\u0435\u0439, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0437\u0430\u043f\u043e\u043b\u043d\u0438\u043b \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0432 \u0444\u043e\u0440\u043c\u0435, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043e \u0432\u044b\u0434\u0430\u0447\u0435 \u043a\u0440\u0435\u0434\u0438\u0442\u0430 (true \u0438\u043b\u0438 false), \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u043d\u043e\u0435 \u043d\u0430 \u0431\u043e\u043b\u0435\u0435\u00ad \u043c\u0435\u043d\u0435\u0435 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u0439 \u043b\u043e\u0433\u0438\u043a\u0435 (\u043a\u0430\u043a \u0431\u0443\u0434\u0442\u043e \u0412\u0430\u043c \u0434\u0430\u043b\u0438 \u0437\u0430\u0434\u0430\u0447\u0443 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0434\u043b\u044f \u0432\u043d\u043e\u0432\u044c \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u044e\u0449\u0435\u0433\u043e\u0441\u044f \u0431\u0430\u043d\u043a\u0430 \u0444\u043e\u0440\u043c\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u043a\u0440\u0435\u0434\u0438\u0442\u043d\u044b\u043c \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u0430\u043c \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0442\u044c \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043e \u0432\u044b\u0434\u0430\u0447\u0435 \u043a\u0440\u0435\u0434\u0438\u0442\u0430).
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0444\u043e\u0440\u043c\u0443 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0444\u0430\u0439\u043b\u0430 (\u043c\u0435\u0442\u043e\u0434\u043e\u043c POST), \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0442\u044c \u0435\u0433\u043e \u043d\u0430 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0435 \u043f\u043e \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u043c\u0443 \u043f\u0443\u0442\u0438 (\u0437\u0430\u0434\u0430\u043d\u043d\u043e\u043c\u0443, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0445).
\u0423\u0440\u043e\u043a 3. \u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0438 \u043e\u0442\u0432\u0435\u0442\u0430
- \u0412 \u0444\u043e\u0440\u043c\u0435 \u0434\u043b\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0444\u0430\u0439\u043b\u043e\u0432 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0441\u043f\u0438\u0441\u043a\u0430 \u0444\u0430\u0439\u043b\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u044b\u043b\u0438 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u044b \u0447\u0435\u0440\u0435\u0437 \u043d\u0435\u0451 \u0440\u0430\u043d\u0435\u0435. \u0421\u043f\u0438\u0441\u043e\u043a \u0434\u043e\u043b\u0436\u0435\u043d \u0441\u043e\u0441\u0442\u043e\u044f\u0442\u044c \u0438\u0437 \u0441\u0441\u044b\u043b\u043e\u043a \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u201cdownload.jsp\u201d, \u043f\u0440\u0438 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0435 \u043f\u043e \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b \u0431\u0443\u0434\u0435\u0442 \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u0442\u044c\u0441\u044f.
\u0423\u0440\u043e\u043a 4. \u041a\u0443\u043a\u0438 \u0438 \u0441\u0435\u0441\u0441\u0438\u0438
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u0435\u0439 \u0444\u043e\u0440\u043c\u044b \u0437\u0430\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u0430 \u043a\u0440\u0435\u0434\u0438\u0442 \u0447\u0435\u0440\u0435\u0437 \u043a\u0443\u043a\u0438 \u0438 \u0447\u0435\u0440\u0435\u0437 \u0441\u0435\u0441\u0441\u0438\u0438 (\u0432 \u043e\u0434\u043d\u043e\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u0438\u043b\u0438 \u0432 \u0434\u0432\u0443\u0445 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u00ad \u043f\u043e \u0412\u0430\u0448\u0435\u043c\u0443 \u0436\u0435\u043b\u0430\u043d\u0438\u044e) \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u0434\u0430\u043d\u043d\u044b\u0435 \u043f\u043e\u0441\u043b\u0435 \u043e\u0448\u0438\u0431\u043e\u0447\u043d\u043e\u0439 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u0444\u043e\u0440\u043c\u044b \u043d\u0435 \u043f\u0440\u043e\u043f\u0430\u0434\u0430\u043b\u0438.
\u0423\u0440\u043e\u043a 5. \u0412\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441 \u0411\u0414
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0431\u0443\u0434\u0435\u0442 \u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0438 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0442\u044c\u0441\u044f \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u043e\u0432, \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043f\u043e\u0441\u0435\u0449\u0430\u043b\u0438 \u044d\u0442\u0443 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443. \u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0443 \u043c\u043e\u0436\u043d\u043e \u043e\u0442\u043e\u0431\u0440\u0430\u0437\u0438\u0442\u044c \u0432 \u0432\u0438\u0434\u0435 \u0442\u0430\u0431\u043b\u0438\u0446\u044b.
\u0424\u0430\u0439\u043b\u044b \u043a \u0443\u0440\u043e\u043a\u0430\u043c
- \u0423\u0440\u043e\u043a 5 \u00ad DBConnection.java
", "sort": 1, "materials": [8675]}}, {"model": "courses.homework", "pk": 62, "fields": {"token": "7#3", "course": 7, "theme": 89, "description": "\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0423\u0440\u043e\u043a 1: \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0441\u0440\u0435\u0434\u044b \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f
\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0423\u0440\u043e\u043a 2
- \u0421\u043e\u0437\u0434\u0430\u0439\u0442\u0435 \u0441\u0432\u043e\u044e default activity \u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0432 \u043d\u0435\u0439 layout \u043e\u0442 OtherActivity.
\u0423\u0440\u043e\u043a 3
- \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0435\u0449\u0435 \u043e\u0434\u043d\u0443 \u043a\u043d\u043e\u043f\u043a\u0443 \u0438 \u043e\u0447\u0438\u0449\u0430\u0442\u044c TextView \u043f\u043e \u0435\u0435 \u043d\u0430\u0436\u0430\u0442\u0438\u044e.
\u0423\u0440\u043e\u043a 4
- \u041f\u043e\u043c\u0435\u0441\u0442\u0438\u0442\u0435 \u0432 mdpi \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044e \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u0441\u0432\u043e\u0435 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 (\u043d\u0435 \u043e\u0447\u0435\u043d\u044c \u0431\u043e\u043b\u044c\u0448\u043e\u0435, \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e \u043d\u0435 \u0431\u043e\u043b\u0435\u0435 300px \u043f\u043e \u043d\u0430\u0438\u0431\u043e\u043b\u044c\u0448\u0435\u043c\u0443 \u0438\u0437\u043c\u0435\u0440\u0435\u043d\u0438\u044e) \u0438 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0438\u0442\u0435 \u0435\u0433\u043e \u0432 \u043d\u0430\u0448\u0435\u043c FrameLatyout \u0432 ImageView \u0441\u043d\u0438\u0437\u0443 \u043f\u043e \u0446\u0435\u043d\u0442\u0440\u0443.
\u041f\u0440\u043e\u0441\u0438\u043c \u0432 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 \u043d\u0438\u0436\u0435, \u043d\u0430\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u0430\u0440\u0445\u0438\u0432 \u0441\u043e \u0441\u043a\u0440\u0438\u043d\u0448\u043e\u0442\u0430\u043c\u0438 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u044e\u0449\u0438\u0445 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044e \u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0443.
1. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c IDE \u0438\u043b\u0438 \u043c\u043e\u0449\u043d\u044b\u0439 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0439 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440.
Sublime text 3 (\u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u043e, \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430)
Notepad++ (\u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u043e)
https://notepad-plus-plus
PhpStorm (\u043f\u043b\u0430\u0442\u043d\u043e, \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0441\u0435\u0440\u044c\u0435\u0437\u043d\u044b\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432)
https://www.jetbrains.com
2. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u044b\u0439 FTP \u043a\u043b\u0438\u0435\u043d\u0442 FileZilla
3. \u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044f \u043d\u0430 \u043e\u0431\u043b\u0430\u0447\u043d\u043e\u043c \u0445\u043e\u0441\u0442\u0438\u043d\u0433\u0435.
\u041d\u0430 \u0432\u044b\u0431\u043e\u0440
timeweb.ru (\u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u043c \u0434\u043b\u044f \u0441\u0442\u0430\u0440\u0442\u0430, )
4. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0411\u0438\u0442\u0440\u0438\u043a\u0441
\u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f \u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430
http://dev.1c-bitrix.ru/l
\u0420\u0430\u0431\u043e\u0442\u0430 \u0441 \u0410\u0434\u043c\u0438\u043d.\u043f\u0430\u043d\u0435\u043b\u044c\u044e
http://dev.1c-bitrix.ru/l
Api bitrix
http://dev.1c-bitrix.ru/a
Api bitrix (D7)
https://dev.1c-bitrix.ru/
\u0418\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0438 \u0431\u0438\u0442\u0440\u0438\u043a\u0441 \u043e\u043d\u043b\u0430\u0439\u043d
", "sort": 1, "materials": []}}, {"model": "courses.homework", "pk": 65, "fields": {"token": "7#12", "course": 7, "theme": 94, "description": "\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0423\u0440\u043e\u043a 2
\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0423\u0440\u043e\u043a 2
- \u0414\u0417: \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0432 \u0434\u0438\u043f\u043b\u043e\u043c\u043d\u043e\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0439 \u0430\u0432\u0442\u043e\u0440\u043e\u0432 \u0442\u0432\u0438\u0442\u043e\u0432 \u0432 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u0443\u044e \u043f\u0430\u043f\u043a\u0443 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043b\u0430\u0441\u0441\u0430 WebClient.
\u0423\u0440\u043e\u043a 3
- \u0414\u0417: \u0412 \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0441 \u0422\u0432\u0438\u0442\u0442\u0435\u0440\u043e\u043c \u043f\u0435\u0440\u0435\u043b\u043e\u0436\u0438\u0442\u044c \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0435 \u0442\u0432\u0438\u0442\u044b \u0432 \u043e\u0431\u044a\u0435\u043a\u0442\u044b \u0441\u0432\u043e\u0435\u0433\u043e \u043a\u043b\u0430\u0441\u0441\u0430 \u0438 \u0441\u0435\u0440\u0438\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0438\u0445 \u0432 XML-\u0444\u0430\u0439\u043b.
\u0423\u0440\u043e\u043a 4
- \u0414\u0417: \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0430 WPF \u043f\u0440\u043e\u0441\u0442\u0435\u0439\u0448\u0438\u0439 \u043f\u0440\u043e\u0432\u043e\u0434\u043d\u0438\u043a \u0441\u043e \u0441\u043f\u0438\u0441\u043a\u043e\u043c \u043f\u043e\u0434\u043a\u0430\u0442\u0430\u043b\u043e\u0433\u043e\u0432 \u0438 \u0444\u0430\u0439\u043b\u043e\u0432 \u0432 \u0442\u0435\u043a\u0443\u0449\u0435\u043c \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0435, \u0441 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c\u044e \u043f\u0435\u0440\u0435\u0439\u0442\u0438 \u043d\u0430\u0432\u0435\u0440\u0445 \u0438\u043b\u0438 \u0437\u0430\u0439\u0442\u0438 \u0432\u043d\u0443\u0442\u0440\u044c \u043f\u043e\u0434\u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0430, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0441 \u0444\u0443\u043d\u043a\u0446\u0438\u0435\u0439 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430 \u043d\u0430 \u0447\u0442\u0435\u043d\u0438\u0435.
\u041f\u0440\u043e\u0441\u0438\u043c \u0432 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u0441\u0441\u044b\u043b\u043a\u0443 \u043d\u0430 \u0434\u0435\u043c\u043e \u0438 \u0434\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u0432\u0445\u043e\u0434\u0430 \u0432 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u043f\u0430\u043d\u0435\u043b\u044c
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0434\u0435\u043c\u043e \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0435 http://bitrixlabs.ru/#create-demo
- \u041e\u0442\u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432 \u0434\u0435\u043c\u043e \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u044d\u0440\u043c\u0438\u0442\u0430\u0436\u0430 3 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u043d\u0430 \u0441\u0430\u0439\u0442\u0435 \u0438 1 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u0432 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u0430\u043d\u0435\u043b\u0438.
", "sort": 1, "materials": []}}, {"model": "courses.homework", "pk": 68, "fields": {"token": "6#20", "course": 6, "theme": 83, "description": "\u041f\u0440\u043e\u0441\u0438\u043c \u0441\u0441\u044b\u043b\u043a\u0443 \u043d\u0430 \u0441\u0432\u0435\u0440\u0441\u0442\u0430\u043d\u043d\u044b\u0439 \u043b\u0435\u043d\u0434\u0438\u043d\u0433 \u043d\u0430\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
- \u0421\u043e\u0437\u0434\u0430\u0439\u0442\u0435 \u0432\u0435\u0440\u0441\u0442\u043a\u0443 \u0438\u0437 \u043b\u0435\u043d\u0434\u0438\u043d\u0433\u0430. \u0412\u0435\u0440\u0441\u0442\u043a\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u0431\u044b\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0435
\u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u043a\u0440\u0438\u0442\u0435\u0440\u0438\u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0434\u0437:
\u2022 \u041b\u0435\u043d\u0434\u0438\u043d\u0433 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u043f\u043e \u0430\u0434\u0440\u0435\u0441\u0443 {\u0432\u0430\u0448 \u0434\u043e\u043c\u0435\u043d}/super_landing/
\u2022 \u0412\u0441\u0435 JS \u0441\u043a\u0440\u0438\u043f\u0442\u044b \u0438 CSS \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u044b \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0411\u0438\u0442\u0440\u0438\u043a\u0441 \u0444\u0443\u043d\u043a\u0446\u0438\u0439, \u0430 \u043d\u0435 html \u0442\u0435\u0433\u0430\u043c\u0438.
\u2022 \u0418\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u0432 \u043b\u0435\u043d\u0434\u0438\u043d\u0433\u0435 \u0434\u043e\u043b\u0436\u043d\u044b \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0442\u0441\u044f.
", "sort": 1, "materials": [10564]}}, {"model": "courses.homework", "pk": 69, "fields": {"token": "3#52", "course": 3, "theme": 55, "description": "CoreGraphics, \u0410\u043d\u0438\u043c\u0430\u0446\u0438\u044f \u0432 iOS
a. \u0421\u0434\u0435\u043b\u0430\u0442\u044c 2 \u044d\u043a\u0440\u0430\u043d\u0430 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0444\u0438\u043b\u044c\u0442\u0440\u0432 \u043f\u043e\u0441\u043b\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0444\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0438 \u0441 \u043a\u0430\u043c\u0435\u0440\u044b
b. \u041f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 FilterView \u0432 \u043a\u043e\u0434 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0438 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043d\u0430 \u043e\u0441\u043d\u0430\u0432\u0430\u043d\u0438\u0438 \u043d\u0435\u0433\u043e 3 \u0438\u043b\u0438 \u0431\u043e\u043b\u044c\u0448\u0435 \u0444\u0438\u043b\u044c\u0442\u0440\u0430
c. \u041f\u043e \u043d\u0430\u0436\u0430\u0442\u0438\u044e UIBarButtonItem(\u0441 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043c \u0433\u0430\u043b\u043e\u0447\u043a\u0438) \u043d\u0430 \u0432\u0442\u043e\u0440\u043e\u043c \u044d\u043a\u0440\u0430\u043d\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0442\u044c \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u043e\u0435 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0432 \u0433\u0430\u043b\u0435\u0440\u0435\u044e \u043d\u0430 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0435
", "sort": 1, "materials": []}}, {"model": "courses.homework", "pk": 71, "fields": {"token": "5#81", "course": 5, "theme": 72, "description": "\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0423\u0440\u043e\u043a 2
- \u041f\u0440\u0438\u043c\u0435\u043d\u0438\u0442\u044c LINQ \u0434\u043b\u044f \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u0438 \u0442\u0440\u0435\u043d\u0434\u043e\u0432, \u043d\u0430\u0447\u0438\u043d\u0430\u044e\u0449\u0438\u0445\u0441\u044f \u043d\u0430 #, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u043d\u0438\u044f \u0442\u0440\u0435\u043d\u0434\u043e\u0432 \u0438 \u0442\u0432\u0438\u0442\u043e\u0432 \u0432 \u043e\u0431\u044a\u0435\u043a\u0442\u044b \u0441\u0432\u043e\u0438\u0445 \u043a\u043b\u0430\u0441\u0441\u043e\u0432. \u0412\u044b\u0431\u0440\u0430\u0442\u044c \u043f\u0435\u0440\u0432\u044b\u0435 10 \u0442\u0432\u0438\u0442\u043e\u0432 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043c\u0435\u0442\u043e\u0434\u0430 Take.
\u0423\u0440\u043e\u043a 4
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0441\u0435\u043a\u0443\u043d\u0434\u043e\u043c\u0435\u0440 \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u043e\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438. \u0417\u0430\u043f\u0443\u0441\u043a/\u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0441\u0435\u043a\u0443\u043d\u0434\u043e\u043c\u0435\u0440\u0430 \u043f\u043e \u043d\u0430\u0436\u0430\u0442\u0438\u044e \u043d\u0430 \u041f\u0440\u043e\u0431\u0435\u043b.
\u0423\u0440\u043e\u043a 5
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u043e\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0442\u0440\u0435\u043d\u0434\u043e\u0432, \u0442\u0432\u0438\u0442\u043e\u0432 \u0438 \u0444\u043e\u0442\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0432 \u0434\u0438\u043f\u043b\u043e\u043c\u043d\u043e\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u0435.
\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0423\u0440\u043e\u043a 1
- \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c MS SQL Server Express + Management Studio.
\u0423\u0440\u043e\u043a 2
- \u0421\u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0431\u0430\u0437\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u043c\u043e\u0434\u0435\u043b\u0438 \u0422\u0432\u0438\u0442\u0442\u0435\u0440\u0430 \u0441 \u0442\u0430\u0431\u043b\u0438\u0446\u0430\u043c\u0438: \u0442\u0432\u0438\u0442\u044b, \u0445\u044d\u0448\u0442\u044d\u0433\u0438, \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438, \u043f\u043e\u0434\u043f\u0438\u0441\u043a\u0438.
\u0423\u0440\u043e\u043a 3
- \u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c SQL-\u0441\u043a\u0440\u0438\u043f\u0442\u044b \u0434\u043b\u044f: \u0432\u044b\u0431\u043e\u0440\u043a\u0438 \u043f\u0435\u0440\u0432\u044b\u0445 10 \u0442\u0432\u0438\u0442\u043e\u0432 \u0441 \u0430\u0432\u0442\u043e\u0440\u0430\u043c\u0438, \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0442\u0432\u0438\u0442\u0430, \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0442\u0432\u0438\u0442\u0430, \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u044f \u0442\u0432\u0438\u0442\u0430.
\u0423\u0440\u043e\u043a 4
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u0434\u043b\u044f \u0422\u0432\u0438\u0442\u0442\u0435\u0440\u0430 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0431\u0430\u0437\u0443, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u044b ADO.NET; \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u043f\u0435\u0440\u0432\u044b\u0435 10 \u0442\u0432\u0438\u0442\u043e\u0432 \u0438\u0437 \u0431\u0430\u0437\u044b, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f SqlDataReader.
\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u0443\u043f\u0430\u043a\u0443\u0439\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435 \u0412\u0430\u043c\u0438 \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0432 \u043e\u0434\u0438\u043d \u0430\u0440\u0445\u0438\u0432 \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443, \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
\u0423\u0440\u043e\u043a 1
- \u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043c\u043e\u0434\u0435\u043b\u044c \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u0422\u0432\u0438\u0442\u0442\u0435\u0440\u0430 (\u0431\u0435\u0437 \u0441\u0432\u044f\u0437\u0435\u0439) \u0438 \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0431\u0430\u0437\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u043e\u0434\u0445\u043e\u0434\u0430 Code first.
\u0423\u0440\u043e\u043a 2
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e LINQ to Entities \u0432\u044b\u0431\u043e\u0440\u043a\u0443 \u043f\u0435\u0440\u0432\u044b\u0445 10 \u0442\u0432\u0438\u0442\u043e\u0432 \u043f\u043e \u0443\u0431\u044b\u0432\u0430\u043d\u0438\u044e \u0432\u0440\u0435\u043c\u0435\u043d\u0438, \u0437\u0430\u0442\u0435\u043c \u043f\u043e Id. \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0432\u044b\u0431\u043e\u0440\u043a\u0443 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0439 \u0442\u0440\u0435\u043d\u0434\u043e\u0432 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u0440\u043e\u0435\u043a\u0446\u0438\u0438.
\u0423\u0440\u043e\u043a 3
- \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432 \u043c\u043e\u0434\u0435\u043b\u044c \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u0422\u0432\u0438\u0442\u0442\u0435\u0440\u0430 \u0441\u0432\u044f\u0437\u0438 \u043c\u0435\u0436\u0434\u0443 \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u044f\u043c\u0438.
\u0423\u0440\u043e\u043a 4
- \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435/\u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u043c\u043e\u0434\u0435\u043b\u0438 \u0422\u0432\u0438\u0442\u0442\u0435\u0440\u0430 \u0441 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435\u043c \u0432 \u0431\u0430\u0437\u0443, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f Entity Framework.
\u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 iPad \u0438 iPhone Plus
a. \u041f\u0435\u0440\u0435\u043d\u0435\u0441\u0442\u0438 \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043d\u0438\u043a\u043d\u0435\u0439\u043c\u0430 \u0432 \u044d\u043a\u0440\u0430\u043d \u041d\u0430\u0441\u0442\u0440\u043e\u0435\u043a (\u0438\u043b\u0438 Settings) \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u043e\u043c \u043d\u0430 SplitView
b. \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432 \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043f\u0443\u043d\u043a\u0442 \u043c\u0435\u043d\u044e \u201cAbout\u201d \u0441 \u0444\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0435\u0439 (\u0432\u0430\u0448\u0435\u0439 \u0438\u043b\u0438 \u043b\u044e\u0431\u043e\u0439), \u0432\u0430\u0448\u0438\u043c \u0438\u043c\u0435\u043d\u0435\u043c \u0438 \u0432\u0435\u0440\u0441\u0438\u0435\u0439 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f
c. \u0412 \u044d\u043a\u0440\u0430\u043d\u0435 \u201cAbout\u201d: \u0435\u0441\u043b\u0438 SizeClass \u043f\u043e \u0432\u044b\u0441\u043e\u0442\u0435 Compact - \u0444\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u044f \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0442\u044c\u0441\u044f \u043d\u0435 \u0434\u043e\u043b\u0436\u043d\u0430, \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u0435\u0440\u0441\u0438\u044f \u0438 \u0432\u0430\u0448\u0435 \u0438\u043c\u044f. \u041d\u0430 Regular \u043f\u043e \u0432\u044b\u0441\u043e\u0442\u0435 - \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0442\u044c \u0432\u0441\u0435.
", "sort": 1, "materials": []}}, {"model": "courses.exam", "pk": 1, "fields": {"token": "1#32", "sort": 1, "course": 1, "theme": 76, "description": "\u041f\u0440\u0438\u0448\u043b\u043e \u0432\u0440\u0435\u043c\u044f \u0432\u0430\u0448\u0435\u0439 \u0434\u0438\u043f\u043b\u043e\u043c\u043d\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u044b. \u041f\u0440\u043e\u0441\u044c\u0431\u0430 \u043e\u0442\u043d\u0435\u0441\u0442\u0438\u0441\u044c \u043a \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044e \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e.
\u041f\u0440\u043e\u0439\u0434\u0438\u0442\u0435 \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0435 \u0438 \u0441\u043a\u0430\u0447\u0430\u0439\u0442\u0435 \u0432\u0441\u0435 \u0444\u0430\u0439\u043b\u044b \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u0435\u043d\u0435\u043d\u0438\u044f \u0437\u0430\u0434\u0430\u043d\u0438\u044f:
https://drive.google.com/file/
\u0414\u0438\u043f\u043b\u043e\u043c\u043d\u0430\u044f \u0440\u0430\u0431\u043e\u0442\u0430 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u043e\u0439 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0437\u0430\u043a\u0430\u0437\u0430 \u043d\u0430 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u043c\u0430\u0433\u0430\u0437\u0438\u043d\u0430.
\u0412\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0435 \u0433\u043e\u0442\u043e\u0432\u044b\u0439 \u0434\u0438\u0437\u0430\u0439\u043d (PSD), \u0432\u0441\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438 \u0434\u043b\u044f \u0442\u043e\u0432\u0430\u0440\u043e\u0432, \u0438\u0445 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f, \u0446\u0435\u043d\u044b. \u0412\u044b \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0435 \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 SQL \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 (Postgresql), PHP, Javascript, CSS \u0438 HTML (5), \u0441\u0430\u043c\u0438 \u043f\u0438\u0448\u0435\u0442\u0435 \u0431\u044d\u043a-\u044d\u043d\u0434 \u0438 \u0432\u0435\u0440\u0441\u0442\u0430\u0435\u0442\u0435 \u0444\u0440\u043e\u043d\u0442-\u044d\u043d\u0434.
\u0421\u0430\u0439\u0442 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u043c\u0430\u0433\u0430\u0437\u0438\u043d\u0430 \u0434\u043e\u043b\u0436\u0435\u043d \u0434\u0430\u0432\u0430\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438:
- \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f, \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u044f \u0438 \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 (\u043f\u043e\u043a\u0443\u043f\u0430\u0442\u0435\u043b\u0435\u0439) \u0438 \u0438\u0445 \u0434\u0430\u043d\u043d\u044b\u0445;
- \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0447\u0435\u0440\u0435\u0437 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u0441\u0435\u0441\u0441\u0438\u0439 \u043f\u043e \u043f\u0430\u0440\u0435 \u0438\u043c\u044f-\u043f\u0430\u0440\u043e\u043b\u044c \u0438 \u0440\u0430\u0437\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 (\u043e\u0431\u0449\u0430\u044f \u0437\u043e\u043d\u0430, \u043b\u0438\u0447\u043d\u044b\u0435 \u043a\u0430\u0431\u0438\u043d\u0435\u0442\u044b \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439, \u0437\u043e\u043d\u0430 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u0441\u0430\u0439\u0442\u0430 / \u043f\u0440\u043e\u0434\u0430\u0432\u0446\u0430);
- \u0445\u043e\u0442\u044f \u0431\u044b \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0439 \u0430\u043d\u0438\u043c\u0430\u0446\u0438\u0438 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0441\u0430\u0439\u0442\u0430 (e.g. \u043c\u0435\u043d\u044e, \u0438\u043d\u0434\u0438\u0432\u0438\u0434\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u0441\u0442\u0440\u0430\u043d\u0438\u0447\u043a\u0438 \u0442\u043e\u0432\u0430\u0440\u043e\u0432);
- \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0432\u0441\u0435\u0445 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0439 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0432 \u0431\u0430\u0437\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440: \u043b\u043e\u0433\u0438\u043d, \u043b\u043e\u0433\u0430\u0443\u0442, \u0442\u043e\u0432\u0430\u0440\u044b \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0435 \u0432 \u043a\u043e\u0440\u0437\u0438\u043d\u0443, \u043a\u0443\u043f\u043b\u0435\u043d\u043d\u044b\u0435 \u0442\u043e\u0432\u0430\u0440\u044b);
- \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0447\u0435\u043a \u0442\u043e\u0432\u0430\u0440\u043e\u0432 (\u043d\u0435 \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c 100 \u0441\u0442\u0440\u0430\u043d\u0438\u0447\u0435\u043a \u043d\u0430 100 \u0442\u043e\u0432\u0430\u0440\u043e\u0432, \u0434\u043e\u043b\u0436\u043d\u0430 \u0431\u044b\u0442\u044c \u043e\u0434\u043d\u0430 PHP \u0441\u0442\u0440\u0430\u043d\u0438\u0447\u043a\u0430, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0431\u0435\u0440\u0435\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0442\u043e\u0432\u0430\u0440\u0430 (\u0446\u0435\u043d\u0430, \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435, \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435, \u0438 \u0442.\u043f.) \u0438\u0437 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u043f\u043e\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0438\u0445 \u0432 \u043d\u0443\u0436\u043d\u044b\u0435 \u043c\u0435\u0441\u0442\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0447\u043a\u0438 \u0442\u043e\u0432\u0430\u0440\u0430;
- \u043c\u0438\u043d\u0438-\u0430\u0434\u043c\u0438\u043d\u043a\u0443 (\u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435-\u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435-\u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e
- \u0441\u0442\u0440\u0430\u043d\u0438\u0447\u043a\u0443 \u043f\u0440\u043e\u0434\u0430\u0432\u0446\u0430 (\u0441\u043f\u0438\u0441\u043e\u043a \u0437\u0430\u043a\u0430\u0437\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0436\u043d\u043e \u043e\u0442\u043c\u0435\u043d\u0438\u0442\u044c \u0438\u043b\u0438 \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c, \u043a\u0430\u043a \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0435-\u043e\u0442\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0435).
N.B. \u041e\u043f\u043b\u0430\u0442\u0430 \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0443\u0441\u043f\u0435\u0448\u043d\u043e\u0439 - i.e. \u043a\u043d\u043e\u043f\u043a\u0430 \"\u041e\u043f\u043b\u0430\u0442\u0438\u0442\u044c\" \u0438\u043b\u0438 \u0435\u0435 \u0430\u043d\u0430\u043b\u043e\u0433 \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u044e\u0442 \u0442\u0430\u043a, \u043a\u0430\u043a \u0435\u0441\u043b\u0438 \u0431\u044b \u043f\u0440\u0438 \u043d\u0430\u0436\u0430\u0442\u0438\u0438 \u0431\u044b\u043b\u0430 \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0430 \u043e\u043f\u043b\u0430\u0442\u0430.
", "materials": [26]}}, {"model": "courses.exam", "pk": 2, "fields": {"token": "2#116", "sort": 1, "course": 2, "theme": 77, "description": "\u044d\u043a\u0437\u0430\u043c\u0435\u043d \u043f\u043e java
", "materials": []}}, {"model": "courses.exam", "pk": 4, "fields": {"token": "3#64", "sort": 1, "course": 3, "theme": 79, "description": "\u0414\u0438\u043f\u043b\u043e\u043c \u043a\u0443\u0440\u0441\u0430
", "materials": [54]}}, {"model": "courses.exam", "pk": 5, "fields": {"token": "5#97", "sort": 1, "course": 5, "theme": 80, "description": "\u0414\u0438\u043f\u043b\u043e\u043c\u043d\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442
\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f
1. \u0410\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u044f \u0432 \u0422\u0432\u0438\u0442\u0442\u0435\u0440\u0435
2. \u0412\u044b\u0431\u043e\u0440\u043a\u0430 \u0442\u0432\u0438\u0442\u043e\u0432 \u0430\u0432\u0442\u043e\u0440\u043e\u0432, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u043d \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c (\u0414\u043e\u043c\u0430\u0448\u043d\u044f\u044f \u043b\u0435\u043d\u0442\u0430)
2.1. \u041f\u043e\u0441\u0442\u0440\u0430\u043d\u0438\u0447\u043d\u0430\u044f \u0430\u0432\u0442\u043e\u043f\u043e\u0434\u0433\u0440\u0443\u0437\u043a\u0430 (\u0440\u0430\u0437\u043c\u0435\u0440 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b 10 \u0442\u0432\u0438\u0442\u043e\u0432)
2.2. \u041a\u044d\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0439 \u0432\u044b\u0431\u043e\u0440\u043a\u0438 \u0434\u043b\u044f \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u043f\u0440\u0438 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0438 \u0441\u0432\u044f\u0437\u0438
2.3. \u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u043a \u043f\u043e\u0438\u0441\u043a\u0443 \u043f\u043e \u0430\u0432\u0442\u043e\u0440\u0443 \u043f\u0440\u0438 \u043a\u043b\u0438\u043a\u0435 \u043d\u0430 \u0433\u0438\u043f\u0435\u0440\u0441\u0441\u044b\u043b\u043a\u0443 \u0430\u0432\u0442\u043e\u0440\u0430 \u0442\u0432\u0438\u0442\u0430
2.4. \u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u043a \u043f\u043e\u0438\u0441\u043a\u0443 \u043f\u043e \u0445\u044d\u0448\u0442\u044d\u0433\u0443 \u043f\u0440\u0438 \u043a\u043b\u0438\u043a\u0435 \u043d\u0430 \u0433\u0438\u043f\u0435\u0440\u0441\u0441\u044b\u043b\u043a\u0443 \u0445\u044d\u0448\u0442\u044d\u0433\u0430 \u0432 \u0442\u0435\u043a\u0441\u0442\u0435 \u0442\u0432\u0438\u0442\u0430
3. \u041f\u043e\u0438\u0441\u043a \u0442\u0432\u0438\u0442\u043e\u0432 \u043f\u043e \u0430\u0432\u0442\u043e\u0440\u0443 \u0438\u043b\u0438 \u0445\u044d\u0448\u0442\u044d\u0433\u0443
3.1. \u041f\u043e\u0441\u0442\u0440\u0430\u043d\u0438\u0447\u043d\u0430\u044f \u0430\u0432\u0442\u043e\u043f\u043e\u0434\u0433\u0440\u0443\u0437\u043a\u0430
3.2. \u0412\u043e\u0437\u0432\u0440\u0430\u0442 \u043a \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0439 \u043b\u0435\u043d\u0442\u0435 \u043f\u043e \u043a\u043d\u043e\u043f\u043a\u0435 \"\u0414\u043e\u043c\u043e\u0439\"
4. \u0412\u044b\u0431\u043e\u0440\u043a\u0430 10 \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u0442\u0435\u043c
4.1. \u0421\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043a\u0430 \u043f\u043e \u0430\u043b\u0444\u0430\u0432\u0438\u0442\u0443
4.2. \u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u043a \u043f\u043e\u0438\u0441\u043a\u0443 \u043f\u043e \u0445\u044d\u0448\u0442\u044d\u0433\u0443 \u043f\u0440\u0438 \u043a\u043b\u0438\u043a\u0435 \u043d\u0430 \u0433\u0438\u043f\u0435\u0440\u0441\u0441\u044b\u043b\u043a\u0443 \u0442\u0435\u043c\u044b
5. \u041e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435: \u041f\u043e\u043b\u043d\u043e\u0435 \u0438\u043c\u044f, \u0410\u043a\u043a\u0430\u0443\u043d\u0442, \u0427\u0438\u0442\u0430\u044e\u0442, \u0427\u0438\u0442\u0430\u0435\u0442, \u0418\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435
\u0421\u043e\u0432\u0435\u0442\u044b \u043a \u0434\u0438\u043f\u043b\u043e\u043c\u043d\u043e\u043c\u0443 \u043f\u0440\u043e\u0435\u043a\u0442\u0443
\u041f\u043e\u0441\u0442\u0440\u0430\u043d\u0438\u0447\u043d\u0430\u044f \u0432\u044b\u0431\u043e\u0440\u043a\u0430 \u0442\u0432\u0438\u0442\u043e\u0432:
twitterService.ListTweetsOnHomeTimeline(new ListTweetsOnHomeTimelineOptions() { MaxId = ..., Count = ... })
\u0412\u044b\u0431\u043e\u0440\u043a\u0430 \u0442\u0432\u0438\u0442\u043e\u0432 \u043f\u043e \u0430\u0432\u0442\u043e\u0440\u0443:
twitterService.ListTweetsOnUserTimeline(new ListTweetsOnUserTimelineOptions() { ScreenName = \"...\" })
\u041f\u043e\u0438\u0441\u043a \u0442\u0432\u0438\u0442\u043e\u0432 \u043f\u043e \u0445\u044d\u0448\u0442\u044d\u0433\u0443:
twitterService.Search(new SearchOptions() { Q = \"...\" }).Statuses
\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u043a\u043e\u0434\u0430 \u0432\u0435\u0440\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u0441\u043e \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b, \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u043e\u0439 \u0432\u043e \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u043e\u043c \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0435 (\u043f\u0440\u0438\u043c\u0435\u0440):
private void browser_LoadCompleted(object sender, System.Windows.Navigation.NavigationEventArgs e)
{
if (e.Uri.ToString() == \"https://api.twitter.com/oauth/authorize\")
{
var verifier = GetVerifierFromPage();
var accessToken = twitterService.GetAccessToken(requestToken, verifier);
twitterService.AuthenticateWith(accessToken.Token, accessToken.TokenSecret);
var mainWindow = new MainWindow { TwitterService = twitterService };
mainWindow.Show();
this.Close();
}
}
private string GetVerifierFromPage()
{
dynamic doc = this.browser.Document;
var html = doc.documentElement.innerHtml;
var htmlDoc = new HtmlDocument();
htmlDoc.LoadHtml(html);
var codeNode = htmlDoc.DocumentNode.SelectSingleNode(\"//code\");
return codeNode.InnerText;
}
\u0414\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u044d\u0442\u043e\u0433\u043e \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0447\u0435\u0440\u0435\u0437 NuGet \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 HtmlAgilityPack.
.
", "materials": [2]}}, {"model": "courses.exam", "pk": 7, "fields": {"token": "6#89", "sort": 1, "course": 6, "theme": 114, "description": ".
", "materials": [2]}}, {"model": "courses.exam", "pk": 8, "fields": {"token": "4#49", "sort": 1, "course": 4, "theme": 78, "description": "\u041f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u044f \u043a \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044e \u0434\u0438\u043f\u043b\u043e\u043c\u043d\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u043e \u0431\u0430\u0437\u043e\u0432\u043e\u043c\u0443 \u043a\u0443\u0440\u0441\u0443 Excel
\u0414\u043e\u0431\u0440\u044b\u0439 \u0434\u0435\u043d\u044c, \u0443\u0432\u0430\u0436\u0430\u0435\u043c\u044b\u0439 \u0441\u043b\u0443\u0448\u0430\u0442\u0435\u043b\u044c!
\u0412\u044b \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u043b\u0438 \u0431\u0430\u0437\u043e\u0432\u044b\u0439 \u043a\u0443\u0440\u0441 Excel \u0428\u043a\u043e\u043b\u044b \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u00ab\u0422\u043e\u0447\u043a\u0430 \u043a\u043e\u0434\u0430\u00bb.
\u0422\u0435\u043f\u0435\u0440\u044c \u0434\u043b\u044f \u0437\u0430\u043a\u0440\u0435\u043f\u043b\u0435\u043d\u0438\u044f \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043f\u0440\u0438\u043e\u0431\u0440\u0435\u0442\u0451\u043d\u043d\u044b\u0445 \u043d\u0430\u0432\u044b\u043a\u043e\u0432 \u0432\u0430\u043c \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0434\u0438\u043f\u043b\u043e\u043c\u043d\u0443\u044e \u0440\u0430\u0431\u043e\u0442\u0443. \u041c\u044b \u0440\u0435\u0448\u0438\u043b\u0438 \u043f\u043e\u0434\u043e\u0439\u0442\u0438 \u043a \u0437\u0430\u0434\u0430\u043d\u0438\u044e \u0434\u0438\u043f\u043b\u043e\u043c\u043d\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u044b \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u043a\u0440\u0435\u0430\u0442\u0438\u0432\u043d\u043e, \u043d\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0432\u0430\u044f \u0438 \u043d\u0435 \u0441\u0442\u0430\u0432\u044f \u0436\u0451\u0441\u0442\u043a\u0438\u0435 \u0440\u0430\u043c\u043a\u0438. \u0421\u0435\u0439\u0447\u0430\u0441 \u043e\u043f\u0438\u0448\u0435\u043c \u0442\u043e, \u0447\u0442\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0438 \u0441\u0434\u0430\u0442\u044c \u0432 \u0432\u0438\u0434\u0435 Excel-\u0444\u0430\u0439\u043b\u0430 (\u043a\u0430\u043a \u0440\u0430\u043d\u0435\u0435 \u0432\u044b \u0441\u0434\u0430\u0432\u0430\u043b\u0438 \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u044f).
\u0412\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043d\u043e\u0432\u044b\u0439 Excel-\u0444\u0430\u0439\u043b. \u0412 \u0444\u0430\u0439\u043b\u0435 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0437\u0434\u0435\u043b\u043e\u0432. \u041a\u0430\u0436\u0434\u044b\u0439 \u0440\u0430\u0437\u0434\u0435\u043b \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u043c \u043b\u0438\u0441\u0442\u043e\u043c (\u0438\u043b\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c\u0438 \u043b\u0438\u0441\u0442\u0430\u043c\u0438, \u0435\u0441\u043b\u0438 \u0442\u0430\u043a \u0443\u0434\u043e\u0431\u043d\u0435\u0435 \u0432\u0430\u043c). \u0412\u0441\u0435 \u0440\u0430\u0437\u0434\u0435\u043b\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0431\u044b\u0442\u044c \u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e \u0441\u0432\u044f\u0437\u0430\u043d\u044b \u0434\u0440\u0443\u0433 \u0441 \u0434\u0440\u0443\u0433\u043e\u043c, \u0442.\u0435., \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0440\u0430\u0437\u0434\u0435\u043b \u00ab\u0412\u044b\u0431\u043e\u0440\u043a\u0438\u00bb \u0441\u0442\u0440\u043e\u0438\u0442\u0441\u044f \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437 \u0440\u0430\u0437\u0434\u0435\u043b\u0430 \u00ab\u0414\u0430\u043d\u043d\u044b\u0435\u00bb.
\u0414\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0440\u0430\u0437\u0434\u0435\u043b\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u2013 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 Excel, \u0444\u043e\u0440\u043c\u0443\u043b, \u043f\u0440\u0438\u0451\u043c\u043e\u0432 \u0438 \u0442.\u043f., \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u043d\u043d\u044b\u0445 \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u043a\u0443\u0440\u0441\u0430. \u041f\u0435\u0440\u0435\u0447\u0435\u043d\u044c \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0437\u0430\u0434\u0430\u043d \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u043d\u0438\u0436\u0435.
\u041e\u0446\u0435\u043d\u0438\u0432\u0430\u043d\u0438\u0435 \u0440\u0430\u0431\u043e\u0442\u044b \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u044c\u0441\u044f \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u043d\u0430\u043b\u0438\u0447\u0438\u044f \u0438 \u043f\u043e\u043b\u043d\u043e\u0442\u044b \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430.
\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0440\u0430\u0437\u0434\u0435\u043b\u0430 | \u041d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b |
\u0414\u0430\u043d\u043d\u044b\u0435 |
|
\u0412\u044b\u0431\u043e\u0440\u043a\u0438 |
|
\u041e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 |
|
\u0421\u0432\u043e\u0434\u043d\u044b\u0435 \u0442\u0430\u0431\u043b\u0438\u0446\u044b |
|
\u0414\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b |
|
\u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e (\u043e\u043f\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e) |
|
\u0420\u0430\u0431\u043e\u0442\u0443 \u043d\u0430\u043f\u0440\u0430\u0432\u044c\u0442\u0435 \u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u0447\u0435\u0440\u0435\u0437 \u0444\u043e\u0440\u043c\u0443 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043d\u0438\u0436\u0435.
", "materials": [9637]}}, {"model": "courses.skills", "pk": 1, "fields": {"title": "HTML", "color": "#f1672c", "mini_icon": "skills/htmlmin_TqoRT03.png", "big_icon": "skills/html_ZEialQt.png", "description": ""}}, {"model": "courses.skills", "pk": 2, "fields": {"title": "CSS", "color": "#30a9dc", "mini_icon": "skills/cssmin.png", "big_icon": "skills/css.png", "description": ""}}, {"model": "courses.skills", "pk": 3, "fields": {"title": "JavaScript", "color": "#e5a228", "mini_icon": "skills/jsmin.png", "big_icon": "skills/js.png", "description": ""}}, {"model": "courses.skills", "pk": 4, "fields": {"title": "PHP", "color": "#7d669e", "mini_icon": "skills/phpmin.png", "big_icon": "skills/php.png", "description": ""}}, {"model": "courses.skills", "pk": 5, "fields": {"title": "SQL", "color": "#c25975", "mini_icon": "skills/sqlmin.png", "big_icon": "skills/sql.png", "description": ""}}, {"model": "courses.skills", "pk": 6, "fields": {"title": "Photoshop", "color": "#3079ab", "mini_icon": "skills/photoshopmin.png", "big_icon": "skills/photoshop.png", "description": ""}}, {"model": "courses.skills", "pk": 7, "fields": {"title": "Java", "color": "#c36b19", "mini_icon": "skills/javamin.png", "big_icon": "skills/java.png", "description": ""}}, {"model": "courses.skills", "pk": 8, "fields": {"title": "C#", "color": "#9e73d8", "mini_icon": "skills/charpmin.png", "big_icon": "skills/csharp.png", "description": ""}}, {"model": "courses.skills", "pk": 9, "fields": {"title": "Excel", "color": "#669966", "mini_icon": "skills/excelmin.png", "big_icon": "skills/excel.png", "description": ""}}, {"model": "courses.skills", "pk": 10, "fields": {"title": "Swift", "color": "#FF9933", "mini_icon": "skills/swiftmin.png", "big_icon": "skills/swift.png", "description": ""}}, {"model": "courses.skills", "pk": 11, "fields": {"title": "1\u0421-Bitrix", "color": "#B22222", "mini_icon": "skills/bitrixmin.png", "big_icon": "skills/bitrix.png", "description": ""}}, {"model": "courses.skills", "pk": 12, "fields": {"title": "Android", "color": "#008000", "mini_icon": "skills/androidmin.png", "big_icon": "skills/android.png", "description": "111"}}, {"model": "courses.skillj", "pk": 1, "fields": {"skill": 1, "lesson": 1, "size": 100}}, {"model": "courses.skillj", "pk": 2, "fields": {"skill": 1, "lesson": 2, "size": 100}}, {"model": "courses.skillj", "pk": 3, "fields": {"skill": 1, "lesson": 3, "size": 100}}, {"model": "courses.skillj", "pk": 4, "fields": {"skill": 2, "lesson": 4, "size": 100}}, {"model": "courses.skillj", "pk": 5, "fields": {"skill": 2, "lesson": 5, "size": 100}}, {"model": "courses.skillj", "pk": 6, "fields": {"skill": 3, "lesson": 6, "size": 100}}, {"model": "courses.skillj", "pk": 7, "fields": {"skill": 3, "lesson": 7, "size": 100}}, {"model": "courses.skillj", "pk": 8, "fields": {"skill": 3, "lesson": 8, "size": 100}}, {"model": "courses.skillj", "pk": 9, "fields": {"skill": 3, "lesson": 9, "size": 100}}, {"model": "courses.skillj", "pk": 10, "fields": {"skill": 4, "lesson": 10, "size": 100}}, {"model": "courses.skillj", "pk": 11, "fields": {"skill": 4, "lesson": 11, "size": 100}}, {"model": "courses.skillj", "pk": 12, "fields": {"skill": 4, "lesson": 12, "size": 100}}, {"model": "courses.skillj", "pk": 13, "fields": {"skill": 4, "lesson": 13, "size": 100}}, {"model": "courses.skillj", "pk": 14, "fields": {"skill": 4, "lesson": 14, "size": 100}}, {"model": "courses.skillj", "pk": 15, "fields": {"skill": 5, "lesson": 15, "size": 100}}, {"model": "courses.skillj", "pk": 16, "fields": {"skill": 5, "lesson": 16, "size": 100}}, {"model": "courses.skillj", "pk": 17, "fields": {"skill": 6, "lesson": 17, "size": 100}}, {"model": "courses.skillj", "pk": 18, "fields": {"skill": 7, "lesson": 66, "size": 14}}, {"model": "courses.skillj", "pk": 19, "fields": {"skill": 7, "lesson": 29, "size": 14}}, {"model": "courses.skillj", "pk": 20, "fields": {"skill": 7, "lesson": 30, "size": 14}}, {"model": "courses.skillj", "pk": 21, "fields": {"skill": 7, "lesson": 31, "size": 14}}, {"model": "courses.skillj", "pk": 22, "fields": {"skill": 7, "lesson": 32, "size": 14}}, {"model": "courses.skillj", "pk": 23, "fields": {"skill": 7, "lesson": 33, "size": 15}}, {"model": "courses.skillj", "pk": 24, "fields": {"skill": 7, "lesson": 34, "size": 15}}, {"model": "courses.skillj", "pk": 25, "fields": {"skill": 7, "lesson": 67, "size": 14}}, {"model": "courses.skillj", "pk": 26, "fields": {"skill": 7, "lesson": 35, "size": 14}}, {"model": "courses.skillj", "pk": 27, "fields": {"skill": 7, "lesson": 36, "size": 14}}, {"model": "courses.skillj", "pk": 28, "fields": {"skill": 7, "lesson": 37, "size": 14}}, {"model": "courses.skillj", "pk": 29, "fields": {"skill": 7, "lesson": 38, "size": 14}}, {"model": "courses.skillj", "pk": 30, "fields": {"skill": 7, "lesson": 39, "size": 15}}, {"model": "courses.skillj", "pk": 31, "fields": {"skill": 7, "lesson": 40, "size": 15}}, {"model": "courses.skillj", "pk": 32, "fields": {"skill": 7, "lesson": 68, "size": 12}}, {"model": "courses.skillj", "pk": 33, "fields": {"skill": 7, "lesson": 41, "size": 12}}, {"model": "courses.skillj", "pk": 34, "fields": {"skill": 7, "lesson": 42, "size": 12}}, {"model": "courses.skillj", "pk": 35, "fields": {"skill": 7, "lesson": 43, "size": 12}}, {"model": "courses.skillj", "pk": 36, "fields": {"skill": 7, "lesson": 44, "size": 12}}, {"model": "courses.skillj", "pk": 37, "fields": {"skill": 7, "lesson": 45, "size": 12}}, {"model": "courses.skillj", "pk": 38, "fields": {"skill": 7, "lesson": 46, "size": 14}}, {"model": "courses.skillj", "pk": 39, "fields": {"skill": 7, "lesson": 47, "size": 14}}, {"model": "courses.skillj", "pk": 40, "fields": {"skill": 7, "lesson": 48, "size": 14}}, {"model": "courses.skillj", "pk": 41, "fields": {"skill": 7, "lesson": 49, "size": 14}}, {"model": "courses.skillj", "pk": 42, "fields": {"skill": 7, "lesson": 50, "size": 14}}, {"model": "courses.skillj", "pk": 43, "fields": {"skill": 7, "lesson": 51, "size": 14}}, {"model": "courses.skillj", "pk": 44, "fields": {"skill": 7, "lesson": 52, "size": 14}}, {"model": "courses.skillj", "pk": 45, "fields": {"skill": 7, "lesson": 53, "size": 15}}, {"model": "courses.skillj", "pk": 46, "fields": {"skill": 7, "lesson": 54, "size": 15}}, {"model": "courses.skillj", "pk": 47, "fields": {"skill": 7, "lesson": 55, "size": 20}}, {"model": "courses.skillj", "pk": 48, "fields": {"skill": 7, "lesson": 56, "size": 20}}, {"model": "courses.skillj", "pk": 49, "fields": {"skill": 7, "lesson": 57, "size": 20}}, {"model": "courses.skillj", "pk": 50, "fields": {"skill": 7, "lesson": 58, "size": 20}}, {"model": "courses.skillj", "pk": 51, "fields": {"skill": 7, "lesson": 59, "size": 20}}, {"model": "courses.skillj", "pk": 52, "fields": {"skill": 7, "lesson": 60, "size": 20}}, {"model": "courses.skillj", "pk": 53, "fields": {"skill": 7, "lesson": 61, "size": 20}}, {"model": "courses.skillj", "pk": 54, "fields": {"skill": 7, "lesson": 62, "size": 20}}, {"model": "courses.skillj", "pk": 55, "fields": {"skill": 7, "lesson": 63, "size": 20}}, {"model": "courses.skillj", "pk": 56, "fields": {"skill": 7, "lesson": 64, "size": 20}}, {"model": "courses.skillj", "pk": 57, "fields": {"skill": 7, "lesson": 69, "size": 25}}, {"model": "courses.skillj", "pk": 58, "fields": {"skill": 7, "lesson": 70, "size": 25}}, {"model": "courses.skillj", "pk": 59, "fields": {"skill": 7, "lesson": 71, "size": 25}}, {"model": "courses.skillj", "pk": 60, "fields": {"skill": 7, "lesson": 72, "size": 25}}, {"model": "courses.skillj", "pk": 61, "fields": {"skill": 7, "lesson": 73, "size": 15}}, {"model": "courses.skillj", "pk": 62, "fields": {"skill": 7, "lesson": 74, "size": 17}}, {"model": "courses.skillj", "pk": 63, "fields": {"skill": 7, "lesson": 75, "size": 17}}, {"model": "courses.skillj", "pk": 64, "fields": {"skill": 7, "lesson": 76, "size": 17}}, {"model": "courses.skillj", "pk": 65, "fields": {"skill": 7, "lesson": 77, "size": 17}}, {"model": "courses.skillj", "pk": 66, "fields": {"skill": 7, "lesson": 78, "size": 17}}, {"model": "courses.skillj", "pk": 67, "fields": {"skill": 7, "lesson": 79, "size": 15}}, {"model": "courses.skillj", "pk": 68, "fields": {"skill": 7, "lesson": 80, "size": 17}}, {"model": "courses.skillj", "pk": 69, "fields": {"skill": 7, "lesson": 81, "size": 17}}, {"model": "courses.skillj", "pk": 70, "fields": {"skill": 7, "lesson": 82, "size": 17}}, {"model": "courses.skillj", "pk": 71, "fields": {"skill": 7, "lesson": 83, "size": 17}}, {"model": "courses.skillj", "pk": 72, "fields": {"skill": 7, "lesson": 84, "size": 17}}, {"model": "courses.skillj", "pk": 73, "fields": {"skill": 7, "lesson": 85, "size": 14}}, {"model": "courses.skillj", "pk": 74, "fields": {"skill": 7, "lesson": 86, "size": 14}}, {"model": "courses.skillj", "pk": 75, "fields": {"skill": 7, "lesson": 87, "size": 14}}, {"model": "courses.skillj", "pk": 76, "fields": {"skill": 7, "lesson": 88, "size": 14}}, {"model": "courses.skillj", "pk": 77, "fields": {"skill": 7, "lesson": 89, "size": 14}}, {"model": "courses.skillj", "pk": 78, "fields": {"skill": 7, "lesson": 90, "size": 14}}, {"model": "courses.skillj", "pk": 79, "fields": {"skill": 7, "lesson": 91, "size": 16}}, {"model": "courses.skillj", "pk": 80, "fields": {"skill": 7, "lesson": 100, "size": 20}}, {"model": "courses.skillj", "pk": 81, "fields": {"skill": 7, "lesson": 101, "size": 20}}, {"model": "courses.skillj", "pk": 82, "fields": {"skill": 7, "lesson": 102, "size": 20}}, {"model": "courses.skillj", "pk": 83, "fields": {"skill": 7, "lesson": 103, "size": 20}}, {"model": "courses.skillj", "pk": 84, "fields": {"skill": 7, "lesson": 105, "size": 20}}, {"model": "courses.skillj", "pk": 85, "fields": {"skill": 7, "lesson": 106, "size": 15}}, {"model": "courses.skillj", "pk": 86, "fields": {"skill": 7, "lesson": 107, "size": 17}}, {"model": "courses.skillj", "pk": 87, "fields": {"skill": 7, "lesson": 108, "size": 17}}, {"model": "courses.skillj", "pk": 88, "fields": {"skill": 7, "lesson": 109, "size": 17}}, {"model": "courses.skillj", "pk": 89, "fields": {"skill": 7, "lesson": 110, "size": 17}}, {"model": "courses.skillj", "pk": 90, "fields": {"skill": 7, "lesson": 111, "size": 17}}, {"model": "courses.skillj", "pk": 91, "fields": {"skill": 7, "lesson": 112, "size": 15}}, {"model": "courses.skillj", "pk": 92, "fields": {"skill": 7, "lesson": 113, "size": 17}}, {"model": "courses.skillj", "pk": 93, "fields": {"skill": 7, "lesson": 115, "size": 17}}, {"model": "courses.skillj", "pk": 94, "fields": {"skill": 7, "lesson": 117, "size": 17}}, {"model": "courses.skillj", "pk": 95, "fields": {"skill": 7, "lesson": 119, "size": 15}}, {"model": "courses.skillj", "pk": 96, "fields": {"skill": 7, "lesson": 120, "size": 17}}, {"model": "courses.skillj", "pk": 97, "fields": {"skill": 7, "lesson": 121, "size": 17}}, {"model": "courses.skillj", "pk": 98, "fields": {"skill": 7, "lesson": 123, "size": 17}}, {"model": "courses.skillj", "pk": 99, "fields": {"skill": 7, "lesson": 124, "size": 17}}, {"model": "courses.skillj", "pk": 100, "fields": {"skill": 7, "lesson": 125, "size": 17}}, {"model": "courses.skillj", "pk": 101, "fields": {"skill": 7, "lesson": 127, "size": 20}}, {"model": "courses.skillj", "pk": 102, "fields": {"skill": 7, "lesson": 128, "size": 20}}, {"model": "courses.skillj", "pk": 103, "fields": {"skill": 7, "lesson": 130, "size": 20}}, {"model": "courses.skillj", "pk": 104, "fields": {"skill": 7, "lesson": 131, "size": 20}}, {"model": "courses.skillj", "pk": 105, "fields": {"skill": 7, "lesson": 133, "size": 20}}, {"model": "courses.skillj", "pk": 106, "fields": {"skill": 7, "lesson": 134, "size": 25}}, {"model": "courses.skillj", "pk": 107, "fields": {"skill": 7, "lesson": 136, "size": 25}}, {"model": "courses.skillj", "pk": 108, "fields": {"skill": 7, "lesson": 137, "size": 25}}, {"model": "courses.skillj", "pk": 109, "fields": {"skill": 7, "lesson": 139, "size": 25}}, {"model": "courses.skillj", "pk": 110, "fields": {"skill": 9, "lesson": 19, "size": 10}}, {"model": "courses.skillj", "pk": 111, "fields": {"skill": 9, "lesson": 20, "size": 10}}, {"model": "courses.skillj", "pk": 112, "fields": {"skill": 9, "lesson": 21, "size": 10}}, {"model": "courses.skillj", "pk": 113, "fields": {"skill": 9, "lesson": 22, "size": 10}}, {"model": "courses.skillj", "pk": 114, "fields": {"skill": 9, "lesson": 23, "size": 10}}, {"model": "courses.skillj", "pk": 115, "fields": {"skill": 9, "lesson": 24, "size": 10}}, {"model": "courses.skillj", "pk": 116, "fields": {"skill": 9, "lesson": 25, "size": 10}}, {"model": "courses.skillj", "pk": 117, "fields": {"skill": 9, "lesson": 26, "size": 10}}, {"model": "courses.skillj", "pk": 118, "fields": {"skill": 9, "lesson": 27, "size": 10}}, {"model": "courses.skillj", "pk": 119, "fields": {"skill": 9, "lesson": 28, "size": 10}}, {"model": "courses.skillj", "pk": 120, "fields": {"skill": 9, "lesson": 93, "size": 20}}, {"model": "courses.skillj", "pk": 121, "fields": {"skill": 9, "lesson": 94, "size": 20}}, {"model": "courses.skillj", "pk": 122, "fields": {"skill": 9, "lesson": 95, "size": 20}}, {"model": "courses.skillj", "pk": 123, "fields": {"skill": 9, "lesson": 96, "size": 20}}, {"model": "courses.skillj", "pk": 124, "fields": {"skill": 9, "lesson": 97, "size": 20}}, {"model": "courses.skillj", "pk": 125, "fields": {"skill": 9, "lesson": 98, "size": 50}}, {"model": "courses.skillj", "pk": 126, "fields": {"skill": 9, "lesson": 99, "size": 50}}, {"model": "courses.skillj", "pk": 127, "fields": {"skill": 9, "lesson": 104, "size": 25}}, {"model": "courses.skillj", "pk": 128, "fields": {"skill": 9, "lesson": 114, "size": 25}}, {"model": "courses.skillj", "pk": 129, "fields": {"skill": 9, "lesson": 116, "size": 25}}, {"model": "courses.skillj", "pk": 130, "fields": {"skill": 9, "lesson": 118, "size": 25}}, {"model": "courses.skillj", "pk": 131, "fields": {"skill": 9, "lesson": 122, "size": 20}}, {"model": "courses.skillj", "pk": 132, "fields": {"skill": 9, "lesson": 126, "size": 20}}, {"model": "courses.skillj", "pk": 133, "fields": {"skill": 9, "lesson": 129, "size": 20}}, {"model": "courses.skillj", "pk": 134, "fields": {"skill": 9, "lesson": 132, "size": 20}}, {"model": "courses.skillj", "pk": 135, "fields": {"skill": 9, "lesson": 203, "size": 20}}, {"model": "courses.skillj", "pk": 136, "fields": {"skill": 9, "lesson": 135, "size": 25}}, {"model": "courses.skillj", "pk": 137, "fields": {"skill": 9, "lesson": 138, "size": 25}}, {"model": "courses.skillj", "pk": 138, "fields": {"skill": 9, "lesson": 140, "size": 25}}, {"model": "courses.skillj", "pk": 139, "fields": {"skill": 9, "lesson": 141, "size": 25}}, {"model": "courses.skillj", "pk": 141, "fields": {"skill": 9, "lesson": 143, "size": 25}}, {"model": "courses.skillj", "pk": 142, "fields": {"skill": 9, "lesson": 144, "size": 25}}, {"model": "courses.skillj", "pk": 143, "fields": {"skill": 9, "lesson": 145, "size": 25}}, {"model": "courses.skillj", "pk": 144, "fields": {"skill": 9, "lesson": 146, "size": 25}}, {"model": "courses.skillj", "pk": 146, "fields": {"skill": 9, "lesson": 148, "size": 25}}, {"model": "courses.skillj", "pk": 147, "fields": {"skill": 9, "lesson": 149, "size": 25}}, {"model": "courses.skillj", "pk": 148, "fields": {"skill": 9, "lesson": 150, "size": 25}}, {"model": "courses.skillj", "pk": 149, "fields": {"skill": 9, "lesson": 151, "size": 25}}, {"model": "courses.skillj", "pk": 150, "fields": {"skill": 8, "lesson": 204, "size": 15}}, {"model": "courses.skillj", "pk": 151, "fields": {"skill": 8, "lesson": 205, "size": 17}}, {"model": "courses.skillj", "pk": 152, "fields": {"skill": 8, "lesson": 206, "size": 17}}, {"model": "courses.skillj", "pk": 153, "fields": {"skill": 8, "lesson": 207, "size": 17}}, {"model": "courses.skillj", "pk": 154, "fields": {"skill": 8, "lesson": 208, "size": 17}}, {"model": "courses.skillj", "pk": 155, "fields": {"skill": 8, "lesson": 209, "size": 17}}, {"model": "courses.skillj", "pk": 156, "fields": {"skill": 8, "lesson": 210, "size": 15}}, {"model": "courses.skillj", "pk": 157, "fields": {"skill": 8, "lesson": 211, "size": 17}}, {"model": "courses.skillj", "pk": 158, "fields": {"skill": 8, "lesson": 212, "size": 17}}, {"model": "courses.skillj", "pk": 159, "fields": {"skill": 8, "lesson": 213, "size": 17}}, {"model": "courses.skillj", "pk": 160, "fields": {"skill": 8, "lesson": 214, "size": 17}}, {"model": "courses.skillj", "pk": 161, "fields": {"skill": 8, "lesson": 215, "size": 17}}, {"model": "courses.skillj", "pk": 162, "fields": {"skill": 8, "lesson": 216, "size": 20}}, {"model": "courses.skillj", "pk": 163, "fields": {"skill": 8, "lesson": 217, "size": 20}}, {"model": "courses.skillj", "pk": 164, "fields": {"skill": 8, "lesson": 218, "size": 20}}, {"model": "courses.skillj", "pk": 165, "fields": {"skill": 8, "lesson": 219, "size": 20}}, {"model": "courses.skillj", "pk": 166, "fields": {"skill": 8, "lesson": 220, "size": 20}}, {"model": "courses.skillj", "pk": 167, "fields": {"skill": 8, "lesson": 221, "size": 25}}, {"model": "courses.skillj", "pk": 168, "fields": {"skill": 8, "lesson": 222, "size": 25}}, {"model": "courses.skillj", "pk": 169, "fields": {"skill": 8, "lesson": 223, "size": 25}}, {"model": "courses.skillj", "pk": 170, "fields": {"skill": 8, "lesson": 224, "size": 25}}, {"model": "courses.skillj", "pk": 171, "fields": {"skill": 8, "lesson": 225, "size": 25}}, {"model": "courses.skillj", "pk": 172, "fields": {"skill": 8, "lesson": 226, "size": 25}}, {"model": "courses.skillj", "pk": 173, "fields": {"skill": 8, "lesson": 227, "size": 25}}, {"model": "courses.skillj", "pk": 174, "fields": {"skill": 8, "lesson": 228, "size": 25}}, {"model": "courses.skillj", "pk": 175, "fields": {"skill": 8, "lesson": 229, "size": 25}}, {"model": "courses.skillj", "pk": 176, "fields": {"skill": 8, "lesson": 230, "size": 25}}, {"model": "courses.skillj", "pk": 177, "fields": {"skill": 8, "lesson": 231, "size": 25}}, {"model": "courses.skillj", "pk": 178, "fields": {"skill": 8, "lesson": 232, "size": 25}}, {"model": "courses.skillj", "pk": 179, "fields": {"skill": 8, "lesson": 233, "size": 25}}, {"model": "courses.skillj", "pk": 180, "fields": {"skill": 8, "lesson": 234, "size": 25}}, {"model": "courses.skillj", "pk": 181, "fields": {"skill": 8, "lesson": 235, "size": 25}}, {"model": "courses.skillj", "pk": 182, "fields": {"skill": 8, "lesson": 236, "size": 25}}, {"model": "courses.skillj", "pk": 183, "fields": {"skill": 8, "lesson": 237, "size": 25}}, {"model": "courses.skillj", "pk": 184, "fields": {"skill": 8, "lesson": 238, "size": 25}}, {"model": "courses.skillj", "pk": 185, "fields": {"skill": 8, "lesson": 239, "size": 25}}, {"model": "courses.skillj", "pk": 186, "fields": {"skill": 8, "lesson": 240, "size": 25}}, {"model": "courses.skillj", "pk": 187, "fields": {"skill": 8, "lesson": 241, "size": 25}}, {"model": "courses.skillj", "pk": 188, "fields": {"skill": 8, "lesson": 242, "size": 25}}, {"model": "courses.skillj", "pk": 189, "fields": {"skill": 8, "lesson": 243, "size": 25}}, {"model": "courses.skillj", "pk": 190, "fields": {"skill": 8, "lesson": 244, "size": 25}}, {"model": "courses.skillj", "pk": 191, "fields": {"skill": 8, "lesson": 245, "size": 25}}, {"model": "courses.skillj", "pk": 192, "fields": {"skill": 8, "lesson": 246, "size": 25}}, {"model": "courses.skillj", "pk": 193, "fields": {"skill": 8, "lesson": 247, "size": 25}}, {"model": "courses.skillj", "pk": 194, "fields": {"skill": 8, "lesson": 248, "size": 25}}, {"model": "courses.skillj", "pk": 195, "fields": {"skill": 8, "lesson": 249, "size": 20}}, {"model": "courses.skillj", "pk": 196, "fields": {"skill": 8, "lesson": 250, "size": 20}}, {"model": "courses.skillj", "pk": 197, "fields": {"skill": 8, "lesson": 251, "size": 20}}, {"model": "courses.skillj", "pk": 198, "fields": {"skill": 8, "lesson": 252, "size": 20}}, {"model": "courses.skillj", "pk": 199, "fields": {"skill": 8, "lesson": 277, "size": 20}}, {"model": "courses.skillj", "pk": 200, "fields": {"skill": 8, "lesson": 253, "size": 25}}, {"model": "courses.skillj", "pk": 201, "fields": {"skill": 8, "lesson": 254, "size": 25}}, {"model": "courses.skillj", "pk": 202, "fields": {"skill": 8, "lesson": 255, "size": 25}}, {"model": "courses.skillj", "pk": 203, "fields": {"skill": 8, "lesson": 256, "size": 25}}, {"model": "courses.skillj", "pk": 204, "fields": {"skill": 8, "lesson": 257, "size": 20}}, {"model": "courses.skillj", "pk": 205, "fields": {"skill": 8, "lesson": 258, "size": 20}}, {"model": "courses.skillj", "pk": 206, "fields": {"skill": 8, "lesson": 259, "size": 20}}, {"model": "courses.skillj", "pk": 207, "fields": {"skill": 8, "lesson": 260, "size": 20}}, {"model": "courses.skillj", "pk": 208, "fields": {"skill": 8, "lesson": 261, "size": 20}}, {"model": "courses.skillj", "pk": 209, "fields": {"skill": 8, "lesson": 262, "size": 25}}, {"model": "courses.skillj", "pk": 210, "fields": {"skill": 8, "lesson": 263, "size": 25}}, {"model": "courses.skillj", "pk": 211, "fields": {"skill": 8, "lesson": 264, "size": 25}}, {"model": "courses.skillj", "pk": 212, "fields": {"skill": 8, "lesson": 265, "size": 25}}, {"model": "courses.skillj", "pk": 213, "fields": {"skill": 8, "lesson": 266, "size": 25}}, {"model": "courses.skillj", "pk": 214, "fields": {"skill": 8, "lesson": 267, "size": 25}}, {"model": "courses.skillj", "pk": 215, "fields": {"skill": 8, "lesson": 268, "size": 25}}, {"model": "courses.skillj", "pk": 216, "fields": {"skill": 8, "lesson": 269, "size": 25}}, {"model": "courses.skillj", "pk": 217, "fields": {"skill": 8, "lesson": 270, "size": 25}}, {"model": "courses.skillj", "pk": 218, "fields": {"skill": 8, "lesson": 271, "size": 25}}, {"model": "courses.skillj", "pk": 219, "fields": {"skill": 8, "lesson": 272, "size": 25}}, {"model": "courses.skillj", "pk": 220, "fields": {"skill": 8, "lesson": 273, "size": 25}}, {"model": "courses.skillj", "pk": 221, "fields": {"skill": 10, "lesson": 152, "size": 25}}, {"model": "courses.skillj", "pk": 222, "fields": {"skill": 10, "lesson": 153, "size": 25}}, {"model": "courses.skillj", "pk": 223, "fields": {"skill": 10, "lesson": 154, "size": 25}}, {"model": "courses.skillj", "pk": 224, "fields": {"skill": 10, "lesson": 155, "size": 25}}, {"model": "courses.skillj", "pk": 225, "fields": {"skill": 10, "lesson": 156, "size": 50}}, {"model": "courses.skillj", "pk": 226, "fields": {"skill": 10, "lesson": 157, "size": 50}}, {"model": "courses.skillj", "pk": 227, "fields": {"skill": 10, "lesson": 158, "size": 30}}, {"model": "courses.skillj", "pk": 228, "fields": {"skill": 10, "lesson": 159, "size": 30}}, {"model": "courses.skillj", "pk": 229, "fields": {"skill": 10, "lesson": 160, "size": 40}}, {"model": "courses.skillj", "pk": 230, "fields": {"skill": 10, "lesson": 161, "size": 30}}, {"model": "courses.skillj", "pk": 231, "fields": {"skill": 10, "lesson": 162, "size": 30}}, {"model": "courses.skillj", "pk": 232, "fields": {"skill": 10, "lesson": 163, "size": 40}}, {"model": "courses.skillj", "pk": 233, "fields": {"skill": 10, "lesson": 164, "size": 30}}, {"model": "courses.skillj", "pk": 234, "fields": {"skill": 10, "lesson": 165, "size": 30}}, {"model": "courses.skillj", "pk": 235, "fields": {"skill": 10, "lesson": 166, "size": 40}}, {"model": "courses.skillj", "pk": 236, "fields": {"skill": 10, "lesson": 167, "size": 30}}, {"model": "courses.skillj", "pk": 237, "fields": {"skill": 10, "lesson": 168, "size": 30}}, {"model": "courses.skillj", "pk": 238, "fields": {"skill": 10, "lesson": 169, "size": 40}}, {"model": "courses.skillj", "pk": 239, "fields": {"skill": 10, "lesson": 170, "size": 30}}, {"model": "courses.skillj", "pk": 240, "fields": {"skill": 10, "lesson": 171, "size": 30}}, {"model": "courses.skillj", "pk": 241, "fields": {"skill": 10, "lesson": 172, "size": 40}}, {"model": "courses.skillj", "pk": 242, "fields": {"skill": 10, "lesson": 173, "size": 30}}, {"model": "courses.skillj", "pk": 243, "fields": {"skill": 10, "lesson": 174, "size": 30}}, {"model": "courses.skillj", "pk": 244, "fields": {"skill": 10, "lesson": 175, "size": 40}}, {"model": "courses.skillj", "pk": 245, "fields": {"skill": 10, "lesson": 176, "size": 30}}, {"model": "courses.skillj", "pk": 246, "fields": {"skill": 10, "lesson": 185, "size": 30}}, {"model": "courses.skillj", "pk": 247, "fields": {"skill": 10, "lesson": 186, "size": 40}}, {"model": "courses.skillj", "pk": 248, "fields": {"skill": 10, "lesson": 177, "size": 25}}, {"model": "courses.skillj", "pk": 249, "fields": {"skill": 10, "lesson": 187, "size": 25}}, {"model": "courses.skillj", "pk": 250, "fields": {"skill": 10, "lesson": 188, "size": 25}}, {"model": "courses.skillj", "pk": 252, "fields": {"skill": 10, "lesson": 178, "size": 50}}, {"model": "courses.skillj", "pk": 253, "fields": {"skill": 10, "lesson": 189, "size": 50}}, {"model": "courses.skillj", "pk": 254, "fields": {"skill": 10, "lesson": 179, "size": 30}}, {"model": "courses.skillj", "pk": 255, "fields": {"skill": 10, "lesson": 191, "size": 30}}, {"model": "courses.skillj", "pk": 256, "fields": {"skill": 10, "lesson": 192, "size": 40}}, {"model": "courses.skillj", "pk": 257, "fields": {"skill": 10, "lesson": 180, "size": 25}}, {"model": "courses.skillj", "pk": 258, "fields": {"skill": 10, "lesson": 193, "size": 25}}, {"model": "courses.skillj", "pk": 260, "fields": {"skill": 10, "lesson": 195, "size": 25}}, {"model": "courses.skillj", "pk": 261, "fields": {"skill": 10, "lesson": 181, "size": 30}}, {"model": "courses.skillj", "pk": 262, "fields": {"skill": 10, "lesson": 196, "size": 30}}, {"model": "courses.skillj", "pk": 263, "fields": {"skill": 10, "lesson": 197, "size": 40}}, {"model": "courses.skillj", "pk": 264, "fields": {"skill": 10, "lesson": 182, "size": 30}}, {"model": "courses.skillj", "pk": 265, "fields": {"skill": 10, "lesson": 198, "size": 30}}, {"model": "courses.skillj", "pk": 266, "fields": {"skill": 10, "lesson": 199, "size": 40}}, {"model": "courses.skillj", "pk": 267, "fields": {"skill": 10, "lesson": 183, "size": 25}}, {"model": "courses.skillj", "pk": 268, "fields": {"skill": 10, "lesson": 200, "size": 25}}, {"model": "courses.skillj", "pk": 269, "fields": {"skill": 10, "lesson": 201, "size": 25}}, {"model": "courses.skillj", "pk": 270, "fields": {"skill": 10, "lesson": 202, "size": 25}}, {"model": "courses.skillj", "pk": 271, "fields": {"skill": 11, "lesson": 296, "size": 20}}, {"model": "courses.skillj", "pk": 272, "fields": {"skill": 11, "lesson": 297, "size": 20}}, {"model": "courses.skillj", "pk": 273, "fields": {"skill": 11, "lesson": 298, "size": 20}}, {"model": "courses.skillj", "pk": 274, "fields": {"skill": 11, "lesson": 299, "size": 20}}, {"model": "courses.skillj", "pk": 275, "fields": {"skill": 11, "lesson": 300, "size": 20}}, {"model": "courses.skillj", "pk": 276, "fields": {"skill": 11, "lesson": 310, "size": 25}}, {"model": "courses.skillj", "pk": 277, "fields": {"skill": 11, "lesson": 311, "size": 25}}, {"model": "courses.skillj", "pk": 278, "fields": {"skill": 11, "lesson": 312, "size": 25}}, {"model": "courses.skillj", "pk": 279, "fields": {"skill": 11, "lesson": 313, "size": 25}}, {"model": "courses.skillj", "pk": 280, "fields": {"skill": 11, "lesson": 315, "size": 25}}, {"model": "courses.skillj", "pk": 281, "fields": {"skill": 11, "lesson": 316, "size": 25}}, {"model": "courses.skillj", "pk": 282, "fields": {"skill": 11, "lesson": 317, "size": 25}}, {"model": "courses.skillj", "pk": 283, "fields": {"skill": 11, "lesson": 318, "size": 25}}, {"model": "courses.skillj", "pk": 284, "fields": {"skill": 11, "lesson": 320, "size": 30}}, {"model": "courses.skillj", "pk": 285, "fields": {"skill": 11, "lesson": 321, "size": 30}}, {"model": "courses.skillj", "pk": 286, "fields": {"skill": 11, "lesson": 322, "size": 40}}, {"model": "courses.skillj", "pk": 287, "fields": {"skill": 11, "lesson": 325, "size": 25}}, {"model": "courses.skillj", "pk": 288, "fields": {"skill": 11, "lesson": 326, "size": 25}}, {"model": "courses.skillj", "pk": 289, "fields": {"skill": 11, "lesson": 327, "size": 25}}, {"model": "courses.skillj", "pk": 290, "fields": {"skill": 11, "lesson": 324, "size": 25}}, {"model": "courses.skillj", "pk": 291, "fields": {"skill": 11, "lesson": 329, "size": 30}}, {"model": "courses.skillj", "pk": 292, "fields": {"skill": 11, "lesson": 330, "size": 30}}, {"model": "courses.skillj", "pk": 293, "fields": {"skill": 11, "lesson": 331, "size": 40}}, {"model": "courses.skillj", "pk": 294, "fields": {"skill": 11, "lesson": 333, "size": 20}}, {"model": "courses.skillj", "pk": 295, "fields": {"skill": 11, "lesson": 334, "size": 20}}, {"model": "courses.skillj", "pk": 296, "fields": {"skill": 11, "lesson": 337, "size": 20}}, {"model": "courses.skillj", "pk": 297, "fields": {"skill": 11, "lesson": 342, "size": 20}}, {"model": "courses.skillj", "pk": 298, "fields": {"skill": 11, "lesson": 341, "size": 20}}, {"model": "courses.skillj", "pk": 299, "fields": {"skill": 11, "lesson": 353, "size": 100}}, {"model": "courses.skillj", "pk": 300, "fields": {"skill": 11, "lesson": 355, "size": 15}}, {"model": "courses.skillj", "pk": 301, "fields": {"skill": 11, "lesson": 356, "size": 15}}, {"model": "courses.skillj", "pk": 302, "fields": {"skill": 11, "lesson": 357, "size": 15}}, {"model": "courses.skillj", "pk": 303, "fields": {"skill": 11, "lesson": 358, "size": 15}}, {"model": "courses.skillj", "pk": 304, "fields": {"skill": 11, "lesson": 359, "size": 15}}, {"model": "courses.skillj", "pk": 305, "fields": {"skill": 11, "lesson": 366, "size": 15}}, {"model": "courses.skillj", "pk": 306, "fields": {"skill": 11, "lesson": 368, "size": 10}}, {"model": "courses.skillj", "pk": 307, "fields": {"skill": 11, "lesson": 373, "size": 30}}, {"model": "courses.skillj", "pk": 308, "fields": {"skill": 11, "lesson": 376, "size": 30}}, {"model": "courses.skillj", "pk": 309, "fields": {"skill": 11, "lesson": 379, "size": 40}}, {"model": "courses.skillj", "pk": 310, "fields": {"skill": 11, "lesson": 384, "size": 20}}, {"model": "courses.skillj", "pk": 311, "fields": {"skill": 11, "lesson": 385, "size": 20}}, {"model": "courses.skillj", "pk": 312, "fields": {"skill": 11, "lesson": 386, "size": 20}}, {"model": "courses.skillj", "pk": 313, "fields": {"skill": 11, "lesson": 387, "size": 20}}, {"model": "courses.skillj", "pk": 314, "fields": {"skill": 11, "lesson": 388, "size": 20}}, {"model": "courses.skillj", "pk": 315, "fields": {"skill": 11, "lesson": 390, "size": 30}}, {"model": "courses.skillj", "pk": 316, "fields": {"skill": 11, "lesson": 391, "size": 30}}, {"model": "courses.skillj", "pk": 317, "fields": {"skill": 11, "lesson": 392, "size": 40}}, {"model": "courses.skillj", "pk": 318, "fields": {"skill": 11, "lesson": 399, "size": 10}}, {"model": "courses.skillj", "pk": 319, "fields": {"skill": 11, "lesson": 401, "size": 10}}, {"model": "courses.skillj", "pk": 320, "fields": {"skill": 11, "lesson": 404, "size": 10}}, {"model": "courses.skillj", "pk": 321, "fields": {"skill": 11, "lesson": 406, "size": 10}}, {"model": "courses.skillj", "pk": 322, "fields": {"skill": 11, "lesson": 408, "size": 10}}, {"model": "courses.skillj", "pk": 323, "fields": {"skill": 11, "lesson": 410, "size": 10}}, {"model": "courses.skillj", "pk": 324, "fields": {"skill": 11, "lesson": 412, "size": 10}}, {"model": "courses.skillj", "pk": 325, "fields": {"skill": 11, "lesson": 415, "size": 10}}, {"model": "courses.skillj", "pk": 326, "fields": {"skill": 11, "lesson": 417, "size": 20}}, {"model": "courses.skillj", "pk": 327, "fields": {"skill": 11, "lesson": 420, "size": 15}}, {"model": "courses.skillj", "pk": 328, "fields": {"skill": 11, "lesson": 421, "size": 15}}, {"model": "courses.skillj", "pk": 329, "fields": {"skill": 11, "lesson": 424, "size": 15}}, {"model": "courses.skillj", "pk": 330, "fields": {"skill": 11, "lesson": 426, "size": 15}}, {"model": "courses.skillj", "pk": 331, "fields": {"skill": 11, "lesson": 432, "size": 25}}, {"model": "courses.skillj", "pk": 332, "fields": {"skill": 11, "lesson": 430, "size": 15}}, {"model": "courses.skillj", "pk": 333, "fields": {"skill": 11, "lesson": 433, "size": 30}}, {"model": "courses.skillj", "pk": 334, "fields": {"skill": 11, "lesson": 435, "size": 30}}, {"model": "courses.skillj", "pk": 335, "fields": {"skill": 11, "lesson": 436, "size": 40}}, {"model": "courses.skillj", "pk": 336, "fields": {"skill": 11, "lesson": 438, "size": 30}}, {"model": "courses.skillj", "pk": 337, "fields": {"skill": 11, "lesson": 439, "size": 30}}, {"model": "courses.skillj", "pk": 338, "fields": {"skill": 11, "lesson": 440, "size": 40}}, {"model": "courses.skillj", "pk": 339, "fields": {"skill": 12, "lesson": 302, "size": 30}}, {"model": "courses.skillj", "pk": 340, "fields": {"skill": 12, "lesson": 304, "size": 30}}, {"model": "courses.skillj", "pk": 341, "fields": {"skill": 12, "lesson": 305, "size": 40}}, {"model": "courses.skillj", "pk": 342, "fields": {"skill": 12, "lesson": 307, "size": 50}}, {"model": "courses.skillj", "pk": 343, "fields": {"skill": 12, "lesson": 308, "size": 50}}, {"model": "courses.skillj", "pk": 344, "fields": {"skill": 12, "lesson": 338, "size": 30}}, {"model": "courses.skillj", "pk": 346, "fields": {"skill": 12, "lesson": 339, "size": 40}}, {"model": "courses.skillj", "pk": 347, "fields": {"skill": 12, "lesson": 343, "size": 50}}, {"model": "courses.skillj", "pk": 348, "fields": {"skill": 12, "lesson": 344, "size": 50}}, {"model": "courses.skillj", "pk": 349, "fields": {"skill": 12, "lesson": 347, "size": 50}}, {"model": "courses.skillj", "pk": 350, "fields": {"skill": 12, "lesson": 346, "size": 50}}, {"model": "courses.skillj", "pk": 351, "fields": {"skill": 12, "lesson": 349, "size": 50}}, {"model": "courses.skillj", "pk": 352, "fields": {"skill": 12, "lesson": 350, "size": 50}}, {"model": "courses.skillj", "pk": 353, "fields": {"skill": 12, "lesson": 360, "size": 30}}, {"model": "courses.skillj", "pk": 354, "fields": {"skill": 12, "lesson": 361, "size": 30}}, {"model": "courses.skillj", "pk": 355, "fields": {"skill": 12, "lesson": 362, "size": 40}}, {"model": "courses.skillj", "pk": 356, "fields": {"skill": 12, "lesson": 364, "size": 25}}, {"model": "courses.skillj", "pk": 357, "fields": {"skill": 12, "lesson": 365, "size": 25}}, {"model": "courses.skillj", "pk": 358, "fields": {"skill": 12, "lesson": 367, "size": 25}}, {"model": "courses.skillj", "pk": 359, "fields": {"skill": 12, "lesson": 369, "size": 25}}, {"model": "courses.skillj", "pk": 360, "fields": {"skill": 12, "lesson": 372, "size": 30}}, {"model": "courses.skillj", "pk": 361, "fields": {"skill": 12, "lesson": 374, "size": 30}}, {"model": "courses.skillj", "pk": 362, "fields": {"skill": 12, "lesson": 375, "size": 40}}, {"model": "courses.skillj", "pk": 363, "fields": {"skill": 12, "lesson": 378, "size": 25}}, {"model": "courses.skillj", "pk": 364, "fields": {"skill": 12, "lesson": 380, "size": 25}}, {"model": "courses.skillj", "pk": 365, "fields": {"skill": 12, "lesson": 381, "size": 25}}, {"model": "courses.skillj", "pk": 366, "fields": {"skill": 12, "lesson": 383, "size": 25}}, {"model": "courses.skillj", "pk": 367, "fields": {"skill": 12, "lesson": 395, "size": 50}}, {"model": "courses.skillj", "pk": 368, "fields": {"skill": 12, "lesson": 396, "size": 50}}, {"model": "courses.skillj", "pk": 369, "fields": {"skill": 12, "lesson": 398, "size": 20}}, {"model": "courses.skillj", "pk": 370, "fields": {"skill": 12, "lesson": 400, "size": 20}}, {"model": "courses.skillj", "pk": 371, "fields": {"skill": 12, "lesson": 402, "size": 20}}, {"model": "courses.skillj", "pk": 372, "fields": {"skill": 12, "lesson": 403, "size": 20}}, {"model": "courses.skillj", "pk": 373, "fields": {"skill": 12, "lesson": 405, "size": 20}}, {"model": "courses.skillj", "pk": 374, "fields": {"skill": 12, "lesson": 409, "size": 50}}, {"model": "courses.skillj", "pk": 375, "fields": {"skill": 12, "lesson": 411, "size": 50}}, {"model": "courses.skillj", "pk": 376, "fields": {"skill": 12, "lesson": 414, "size": 30}}, {"model": "courses.skillj", "pk": 377, "fields": {"skill": 12, "lesson": 416, "size": 30}}, {"model": "courses.skillj", "pk": 378, "fields": {"skill": 12, "lesson": 418, "size": 40}}, {"model": "courses.skillj", "pk": 379, "fields": {"skill": 12, "lesson": 423, "size": 30}}, {"model": "courses.skillj", "pk": 380, "fields": {"skill": 12, "lesson": 425, "size": 30}}, {"model": "courses.skillj", "pk": 381, "fields": {"skill": 12, "lesson": 427, "size": 40}}, {"model": "courses.skillj", "pk": 382, "fields": {"skill": 12, "lesson": 429, "size": 50}}, {"model": "courses.skillj", "pk": 383, "fields": {"skill": 12, "lesson": 431, "size": 50}}, {"model": "courses.achievements", "pk": 15, "fields": {"tech_name": "EYO5ZJDP6M", "icon": "achives/16t_xaMvvZO.png", "title": "Java: \u0414\u0438\u043f\u043b\u043e\u043c\u043d\u0430\u044f \u0440\u0430\u0431\u043e\u0442\u0430", "image": "achives/16_JHghTAS.png", "background": "#00a2ff", "border": "#005f95"}}, {"model": "courses.achievements", "pk": 16, "fields": {"tech_name": "FEL0JGRY6C", "icon": "achives/15.png", "title": "Java: \u0412\u0435\u0431-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f:\u0444\u043e\u0440\u043c\u044b, \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0438 \u0438 \u0441\u0435\u0441\u0441\u0438\u0438", "image": "achives/15t.png", "background": "#dbd303", "border": "#807b00"}}, {"model": "courses.achievements", "pk": 17, "fields": {"tech_name": "TVGHINQR3P", "icon": "achives/14_VlOagpR.png", "title": "Java: \u041e\u0441\u043d\u043e\u0432\u044b \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u0432\u0435\u0431-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439", "image": "achives/14t_rpXjXAR.png", "background": "#aae116", "border": "#628600"}}, {"model": "courses.achievements", "pk": 18, "fields": {"tech_name": "CLW0BZSOMW", "icon": "achives/13_Pmvn0lz.png", "title": "Java: \u041c\u043d\u043e\u0433\u043e\u043f\u043e\u0442\u043e\u0447\u043d\u043e\u0441\u0442\u044c", "image": "achives/13t_8wJaFO6.png", "background": "#16d3d5", "border": "#007d7e"}}, {"model": "courses.achievements", "pk": 19, "fields": {"tech_name": "MTCP0K266E", "icon": "achives/12.png", "title": "Java: \u0420\u0430\u0431\u043e\u0442\u0430 \u0441 \u0431\u0430\u0437\u0430\u043c\u0438 \u0434\u0430\u043d\u043d\u044b\u0445", "image": "achives/12t.png", "background": "#d58b16", "border": "#895400"}}, {"model": "courses.achievements", "pk": 20, "fields": {"tech_name": "DGZCXL7GOB", "icon": "achives/11_TnyInI3.png", "title": "Java: \u0420\u0430\u0431\u043e\u0442\u0430 \u0441 \u0444\u0430\u0439\u043b\u0430\u043c\u0438 \u0438 \u0441\u0435\u0442\u044c\u044e", "image": "achives/11t_PlIJyKE.png", "background": "#a025ff", "border": "#4f0588"}}, {"model": "courses.achievements", "pk": 21, "fields": {"tech_name": "I4NJRCDY1I", "icon": "achives/10.png", "title": "Java: \u0412\u043d\u0435\u0448\u043d\u0438\u0439 \u0432\u0438\u0434 GUI \u0438 \u0440\u0438\u0441\u043e\u0432\u0430\u043d\u0438\u0435", "image": "achives/10t.png", "background": "#d24383", "border": "#9b0045"}}, {"model": "courses.achievements", "pk": 22, "fields": {"tech_name": "KDZNKM5YYL", "icon": "achives/9_j4BeAae.png", "title": "Java: \u041e\u0441\u043d\u043e\u0432\u044b \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f GUI", "image": "achives/9t_XB04aQi.png", "background": "#d24383", "border": "#9b0045"}}, {"model": "courses.achievements", "pk": 23, "fields": {"tech_name": "W7CQZIAUUF", "icon": "achives/8.png", "title": "Java: \u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0438 \u043e\u0442\u043b\u0430\u0434\u043a\u0430", "image": "achives/8t.png", "background": "#88abdf", "border": "#4e627f"}}, {"model": "courses.achievements", "pk": 24, "fields": {"tech_name": "HM1KQ8P2UC", "icon": "achives/7_JUT3378.png", "title": "Java: \u041d\u0430\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0435 \u0438 \u043f\u043e\u043b\u0438\u043c\u043e\u0440\u0444\u0438\u0437\u043c", "image": "achives/7t_IcXWV0J.png", "background": "#6d63f9", "border": "#352f8b"}}, {"model": "courses.achievements", "pk": 25, "fields": {"tech_name": "KXRGA1EGWU", "icon": "achives/6_UCH5Oto.png", "title": "Java: \u041e\u0431\u044a\u0435\u043a\u0442\u044b \u0438 \u043a\u043b\u0430\u0441\u0441\u044b", "image": "achives/6t_6GPa4Cm.png", "background": "#bbdc71", "border": "#6e8637"}}, {"model": "courses.achievements", "pk": 26, "fields": {"tech_name": "TLCT4VWNSP", "icon": "achives/5_zmYVWVY.png", "title": "Java: \u0422\u0438\u043f\u044b \u0434\u0430\u043d\u043d\u044b\u0445: \u041a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0438", "image": "achives/5t_MwDFKjE.png", "background": "#c350ff", "border": "#6e1b9a"}}, {"model": "courses.achievements", "pk": 27, "fields": {"tech_name": "CQYPHPGPPR", "icon": "achives/4_I5FABmI.png", "title": "Java: \u0422\u0438\u043f\u044b \u0434\u0430\u043d\u043d\u044b\u0445: \u0421\u0442\u0440\u043e\u043a\u0438 \u0438 \u0434\u0430\u0442\u044b", "image": "achives/4t_Wicy963.png", "background": "#feab0c", "border": "#915f00"}}, {"model": "courses.achievements", "pk": 28, "fields": {"tech_name": "MJ7IUWHQ4S", "icon": "achives/3_UnuHewH.png", "title": "Java: \u0422\u0438\u043f\u044b \u0434\u0430\u043d\u043d\u044b\u0445: \u0447\u0438\u0441\u043b\u0430", "image": "achives/3t_LEiFMmW.png", "background": "#4add53", "border": "#009a09"}}, {"model": "courses.achievements", "pk": 29, "fields": {"tech_name": "BW9LTGW5UQ", "icon": "achives/2_P9N3UKG.png", "title": "Java: \u0421\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441 \u044f\u0437\u044b\u043a\u0430", "image": "achives/2t_4GxlPla.png", "background": "#db7380", "border": "#b03241"}}, {"model": "courses.achievements", "pk": 30, "fields": {"tech_name": "DPO4YTE7H3", "icon": "achives/1_tf1vceA.png", "title": "Java: \u041f\u0435\u0440\u0432\u044b\u0435 \u0448\u0430\u0433\u0438", "image": "achives/1t_95r5sEe.png", "background": "#acf0f2", "border": "#15adb1"}}, {"model": "courses.achievements", "pk": 31, "fields": {"tech_name": "FDEEJ86OWM", "icon": "achives/16_sW5ldKS.png", "title": "iOS: \u041e\u0431\u0437\u043e\u0440 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439", "image": "achives/16t_ElpMZT4.png", "background": "#ffb957", "border": "#805b28"}}, {"model": "courses.achievements", "pk": 32, "fields": {"tech_name": "BKWRKFP96S", "icon": "achives/15_SLsDpba.png", "title": "iOS: WatchKit", "image": "achives/15t_G2dHbG0.png", "background": "#0adaff", "border": "#00859d"}}, {"model": "courses.achievements", "pk": 33, "fields": {"tech_name": "KUK3CWFPDD", "icon": "achives/14_ROgtPar.png", "title": "iOS: iPad, Swift 2 \u0438 iOS 9", "image": "achives/14t_zjLTw3C.png", "background": "#8916e1", "border": "#590b95"}}, {"model": "courses.achievements", "pk": 34, "fields": {"tech_name": "HECPXSYLO7", "icon": "achives/13_wdGknKy.png", "title": "iOS: \u0410\u043d\u0438\u043c\u0430\u0446\u0438\u044f \u0432 iOS", "image": "achives/13t_r5AUBkb.png", "background": "#16d3d5", "border": "#007d7e"}}, {"model": "courses.achievements", "pk": 35, "fields": {"tech_name": "Y5IJGUMSMR", "icon": "achives/12_xgflsuJ.png", "title": "iOS: CoreData \u0438 CoreGraphics", "image": "achives/12t_O9ziZtQ.png", "background": "#d24a43", "border": "#820600"}}, {"model": "courses.achievements", "pk": 36, "fields": {"tech_name": "VIHZAC2EM0", "icon": "achives/11_RPThsTE.png", "title": "iOS: \u0420\u0430\u0431\u043e\u0442\u0430 \u0441 \u0421\u0435\u0442\u044c\u044e", "image": "achives/11t_R6ZFGPo.png", "background": "#d58b16", "border": "#895400"}}, {"model": "courses.achievements", "pk": 37, "fields": {"tech_name": "NNYCAKIPFY", "icon": "achives/10_1JWLxAc.png", "title": "iOS: \u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u043f\u0430\u0440\u0441\u0438\u043d\u0433", "image": "achives/10t_rmSFxlx.png", "background": "#d24383", "border": "#9b0045"}}, {"model": "courses.achievements", "pk": 38, "fields": {"tech_name": "GSZGQRHFSI", "icon": "achives/9_9HmRgpY.png", "title": "iOS: \u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438", "image": "achives/9t_FNgfsfx.png", "background": "#a025ff", "border": "#4f0588"}}, {"model": "courses.achievements", "pk": 39, "fields": {"tech_name": "UNLY2P3UHV", "icon": "achives/8_f3xpsu4.png", "title": "iOS: \u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u041e\u041e\u041f", "image": "achives/8t_6caS4Mz.png", "background": "#88abdf", "border": "#4e627f"}}, {"model": "courses.achievements", "pk": 40, "fields": {"tech_name": "OFZO5GTM7S", "icon": "achives/7_b4mySsz.png", "title": "iOS: Enums, Structs", "image": "achives/7t_U1hXqEE.png", "background": "#6d63f9", "border": "#4942b3"}}, {"model": "courses.achievements", "pk": 41, "fields": {"tech_name": "MZDZBAXEQ3", "icon": "achives/6_j6oLsU1.png", "title": "iOS: Optionals \u0438 \u041a\u043e\u0440\u0442\u0435\u0436\u0438 \u0438 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445", "image": "achives/6t_6Q4gH9C.png", "background": "#bbdc71", "border": "#6e8637"}}, {"model": "courses.achievements", "pk": 42, "fields": {"tech_name": "OYKE2RJU4L", "icon": "achives/5_HVk0vvM.png", "title": "iOS: \u041a\u043b\u0430\u0441\u0441\u044b, UIViewController", "image": "achives/5t_Vg8scWj.png", "background": "#c350ff", "border": "#6e1b9a"}}, {"model": "courses.achievements", "pk": 43, "fields": {"tech_name": "BDNTTXIXLH", "icon": "achives/4_bOP8NNm.png", "title": "iOS: \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043d\u0430 Swift \u0438 \u043e\u0441\u043d\u043e\u0432\u044b UIKit", "image": "achives/4t_M29zQP7.png", "background": "#feab0c", "border": "#915f00"}}, {"model": "courses.achievements", "pk": 44, "fields": {"tech_name": "M8SSEHGG2R", "icon": "achives/3_nOZsrgu.png", "title": "iOS: \u0412\u0435\u0442\u0432\u043b\u0435\u043d\u0438\u0435 \u0438 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0438", "image": "achives/3t_EzvoNos.png", "background": "#4add53", "border": "#009a09"}}, {"model": "courses.achievements", "pk": 45, "fields": {"tech_name": "Y9AHY71EGY", "icon": "achives/2_eV2muKn.png", "title": "iOS: \u041e\u0441\u043d\u043e\u0432\u044b Swift \u043a\u0430\u043a \u044f\u0437\u044b\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f", "image": "achives/2t_yq8f6nn.png", "background": "#fa744d", "border": "#cc4923"}}, {"model": "courses.achievements", "pk": 46, "fields": {"tech_name": "WWCIEFCGXS", "icon": "achives/1_kP2O8vg.png", "title": "iOS: \u041e\u0441\u043d\u043e\u0432\u044b \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u043e\u0434 iOS", "image": "achives/1t_VRlv8Gf.png", "background": "#82abff", "border": "#5370aa"}}, {"model": "courses.achievements", "pk": 47, "fields": {"tech_name": "H1LYBMDCFL", "icon": "achives/16_DTWZDSx.png", "title": "Excel: \u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0432 \u043c\u0430\u043a\u0440\u043e\u0441\u044b \u0438 \u044f\u0437\u044b\u043a VBA (\u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0435\u043d\u0438\u0435)", "image": "achives/16t_9WuvuNR.png", "background": "#ffb957", "border": "#805b28"}}, {"model": "courses.achievements", "pk": 48, "fields": {"tech_name": "S4EVPA42JT", "icon": "achives/15_NLaKVBf.png", "title": "Excel: \u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0432 \u043c\u0430\u043a\u0440\u043e\u0441\u044b \u0438 \u044f\u0437\u044b\u043a VBA", "image": "achives/15t_B3SKKLm.png", "background": "#0adaff", "border": "#00859d"}}, {"model": "courses.achievements", "pk": 49, "fields": {"tech_name": "ODYVHKJZW9", "icon": "achives/14_PTyQYV1.png", "title": "Excel: \u0420\u0430\u0431\u043e\u0442\u0430 \u0441 \u0432\u043d\u0435\u0448\u043d\u0438\u043c\u0438 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430\u043c\u0438 \u0434\u0430\u043d\u043d\u044b\u0445", "image": "achives/14t_1w3a59I.png", "background": "#ac40ff", "border": "#7400cd"}}, {"model": "courses.achievements", "pk": 50, "fields": {"tech_name": "52IYPB06WL", "icon": "achives/13_n51py6o.png", "title": "Excel: \u0421\u043b\u043e\u0436\u043d\u044b\u0435 \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b", "image": "achives/13t_QyBcCES.png", "background": "#16d3d5", "border": "#007d7e"}}, {"model": "courses.achievements", "pk": 51, "fields": {"tech_name": "NMCP9SWIR0", "icon": "achives/12_mBYoISI.png", "title": "Excel: \u041f\u0440\u043e\u0433\u043d\u043e\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435", "image": "achives/12t_W1ecROl.png", "background": "#d24a43", "border": "#820600"}}, {"model": "courses.achievements", "pk": 52, "fields": {"tech_name": "AN9UL78WN4", "icon": "achives/11_fFjncp5.png", "title": "Excel: \u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0438 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 2", "image": "achives/11t_Fzu2ICH.png", "background": "#d58b16", "border": "#895400"}}, {"model": "courses.achievements", "pk": 53, "fields": {"tech_name": "O7OTRZUAQJ", "icon": "achives/10_JaPHJm4.png", "title": "Excel: \u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0438 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438", "image": "achives/10t_z5VaRjv.png", "background": "#d24383", "border": "#9b0045"}}, {"model": "courses.achievements", "pk": 54, "fields": {"tech_name": "SCZ1CBQ6UF", "icon": "achives/9_HGjY9bM.png", "title": "Excel: \u0424\u043e\u0440\u043c\u0443\u043b\u044b \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432", "image": "achives/9t_nBtNR8G.png", "background": "#a025ff", "border": "#4f0588"}}, {"model": "courses.achievements", "pk": 55, "fields": {"tech_name": "CPVMEMEBB0", "icon": "achives/8_Oakee0I.png", "title": "Excel: \u0421\u0432\u043e\u0434\u043d\u044b\u0435 \u0442\u0430\u0431\u043b\u0438\u0446\u044b", "image": "achives/8t_rFqrijw.png", "background": "#88abdf", "border": "#4e627f"}}, {"model": "courses.achievements", "pk": 56, "fields": {"tech_name": "SAX132CCCR", "icon": "achives/7_49FvigI.png", "title": "Excel: \u0412\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445", "image": "achives/7t_yXjsXUR.png", "background": "#6d63f9", "border": "#352f8b"}}, {"model": "courses.achievements", "pk": 57, "fields": {"tech_name": "VLZUK013T2", "icon": "achives/6_rpNBvTF.png", "title": "Excel: \u0424\u043e\u0440\u043c\u0443\u043b\u044b \u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0438. \u0420\u0430\u0431\u043e\u0442\u0430 \u0441 \u043e\u0448\u0438\u0431\u043a\u0430\u043c\u0438", "image": "achives/6t_JYzPjTH.png", "background": "#bbdc71", "border": "#6e8637"}}, {"model": "courses.achievements", "pk": 58, "fields": {"tech_name": "TFEARJWIMC", "icon": "achives/5_KLfCk1h.png", "title": "Excel: \u0424\u043e\u0440\u043c\u0443\u043b\u044b \u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0438.\u0411\u043e\u043b\u0435\u0435 \u0441\u043b\u043e\u0436\u043d\u044b\u0435 \u0444\u043e\u0440\u043c\u0443\u043b\u044b", "image": "achives/5t_noq5RnK.png", "background": "#c350ff", "border": "#6e1b9a"}}, {"model": "courses.achievements", "pk": 59, "fields": {"tech_name": "1ZD1BFNEZJ", "icon": "achives/4_J3WrDSY.png", "title": "Excel: \u0424\u043e\u0440\u043c\u0443\u043b\u044b \u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0438.\u0420\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u0444\u043e\u0440\u043c\u0443\u043b\u0430\u043c\u0438", "image": "achives/4t_Xl2DpdL.png", "background": "#feab0c", "border": "#915f00"}}, {"model": "courses.achievements", "pk": 60, "fields": {"tech_name": "7NFPYCSKDT", "icon": "achives/3_l4DzftY.png", "title": "Excel: \u0424\u043e\u0440\u043c\u0443\u043b\u044b \u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0438.\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435", "image": "achives/3t_afQm2YN.png", "background": "#4add53", "border": "#009a09"}}, {"model": "courses.achievements", "pk": 61, "fields": {"tech_name": "WVYFAWOHKV", "icon": "achives/2_dbK6kCv.png", "title": "Excel: \u041e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b (\u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0435\u043d\u0438\u0435)", "image": "achives/2t_79u4GW7.png", "background": "#fa744d", "border": "#cc4923"}}, {"model": "courses.achievements", "pk": 62, "fields": {"tech_name": "H4LVNA6AGG", "icon": "achives/1_k78dYpe.png", "title": "Excel: \u041e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b", "image": "achives/1t_xLDdZ54.png", "background": "#82abff", "border": "#5370aa"}}, {"model": "courses.coursemap", "pk": 1, "fields": {"_type": "L", "course": 1, "lesson": 1, "homework": null, "exam": null, "sort": 0, "token": "1#0"}}, {"model": "courses.coursemap", "pk": 2, "fields": {"_type": "H", "course": 1, "lesson": null, "homework": 1, "exam": null, "sort": 1, "token": "1#1"}}, {"model": "courses.coursemap", "pk": 3, "fields": {"_type": "L", "course": 1, "lesson": 2, "homework": null, "exam": null, "sort": 2, "token": "1#2"}}, {"model": "courses.coursemap", "pk": 4, "fields": {"_type": "H", "course": 1, "lesson": null, "homework": 2, "exam": null, "sort": 3, "token": "1#3"}}, {"model": "courses.coursemap", "pk": 5, "fields": {"_type": "L", "course": 1, "lesson": 3, "homework": null, "exam": null, "sort": 4, "token": "1#4"}}, {"model": "courses.coursemap", "pk": 6, "fields": {"_type": "H", "course": 1, "lesson": null, "homework": 3, "exam": null, "sort": 5, "token": "1#5"}}, {"model": "courses.coursemap", "pk": 7, "fields": {"_type": "L", "course": 1, "lesson": 4, "homework": null, "exam": null, "sort": 6, "token": "1#6"}}, {"model": "courses.coursemap", "pk": 8, "fields": {"_type": "H", "course": 1, "lesson": null, "homework": 4, "exam": null, "sort": 7, "token": "1#7"}}, {"model": "courses.coursemap", "pk": 9, "fields": {"_type": "L", "course": 1, "lesson": 5, "homework": null, "exam": null, "sort": 8, "token": "1#8"}}, {"model": "courses.coursemap", "pk": 10, "fields": {"_type": "H", "course": 1, "lesson": null, "homework": 5, "exam": null, "sort": 9, "token": "1#9"}}, {"model": "courses.coursemap", "pk": 11, "fields": {"_type": "L", "course": 1, "lesson": 6, "homework": null, "exam": null, "sort": 10, "token": "1#10"}}, {"model": "courses.coursemap", "pk": 12, "fields": {"_type": "H", "course": 1, "lesson": null, "homework": 6, "exam": null, "sort": 11, "token": "1#11"}}, {"model": "courses.coursemap", "pk": 13, "fields": {"_type": "L", "course": 1, "lesson": 7, "homework": null, "exam": null, "sort": 12, "token": "1#12"}}, {"model": "courses.coursemap", "pk": 14, "fields": {"_type": "H", "course": 1, "lesson": null, "homework": 7, "exam": null, "sort": 13, "token": "1#13"}}, {"model": "courses.coursemap", "pk": 15, "fields": {"_type": "L", "course": 1, "lesson": 8, "homework": null, "exam": null, "sort": 14, "token": "1#14"}}, {"model": "courses.coursemap", "pk": 16, "fields": {"_type": "H", "course": 1, "lesson": null, "homework": 8, "exam": null, "sort": 15, "token": "1#15"}}, {"model": "courses.coursemap", "pk": 17, "fields": {"_type": "L", "course": 1, "lesson": 9, "homework": null, "exam": null, "sort": 16, "token": "1#16"}}, {"model": "courses.coursemap", "pk": 18, "fields": {"_type": "H", "course": 1, "lesson": null, "homework": 9, "exam": null, "sort": 17, "token": "1#17"}}, {"model": "courses.coursemap", "pk": 19, "fields": {"_type": "L", "course": 1, "lesson": 10, "homework": null, "exam": null, "sort": 18, "token": "1#18"}}, {"model": "courses.coursemap", "pk": 20, "fields": {"_type": "H", "course": 1, "lesson": null, "homework": 10, "exam": null, "sort": 19, "token": "1#19"}}, {"model": "courses.coursemap", "pk": 21, "fields": {"_type": "L", "course": 1, "lesson": 11, "homework": null, "exam": null, "sort": 20, "token": "1#20"}}, {"model": "courses.coursemap", "pk": 22, "fields": {"_type": "H", "course": 1, "lesson": null, "homework": 11, "exam": null, "sort": 21, "token": "1#21"}}, {"model": "courses.coursemap", "pk": 23, "fields": {"_type": "L", "course": 1, "lesson": 12, "homework": null, "exam": null, "sort": 22, "token": "1#22"}}, {"model": "courses.coursemap", "pk": 24, "fields": {"_type": "H", "course": 1, "lesson": null, "homework": 12, "exam": null, "sort": 23, "token": "1#23"}}, {"model": "courses.coursemap", "pk": 25, "fields": {"_type": "L", "course": 1, "lesson": 13, "homework": null, "exam": null, "sort": 24, "token": "1#24"}}, {"model": "courses.coursemap", "pk": 26, "fields": {"_type": "H", "course": 1, "lesson": null, "homework": 13, "exam": null, "sort": 25, "token": "1#25"}}, {"model": "courses.coursemap", "pk": 27, "fields": {"_type": "L", "course": 1, "lesson": 14, "homework": null, "exam": null, "sort": 26, "token": "1#26"}}, {"model": "courses.coursemap", "pk": 28, "fields": {"_type": "H", "course": 1, "lesson": null, "homework": 14, "exam": null, "sort": 27, "token": "1#27"}}, {"model": "courses.coursemap", "pk": 29, "fields": {"_type": "L", "course": 1, "lesson": 15, "homework": null, "exam": null, "sort": 28, "token": "1#28"}}, {"model": "courses.coursemap", "pk": 30, "fields": {"_type": "H", "course": 1, "lesson": null, "homework": 15, "exam": null, "sort": 29, "token": "1#29"}}, {"model": "courses.coursemap", "pk": 31, "fields": {"_type": "L", "course": 1, "lesson": 16, "homework": null, "exam": null, "sort": 30, "token": "1#30"}}, {"model": "courses.coursemap", "pk": 32, "fields": {"_type": "L", "course": 1, "lesson": 17, "homework": null, "exam": null, "sort": 31, "token": "1#31"}}, {"model": "courses.coursemap", "pk": 33, "fields": {"_type": "E", "course": 1, "lesson": null, "homework": null, "exam": 1, "sort": 32, "token": "1#32"}}, {"model": "courses.coursemap", "pk": 34, "fields": {"_type": "L", "course": 1, "lesson": 18, "homework": null, "exam": null, "sort": 33, "token": "1#33"}}, {"model": "courses.coursemap", "pk": 35, "fields": {"_type": "L", "course": 1, "lesson": 184, "homework": null, "exam": null, "sort": 34, "token": "1#34"}}, {"model": "courses.coursemap", "pk": 36, "fields": {"_type": "L", "course": 2, "lesson": 66, "homework": null, "exam": null, "sort": 0, "token": "2#0"}}, {"model": "courses.coursemap", "pk": 37, "fields": {"_type": "L", "course": 2, "lesson": 29, "homework": null, "exam": null, "sort": 1, "token": "2#1"}}, {"model": "courses.coursemap", "pk": 38, "fields": {"_type": "L", "course": 2, "lesson": 30, "homework": null, "exam": null, "sort": 2, "token": "2#2"}}, {"model": "courses.coursemap", "pk": 39, "fields": {"_type": "L", "course": 2, "lesson": 31, "homework": null, "exam": null, "sort": 3, "token": "2#3"}}, {"model": "courses.coursemap", "pk": 40, "fields": {"_type": "L", "course": 2, "lesson": 32, "homework": null, "exam": null, "sort": 4, "token": "2#4"}}, {"model": "courses.coursemap", "pk": 41, "fields": {"_type": "L", "course": 2, "lesson": 33, "homework": null, "exam": null, "sort": 5, "token": "2#5"}}, {"model": "courses.coursemap", "pk": 42, "fields": {"_type": "L", "course": 2, "lesson": 34, "homework": null, "exam": null, "sort": 6, "token": "2#6"}}, {"model": "courses.coursemap", "pk": 43, "fields": {"_type": "H", "course": 2, "lesson": null, "homework": 17, "exam": null, "sort": 7, "token": "2#7"}}, {"model": "courses.coursemap", "pk": 44, "fields": {"_type": "L", "course": 2, "lesson": 67, "homework": null, "exam": null, "sort": 8, "token": "2#8"}}, {"model": "courses.coursemap", "pk": 45, "fields": {"_type": "L", "course": 2, "lesson": 35, "homework": null, "exam": null, "sort": 9, "token": "2#9"}}, {"model": "courses.coursemap", "pk": 46, "fields": {"_type": "L", "course": 2, "lesson": 36, "homework": null, "exam": null, "sort": 10, "token": "2#10"}}, {"model": "courses.coursemap", "pk": 47, "fields": {"_type": "L", "course": 2, "lesson": 37, "homework": null, "exam": null, "sort": 11, "token": "2#11"}}, {"model": "courses.coursemap", "pk": 48, "fields": {"_type": "L", "course": 2, "lesson": 38, "homework": null, "exam": null, "sort": 12, "token": "2#12"}}, {"model": "courses.coursemap", "pk": 49, "fields": {"_type": "L", "course": 2, "lesson": 39, "homework": null, "exam": null, "sort": 13, "token": "2#13"}}, {"model": "courses.coursemap", "pk": 50, "fields": {"_type": "L", "course": 2, "lesson": 40, "homework": null, "exam": null, "sort": 14, "token": "2#14"}}, {"model": "courses.coursemap", "pk": 51, "fields": {"_type": "H", "course": 2, "lesson": null, "homework": 18, "exam": null, "sort": 15, "token": "2#15"}}, {"model": "courses.coursemap", "pk": 52, "fields": {"_type": "L", "course": 2, "lesson": 68, "homework": null, "exam": null, "sort": 16, "token": "2#16"}}, {"model": "courses.coursemap", "pk": 53, "fields": {"_type": "L", "course": 2, "lesson": 41, "homework": null, "exam": null, "sort": 17, "token": "2#17"}}, {"model": "courses.coursemap", "pk": 54, "fields": {"_type": "L", "course": 2, "lesson": 42, "homework": null, "exam": null, "sort": 18, "token": "2#18"}}, {"model": "courses.coursemap", "pk": 55, "fields": {"_type": "L", "course": 2, "lesson": 43, "homework": null, "exam": null, "sort": 19, "token": "2#19"}}, {"model": "courses.coursemap", "pk": 56, "fields": {"_type": "L", "course": 2, "lesson": 44, "homework": null, "exam": null, "sort": 20, "token": "2#20"}}, {"model": "courses.coursemap", "pk": 57, "fields": {"_type": "L", "course": 2, "lesson": 45, "homework": null, "exam": null, "sort": 21, "token": "2#21"}}, {"model": "courses.coursemap", "pk": 58, "fields": {"_type": "L", "course": 2, "lesson": 46, "homework": null, "exam": null, "sort": 22, "token": "2#22"}}, {"model": "courses.coursemap", "pk": 59, "fields": {"_type": "L", "course": 2, "lesson": 47, "homework": null, "exam": null, "sort": 23, "token": "2#23"}}, {"model": "courses.coursemap", "pk": 60, "fields": {"_type": "H", "course": 2, "lesson": null, "homework": 19, "exam": null, "sort": 24, "token": "2#24"}}, {"model": "courses.coursemap", "pk": 61, "fields": {"_type": "L", "course": 2, "lesson": 289, "homework": null, "exam": null, "sort": 25, "token": "2#25"}}, {"model": "courses.coursemap", "pk": 62, "fields": {"_type": "L", "course": 2, "lesson": 48, "homework": null, "exam": null, "sort": 26, "token": "2#26"}}, {"model": "courses.coursemap", "pk": 63, "fields": {"_type": "L", "course": 2, "lesson": 49, "homework": null, "exam": null, "sort": 27, "token": "2#27"}}, {"model": "courses.coursemap", "pk": 64, "fields": {"_type": "L", "course": 2, "lesson": 50, "homework": null, "exam": null, "sort": 28, "token": "2#28"}}, {"model": "courses.coursemap", "pk": 65, "fields": {"_type": "L", "course": 2, "lesson": 51, "homework": null, "exam": null, "sort": 29, "token": "2#29"}}, {"model": "courses.coursemap", "pk": 66, "fields": {"_type": "L", "course": 2, "lesson": 52, "homework": null, "exam": null, "sort": 30, "token": "2#30"}}, {"model": "courses.coursemap", "pk": 67, "fields": {"_type": "L", "course": 2, "lesson": 53, "homework": null, "exam": null, "sort": 31, "token": "2#31"}}, {"model": "courses.coursemap", "pk": 68, "fields": {"_type": "L", "course": 2, "lesson": 54, "homework": null, "exam": null, "sort": 32, "token": "2#32"}}, {"model": "courses.coursemap", "pk": 69, "fields": {"_type": "H", "course": 2, "lesson": null, "homework": 20, "exam": null, "sort": 33, "token": "2#33"}}, {"model": "courses.coursemap", "pk": 70, "fields": {"_type": "L", "course": 2, "lesson": 290, "homework": null, "exam": null, "sort": 34, "token": "2#34"}}, {"model": "courses.coursemap", "pk": 71, "fields": {"_type": "L", "course": 2, "lesson": 55, "homework": null, "exam": null, "sort": 35, "token": "2#35"}}, {"model": "courses.coursemap", "pk": 72, "fields": {"_type": "L", "course": 2, "lesson": 56, "homework": null, "exam": null, "sort": 36, "token": "2#36"}}, {"model": "courses.coursemap", "pk": 73, "fields": {"_type": "L", "course": 2, "lesson": 57, "homework": null, "exam": null, "sort": 37, "token": "2#37"}}, {"model": "courses.coursemap", "pk": 74, "fields": {"_type": "L", "course": 2, "lesson": 58, "homework": null, "exam": null, "sort": 38, "token": "2#38"}}, {"model": "courses.coursemap", "pk": 75, "fields": {"_type": "L", "course": 2, "lesson": 59, "homework": null, "exam": null, "sort": 39, "token": "2#39"}}, {"model": "courses.coursemap", "pk": 76, "fields": {"_type": "H", "course": 2, "lesson": null, "homework": 21, "exam": null, "sort": 40, "token": "2#40"}}, {"model": "courses.coursemap", "pk": 77, "fields": {"_type": "L", "course": 2, "lesson": 291, "homework": null, "exam": null, "sort": 41, "token": "2#41"}}, {"model": "courses.coursemap", "pk": 78, "fields": {"_type": "L", "course": 2, "lesson": 60, "homework": null, "exam": null, "sort": 42, "token": "2#42"}}, {"model": "courses.coursemap", "pk": 79, "fields": {"_type": "L", "course": 2, "lesson": 61, "homework": null, "exam": null, "sort": 43, "token": "2#43"}}, {"model": "courses.coursemap", "pk": 80, "fields": {"_type": "L", "course": 2, "lesson": 62, "homework": null, "exam": null, "sort": 44, "token": "2#44"}}, {"model": "courses.coursemap", "pk": 81, "fields": {"_type": "L", "course": 2, "lesson": 63, "homework": null, "exam": null, "sort": 45, "token": "2#45"}}, {"model": "courses.coursemap", "pk": 82, "fields": {"_type": "L", "course": 2, "lesson": 64, "homework": null, "exam": null, "sort": 46, "token": "2#46"}}, {"model": "courses.coursemap", "pk": 83, "fields": {"_type": "H", "course": 2, "lesson": null, "homework": 22, "exam": null, "sort": 47, "token": "2#47"}}, {"model": "courses.coursemap", "pk": 84, "fields": {"_type": "L", "course": 2, "lesson": 292, "homework": null, "exam": null, "sort": 48, "token": "2#48"}}, {"model": "courses.coursemap", "pk": 85, "fields": {"_type": "L", "course": 2, "lesson": 69, "homework": null, "exam": null, "sort": 49, "token": "2#49"}}, {"model": "courses.coursemap", "pk": 86, "fields": {"_type": "L", "course": 2, "lesson": 70, "homework": null, "exam": null, "sort": 50, "token": "2#50"}}, {"model": "courses.coursemap", "pk": 87, "fields": {"_type": "L", "course": 2, "lesson": 71, "homework": null, "exam": null, "sort": 51, "token": "2#51"}}, {"model": "courses.coursemap", "pk": 88, "fields": {"_type": "L", "course": 2, "lesson": 72, "homework": null, "exam": null, "sort": 52, "token": "2#52"}}, {"model": "courses.coursemap", "pk": 89, "fields": {"_type": "H", "course": 2, "lesson": null, "homework": 51, "exam": null, "sort": 53, "token": "2#53"}}, {"model": "courses.coursemap", "pk": 90, "fields": {"_type": "L", "course": 2, "lesson": 293, "homework": null, "exam": null, "sort": 54, "token": "2#54"}}, {"model": "courses.coursemap", "pk": 91, "fields": {"_type": "L", "course": 2, "lesson": 73, "homework": null, "exam": null, "sort": 55, "token": "2#55"}}, {"model": "courses.coursemap", "pk": 92, "fields": {"_type": "L", "course": 2, "lesson": 74, "homework": null, "exam": null, "sort": 56, "token": "2#56"}}, {"model": "courses.coursemap", "pk": 93, "fields": {"_type": "L", "course": 2, "lesson": 75, "homework": null, "exam": null, "sort": 57, "token": "2#57"}}, {"model": "courses.coursemap", "pk": 94, "fields": {"_type": "L", "course": 2, "lesson": 76, "homework": null, "exam": null, "sort": 58, "token": "2#58"}}, {"model": "courses.coursemap", "pk": 95, "fields": {"_type": "L", "course": 2, "lesson": 77, "homework": null, "exam": null, "sort": 59, "token": "2#59"}}, {"model": "courses.coursemap", "pk": 96, "fields": {"_type": "L", "course": 2, "lesson": 78, "homework": null, "exam": null, "sort": 60, "token": "2#60"}}, {"model": "courses.coursemap", "pk": 97, "fields": {"_type": "H", "course": 2, "lesson": null, "homework": 52, "exam": null, "sort": 61, "token": "2#61"}}, {"model": "courses.coursemap", "pk": 98, "fields": {"_type": "L", "course": 2, "lesson": 79, "homework": null, "exam": null, "sort": 62, "token": "2#62"}}, {"model": "courses.coursemap", "pk": 99, "fields": {"_type": "L", "course": 2, "lesson": 80, "homework": null, "exam": null, "sort": 63, "token": "2#63"}}, {"model": "courses.coursemap", "pk": 100, "fields": {"_type": "L", "course": 2, "lesson": 81, "homework": null, "exam": null, "sort": 64, "token": "2#64"}}, {"model": "courses.coursemap", "pk": 101, "fields": {"_type": "L", "course": 2, "lesson": 82, "homework": null, "exam": null, "sort": 65, "token": "2#65"}}, {"model": "courses.coursemap", "pk": 102, "fields": {"_type": "L", "course": 2, "lesson": 83, "homework": null, "exam": null, "sort": 66, "token": "2#66"}}, {"model": "courses.coursemap", "pk": 103, "fields": {"_type": "L", "course": 2, "lesson": 84, "homework": null, "exam": null, "sort": 67, "token": "2#67"}}, {"model": "courses.coursemap", "pk": 104, "fields": {"_type": "H", "course": 2, "lesson": null, "homework": 53, "exam": null, "sort": 68, "token": "2#68"}}, {"model": "courses.coursemap", "pk": 105, "fields": {"_type": "L", "course": 2, "lesson": 85, "homework": null, "exam": null, "sort": 69, "token": "2#69"}}, {"model": "courses.coursemap", "pk": 106, "fields": {"_type": "L", "course": 2, "lesson": 86, "homework": null, "exam": null, "sort": 70, "token": "2#70"}}, {"model": "courses.coursemap", "pk": 107, "fields": {"_type": "L", "course": 2, "lesson": 87, "homework": null, "exam": null, "sort": 71, "token": "2#71"}}, {"model": "courses.coursemap", "pk": 108, "fields": {"_type": "L", "course": 2, "lesson": 88, "homework": null, "exam": null, "sort": 72, "token": "2#72"}}, {"model": "courses.coursemap", "pk": 109, "fields": {"_type": "L", "course": 2, "lesson": 89, "homework": null, "exam": null, "sort": 73, "token": "2#73"}}, {"model": "courses.coursemap", "pk": 110, "fields": {"_type": "L", "course": 2, "lesson": 90, "homework": null, "exam": null, "sort": 74, "token": "2#74"}}, {"model": "courses.coursemap", "pk": 111, "fields": {"_type": "L", "course": 2, "lesson": 91, "homework": null, "exam": null, "sort": 75, "token": "2#75"}}, {"model": "courses.coursemap", "pk": 113, "fields": {"_type": "L", "course": 2, "lesson": 100, "homework": null, "exam": null, "sort": 77, "token": "2#77"}}, {"model": "courses.coursemap", "pk": 114, "fields": {"_type": "L", "course": 2, "lesson": 101, "homework": null, "exam": null, "sort": 78, "token": "2#78"}}, {"model": "courses.coursemap", "pk": 115, "fields": {"_type": "L", "course": 2, "lesson": 102, "homework": null, "exam": null, "sort": 79, "token": "2#79"}}, {"model": "courses.coursemap", "pk": 116, "fields": {"_type": "L", "course": 2, "lesson": 103, "homework": null, "exam": null, "sort": 80, "token": "2#80"}}, {"model": "courses.coursemap", "pk": 117, "fields": {"_type": "L", "course": 2, "lesson": 105, "homework": null, "exam": null, "sort": 81, "token": "2#81"}}, {"model": "courses.coursemap", "pk": 118, "fields": {"_type": "H", "course": 2, "lesson": null, "homework": 57, "exam": null, "sort": 82, "token": "2#82"}}, {"model": "courses.coursemap", "pk": 119, "fields": {"_type": "L", "course": 2, "lesson": 106, "homework": null, "exam": null, "sort": 83, "token": "2#83"}}, {"model": "courses.coursemap", "pk": 120, "fields": {"_type": "L", "course": 2, "lesson": 107, "homework": null, "exam": null, "sort": 84, "token": "2#84"}}, {"model": "courses.coursemap", "pk": 121, "fields": {"_type": "L", "course": 2, "lesson": 108, "homework": null, "exam": null, "sort": 85, "token": "2#85"}}, {"model": "courses.coursemap", "pk": 122, "fields": {"_type": "L", "course": 2, "lesson": 109, "homework": null, "exam": null, "sort": 86, "token": "2#86"}}, {"model": "courses.coursemap", "pk": 123, "fields": {"_type": "L", "course": 2, "lesson": 110, "homework": null, "exam": null, "sort": 87, "token": "2#87"}}, {"model": "courses.coursemap", "pk": 124, "fields": {"_type": "L", "course": 2, "lesson": 111, "homework": null, "exam": null, "sort": 88, "token": "2#88"}}, {"model": "courses.coursemap", "pk": 125, "fields": {"_type": "H", "course": 2, "lesson": null, "homework": 58, "exam": null, "sort": 89, "token": "2#89"}}, {"model": "courses.coursemap", "pk": 126, "fields": {"_type": "L", "course": 2, "lesson": 112, "homework": null, "exam": null, "sort": 90, "token": "2#90"}}, {"model": "courses.coursemap", "pk": 127, "fields": {"_type": "L", "course": 2, "lesson": 113, "homework": null, "exam": null, "sort": 91, "token": "2#91"}}, {"model": "courses.coursemap", "pk": 128, "fields": {"_type": "L", "course": 2, "lesson": 115, "homework": null, "exam": null, "sort": 92, "token": "2#92"}}, {"model": "courses.coursemap", "pk": 129, "fields": {"_type": "L", "course": 2, "lesson": 117, "homework": null, "exam": null, "sort": 93, "token": "2#93"}}, {"model": "courses.coursemap", "pk": 130, "fields": {"_type": "H", "course": 2, "lesson": null, "homework": 59, "exam": null, "sort": 94, "token": "2#94"}}, {"model": "courses.coursemap", "pk": 131, "fields": {"_type": "L", "course": 2, "lesson": 119, "homework": null, "exam": null, "sort": 95, "token": "2#95"}}, {"model": "courses.coursemap", "pk": 132, "fields": {"_type": "L", "course": 2, "lesson": 120, "homework": null, "exam": null, "sort": 96, "token": "2#96"}}, {"model": "courses.coursemap", "pk": 133, "fields": {"_type": "L", "course": 2, "lesson": 121, "homework": null, "exam": null, "sort": 97, "token": "2#97"}}, {"model": "courses.coursemap", "pk": 134, "fields": {"_type": "L", "course": 2, "lesson": 123, "homework": null, "exam": null, "sort": 98, "token": "2#98"}}, {"model": "courses.coursemap", "pk": 135, "fields": {"_type": "L", "course": 2, "lesson": 124, "homework": null, "exam": null, "sort": 99, "token": "2#99"}}, {"model": "courses.coursemap", "pk": 136, "fields": {"_type": "L", "course": 2, "lesson": 125, "homework": null, "exam": null, "sort": 100, "token": "2#100"}}, {"model": "courses.coursemap", "pk": 137, "fields": {"_type": "H", "course": 2, "lesson": null, "homework": 60, "exam": null, "sort": 101, "token": "2#101"}}, {"model": "courses.coursemap", "pk": 138, "fields": {"_type": "L", "course": 2, "lesson": 127, "homework": null, "exam": null, "sort": 102, "token": "2#102"}}, {"model": "courses.coursemap", "pk": 139, "fields": {"_type": "L", "course": 3, "lesson": 152, "homework": null, "exam": null, "sort": 0, "token": "3#0"}}, {"model": "courses.coursemap", "pk": 140, "fields": {"_type": "L", "course": 3, "lesson": 153, "homework": null, "exam": null, "sort": 1, "token": "3#1"}}, {"model": "courses.coursemap", "pk": 141, "fields": {"_type": "L", "course": 3, "lesson": 154, "homework": null, "exam": null, "sort": 2, "token": "3#2"}}, {"model": "courses.coursemap", "pk": 142, "fields": {"_type": "L", "course": 3, "lesson": 155, "homework": null, "exam": null, "sort": 3, "token": "3#3"}}, {"model": "courses.coursemap", "pk": 143, "fields": {"_type": "H", "course": 3, "lesson": null, "homework": 23, "exam": null, "sort": 4, "token": "3#4"}}, {"model": "courses.coursemap", "pk": 144, "fields": {"_type": "L", "course": 3, "lesson": 156, "homework": null, "exam": null, "sort": 5, "token": "3#5"}}, {"model": "courses.coursemap", "pk": 145, "fields": {"_type": "L", "course": 3, "lesson": 157, "homework": null, "exam": null, "sort": 6, "token": "3#6"}}, {"model": "courses.coursemap", "pk": 146, "fields": {"_type": "H", "course": 3, "lesson": null, "homework": 24, "exam": null, "sort": 7, "token": "3#7"}}, {"model": "courses.coursemap", "pk": 147, "fields": {"_type": "L", "course": 3, "lesson": 158, "homework": null, "exam": null, "sort": 8, "token": "3#8"}}, {"model": "courses.coursemap", "pk": 148, "fields": {"_type": "L", "course": 3, "lesson": 159, "homework": null, "exam": null, "sort": 9, "token": "3#9"}}, {"model": "courses.coursemap", "pk": 149, "fields": {"_type": "L", "course": 3, "lesson": 160, "homework": null, "exam": null, "sort": 10, "token": "3#10"}}, {"model": "courses.coursemap", "pk": 150, "fields": {"_type": "H", "course": 3, "lesson": null, "homework": 25, "exam": null, "sort": 11, "token": "3#11"}}, {"model": "courses.coursemap", "pk": 151, "fields": {"_type": "L", "course": 3, "lesson": 161, "homework": null, "exam": null, "sort": 12, "token": "3#12"}}, {"model": "courses.coursemap", "pk": 152, "fields": {"_type": "L", "course": 3, "lesson": 162, "homework": null, "exam": null, "sort": 13, "token": "3#13"}}, {"model": "courses.coursemap", "pk": 153, "fields": {"_type": "L", "course": 3, "lesson": 163, "homework": null, "exam": null, "sort": 14, "token": "3#14"}}, {"model": "courses.coursemap", "pk": 154, "fields": {"_type": "H", "course": 3, "lesson": null, "homework": 28, "exam": null, "sort": 15, "token": "3#15"}}, {"model": "courses.coursemap", "pk": 155, "fields": {"_type": "L", "course": 3, "lesson": 164, "homework": null, "exam": null, "sort": 16, "token": "3#16"}}, {"model": "courses.coursemap", "pk": 156, "fields": {"_type": "L", "course": 3, "lesson": 165, "homework": null, "exam": null, "sort": 17, "token": "3#17"}}, {"model": "courses.coursemap", "pk": 157, "fields": {"_type": "L", "course": 3, "lesson": 166, "homework": null, "exam": null, "sort": 18, "token": "3#18"}}, {"model": "courses.coursemap", "pk": 158, "fields": {"_type": "H", "course": 3, "lesson": null, "homework": 29, "exam": null, "sort": 19, "token": "3#19"}}, {"model": "courses.coursemap", "pk": 159, "fields": {"_type": "L", "course": 3, "lesson": 167, "homework": null, "exam": null, "sort": 20, "token": "3#20"}}, {"model": "courses.coursemap", "pk": 160, "fields": {"_type": "L", "course": 3, "lesson": 168, "homework": null, "exam": null, "sort": 21, "token": "3#21"}}, {"model": "courses.coursemap", "pk": 161, "fields": {"_type": "L", "course": 3, "lesson": 169, "homework": null, "exam": null, "sort": 22, "token": "3#22"}}, {"model": "courses.coursemap", "pk": 162, "fields": {"_type": "H", "course": 3, "lesson": null, "homework": 30, "exam": null, "sort": 23, "token": "3#23"}}, {"model": "courses.coursemap", "pk": 163, "fields": {"_type": "L", "course": 3, "lesson": 170, "homework": null, "exam": null, "sort": 24, "token": "3#24"}}, {"model": "courses.coursemap", "pk": 164, "fields": {"_type": "L", "course": 3, "lesson": 171, "homework": null, "exam": null, "sort": 25, "token": "3#25"}}, {"model": "courses.coursemap", "pk": 165, "fields": {"_type": "L", "course": 3, "lesson": 172, "homework": null, "exam": null, "sort": 26, "token": "3#26"}}, {"model": "courses.coursemap", "pk": 166, "fields": {"_type": "H", "course": 3, "lesson": null, "homework": 31, "exam": null, "sort": 27, "token": "3#27"}}, {"model": "courses.coursemap", "pk": 167, "fields": {"_type": "L", "course": 3, "lesson": 173, "homework": null, "exam": null, "sort": 28, "token": "3#28"}}, {"model": "courses.coursemap", "pk": 168, "fields": {"_type": "L", "course": 3, "lesson": 174, "homework": null, "exam": null, "sort": 29, "token": "3#29"}}, {"model": "courses.coursemap", "pk": 169, "fields": {"_type": "L", "course": 3, "lesson": 175, "homework": null, "exam": null, "sort": 30, "token": "3#30"}}, {"model": "courses.coursemap", "pk": 170, "fields": {"_type": "H", "course": 3, "lesson": null, "homework": 32, "exam": null, "sort": 31, "token": "3#31"}}, {"model": "courses.coursemap", "pk": 171, "fields": {"_type": "L", "course": 3, "lesson": 176, "homework": null, "exam": null, "sort": 32, "token": "3#32"}}, {"model": "courses.coursemap", "pk": 172, "fields": {"_type": "L", "course": 3, "lesson": 185, "homework": null, "exam": null, "sort": 33, "token": "3#33"}}, {"model": "courses.coursemap", "pk": 173, "fields": {"_type": "L", "course": 3, "lesson": 186, "homework": null, "exam": null, "sort": 34, "token": "3#34"}}, {"model": "courses.coursemap", "pk": 174, "fields": {"_type": "H", "course": 3, "lesson": null, "homework": 34, "exam": null, "sort": 35, "token": "3#35"}}, {"model": "courses.coursemap", "pk": 175, "fields": {"_type": "L", "course": 3, "lesson": 177, "homework": null, "exam": null, "sort": 36, "token": "3#36"}}, {"model": "courses.coursemap", "pk": 176, "fields": {"_type": "L", "course": 3, "lesson": 187, "homework": null, "exam": null, "sort": 37, "token": "3#37"}}, {"model": "courses.coursemap", "pk": 177, "fields": {"_type": "L", "course": 3, "lesson": 188, "homework": null, "exam": null, "sort": 38, "token": "3#38"}}, {"model": "courses.coursemap", "pk": 179, "fields": {"_type": "H", "course": 3, "lesson": null, "homework": 35, "exam": null, "sort": 40, "token": "3#40"}}, {"model": "courses.coursemap", "pk": 180, "fields": {"_type": "L", "course": 3, "lesson": 178, "homework": null, "exam": null, "sort": 41, "token": "3#41"}}, {"model": "courses.coursemap", "pk": 181, "fields": {"_type": "L", "course": 3, "lesson": 189, "homework": null, "exam": null, "sort": 42, "token": "3#42"}}, {"model": "courses.coursemap", "pk": 182, "fields": {"_type": "L", "course": 3, "lesson": 441, "homework": null, "exam": null, "sort": 43, "token": "3#43"}}, {"model": "courses.coursemap", "pk": 183, "fields": {"_type": "H", "course": 3, "lesson": null, "homework": 46, "exam": null, "sort": 44, "token": "3#44"}}, {"model": "courses.coursemap", "pk": 184, "fields": {"_type": "L", "course": 3, "lesson": 179, "homework": null, "exam": null, "sort": 45, "token": "3#45"}}, {"model": "courses.coursemap", "pk": 185, "fields": {"_type": "L", "course": 3, "lesson": 191, "homework": null, "exam": null, "sort": 46, "token": "3#46"}}, {"model": "courses.coursemap", "pk": 186, "fields": {"_type": "L", "course": 3, "lesson": 192, "homework": null, "exam": null, "sort": 47, "token": "3#47"}}, {"model": "courses.coursemap", "pk": 187, "fields": {"_type": "H", "course": 3, "lesson": null, "homework": 55, "exam": null, "sort": 48, "token": "3#48"}}, {"model": "courses.coursemap", "pk": 188, "fields": {"_type": "L", "course": 3, "lesson": 180, "homework": null, "exam": null, "sort": 49, "token": "3#49"}}, {"model": "courses.coursemap", "pk": 189, "fields": {"_type": "L", "course": 3, "lesson": 193, "homework": null, "exam": null, "sort": 50, "token": "3#50"}}, {"model": "courses.coursemap", "pk": 191, "fields": {"_type": "H", "course": 3, "lesson": null, "homework": 69, "exam": null, "sort": 52, "token": "3#52"}}, {"model": "courses.coursemap", "pk": 192, "fields": {"_type": "L", "course": 3, "lesson": 181, "homework": null, "exam": null, "sort": 53, "token": "3#53"}}, {"model": "courses.coursemap", "pk": 193, "fields": {"_type": "L", "course": 3, "lesson": 196, "homework": null, "exam": null, "sort": 54, "token": "3#54"}}, {"model": "courses.coursemap", "pk": 194, "fields": {"_type": "L", "course": 3, "lesson": 197, "homework": null, "exam": null, "sort": 55, "token": "3#55"}}, {"model": "courses.coursemap", "pk": 195, "fields": {"_type": "H", "course": 3, "lesson": null, "homework": 74, "exam": null, "sort": 56, "token": "3#56"}}, {"model": "courses.coursemap", "pk": 196, "fields": {"_type": "L", "course": 3, "lesson": 182, "homework": null, "exam": null, "sort": 57, "token": "3#57"}}, {"model": "courses.coursemap", "pk": 197, "fields": {"_type": "L", "course": 3, "lesson": 198, "homework": null, "exam": null, "sort": 58, "token": "3#58"}}, {"model": "courses.coursemap", "pk": 198, "fields": {"_type": "L", "course": 3, "lesson": 199, "homework": null, "exam": null, "sort": 59, "token": "3#59"}}, {"model": "courses.coursemap", "pk": 199, "fields": {"_type": "L", "course": 3, "lesson": 183, "homework": null, "exam": null, "sort": 60, "token": "3#60"}}, {"model": "courses.coursemap", "pk": 200, "fields": {"_type": "L", "course": 3, "lesson": 200, "homework": null, "exam": null, "sort": 61, "token": "3#61"}}, {"model": "courses.coursemap", "pk": 201, "fields": {"_type": "L", "course": 4, "lesson": 65, "homework": null, "exam": null, "sort": 0, "token": "4#0"}}, {"model": "courses.coursemap", "pk": 202, "fields": {"_type": "L", "course": 4, "lesson": 19, "homework": null, "exam": null, "sort": 1, "token": "4#1"}}, {"model": "courses.coursemap", "pk": 203, "fields": {"_type": "L", "course": 4, "lesson": 20, "homework": null, "exam": null, "sort": 2, "token": "4#2"}}, {"model": "courses.coursemap", "pk": 204, "fields": {"_type": "L", "course": 4, "lesson": 21, "homework": null, "exam": null, "sort": 3, "token": "4#3"}}, {"model": "courses.coursemap", "pk": 205, "fields": {"_type": "L", "course": 4, "lesson": 22, "homework": null, "exam": null, "sort": 4, "token": "4#4"}}, {"model": "courses.coursemap", "pk": 206, "fields": {"_type": "L", "course": 4, "lesson": 23, "homework": null, "exam": null, "sort": 5, "token": "4#5"}}, {"model": "courses.coursemap", "pk": 207, "fields": {"_type": "L", "course": 4, "lesson": 24, "homework": null, "exam": null, "sort": 6, "token": "4#6"}}, {"model": "courses.coursemap", "pk": 208, "fields": {"_type": "L", "course": 4, "lesson": 25, "homework": null, "exam": null, "sort": 7, "token": "4#7"}}, {"model": "courses.coursemap", "pk": 209, "fields": {"_type": "L", "course": 4, "lesson": 26, "homework": null, "exam": null, "sort": 8, "token": "4#8"}}, {"model": "courses.coursemap", "pk": 210, "fields": {"_type": "L", "course": 4, "lesson": 27, "homework": null, "exam": null, "sort": 9, "token": "4#9"}}, {"model": "courses.coursemap", "pk": 211, "fields": {"_type": "L", "course": 4, "lesson": 28, "homework": null, "exam": null, "sort": 10, "token": "4#10"}}, {"model": "courses.coursemap", "pk": 212, "fields": {"_type": "H", "course": 4, "lesson": null, "homework": 16, "exam": null, "sort": 11, "token": "4#11"}}, {"model": "courses.coursemap", "pk": 213, "fields": {"_type": "L", "course": 4, "lesson": 92, "homework": null, "exam": null, "sort": 12, "token": "4#12"}}, {"model": "courses.coursemap", "pk": 214, "fields": {"_type": "L", "course": 4, "lesson": 93, "homework": null, "exam": null, "sort": 13, "token": "4#13"}}, {"model": "courses.coursemap", "pk": 215, "fields": {"_type": "L", "course": 4, "lesson": 94, "homework": null, "exam": null, "sort": 14, "token": "4#14"}}, {"model": "courses.coursemap", "pk": 216, "fields": {"_type": "L", "course": 4, "lesson": 95, "homework": null, "exam": null, "sort": 15, "token": "4#15"}}, {"model": "courses.coursemap", "pk": 217, "fields": {"_type": "L", "course": 4, "lesson": 96, "homework": null, "exam": null, "sort": 16, "token": "4#16"}}, {"model": "courses.coursemap", "pk": 218, "fields": {"_type": "L", "course": 4, "lesson": 97, "homework": null, "exam": null, "sort": 17, "token": "4#17"}}, {"model": "courses.coursemap", "pk": 219, "fields": {"_type": "H", "course": 4, "lesson": null, "homework": 26, "exam": null, "sort": 18, "token": "4#18"}}, {"model": "courses.coursemap", "pk": 220, "fields": {"_type": "L", "course": 4, "lesson": 98, "homework": null, "exam": null, "sort": 19, "token": "4#19"}}, {"model": "courses.coursemap", "pk": 221, "fields": {"_type": "L", "course": 4, "lesson": 99, "homework": null, "exam": null, "sort": 20, "token": "4#20"}}, {"model": "courses.coursemap", "pk": 222, "fields": {"_type": "H", "course": 4, "lesson": null, "homework": 27, "exam": null, "sort": 21, "token": "4#21"}}, {"model": "courses.coursemap", "pk": 223, "fields": {"_type": "L", "course": 4, "lesson": 104, "homework": null, "exam": null, "sort": 22, "token": "4#22"}}, {"model": "courses.coursemap", "pk": 224, "fields": {"_type": "L", "course": 4, "lesson": 286, "homework": null, "exam": null, "sort": 23, "token": "4#23"}}, {"model": "courses.coursemap", "pk": 225, "fields": {"_type": "L", "course": 4, "lesson": 114, "homework": null, "exam": null, "sort": 24, "token": "4#24"}}, {"model": "courses.coursemap", "pk": 226, "fields": {"_type": "L", "course": 4, "lesson": 116, "homework": null, "exam": null, "sort": 25, "token": "4#25"}}, {"model": "courses.coursemap", "pk": 227, "fields": {"_type": "L", "course": 4, "lesson": 118, "homework": null, "exam": null, "sort": 26, "token": "4#26"}}, {"model": "courses.coursemap", "pk": 228, "fields": {"_type": "H", "course": 4, "lesson": null, "homework": 42, "exam": null, "sort": 27, "token": "4#27"}}, {"model": "courses.coursemap", "pk": 229, "fields": {"_type": "L", "course": 4, "lesson": 122, "homework": null, "exam": null, "sort": 28, "token": "4#28"}}, {"model": "courses.coursemap", "pk": 230, "fields": {"_type": "L", "course": 4, "lesson": 126, "homework": null, "exam": null, "sort": 29, "token": "4#29"}}, {"model": "courses.coursemap", "pk": 231, "fields": {"_type": "L", "course": 4, "lesson": 129, "homework": null, "exam": null, "sort": 30, "token": "4#30"}}, {"model": "courses.coursemap", "pk": 232, "fields": {"_type": "L", "course": 4, "lesson": 132, "homework": null, "exam": null, "sort": 31, "token": "4#31"}}, {"model": "courses.coursemap", "pk": 233, "fields": {"_type": "L", "course": 4, "lesson": 203, "homework": null, "exam": null, "sort": 32, "token": "4#32"}}, {"model": "courses.coursemap", "pk": 234, "fields": {"_type": "H", "course": 4, "lesson": null, "homework": 43, "exam": null, "sort": 33, "token": "4#33"}}, {"model": "courses.coursemap", "pk": 235, "fields": {"_type": "L", "course": 4, "lesson": 135, "homework": null, "exam": null, "sort": 34, "token": "4#34"}}, {"model": "courses.coursemap", "pk": 236, "fields": {"_type": "L", "course": 4, "lesson": 138, "homework": null, "exam": null, "sort": 35, "token": "4#35"}}, {"model": "courses.coursemap", "pk": 237, "fields": {"_type": "L", "course": 4, "lesson": 140, "homework": null, "exam": null, "sort": 36, "token": "4#36"}}, {"model": "courses.coursemap", "pk": 238, "fields": {"_type": "L", "course": 4, "lesson": 141, "homework": null, "exam": null, "sort": 37, "token": "4#37"}}, {"model": "courses.coursemap", "pk": 240, "fields": {"_type": "L", "course": 4, "lesson": 143, "homework": null, "exam": null, "sort": 39, "token": "4#39"}}, {"model": "courses.coursemap", "pk": 241, "fields": {"_type": "L", "course": 4, "lesson": 144, "homework": null, "exam": null, "sort": 40, "token": "4#40"}}, {"model": "courses.coursemap", "pk": 242, "fields": {"_type": "L", "course": 4, "lesson": 145, "homework": null, "exam": null, "sort": 41, "token": "4#41"}}, {"model": "courses.coursemap", "pk": 243, "fields": {"_type": "L", "course": 4, "lesson": 146, "homework": null, "exam": null, "sort": 42, "token": "4#42"}}, {"model": "courses.coursemap", "pk": 244, "fields": {"_type": "H", "course": 4, "lesson": null, "homework": 47, "exam": null, "sort": 43, "token": "4#43"}}, {"model": "courses.coursemap", "pk": 246, "fields": {"_type": "L", "course": 4, "lesson": 149, "homework": null, "exam": null, "sort": 45, "token": "4#45"}}, {"model": "courses.coursemap", "pk": 247, "fields": {"_type": "L", "course": 4, "lesson": 150, "homework": null, "exam": null, "sort": 46, "token": "4#46"}}, {"model": "courses.coursemap", "pk": 248, "fields": {"_type": "L", "course": 4, "lesson": 151, "homework": null, "exam": null, "sort": 47, "token": "4#47"}}, {"model": "courses.coursemap", "pk": 249, "fields": {"_type": "H", "course": 4, "lesson": null, "homework": 48, "exam": null, "sort": 48, "token": "4#48"}}, {"model": "courses.coursemap", "pk": 250, "fields": {"_type": "L", "course": 5, "lesson": 274, "homework": null, "exam": null, "sort": 0, "token": "5#0"}}, {"model": "courses.coursemap", "pk": 251, "fields": {"_type": "L", "course": 5, "lesson": 204, "homework": null, "exam": null, "sort": 1, "token": "5#1"}}, {"model": "courses.coursemap", "pk": 252, "fields": {"_type": "L", "course": 5, "lesson": 205, "homework": null, "exam": null, "sort": 2, "token": "5#2"}}, {"model": "courses.coursemap", "pk": 253, "fields": {"_type": "L", "course": 5, "lesson": 206, "homework": null, "exam": null, "sort": 3, "token": "5#3"}}, {"model": "courses.coursemap", "pk": 254, "fields": {"_type": "L", "course": 5, "lesson": 207, "homework": null, "exam": null, "sort": 4, "token": "5#4"}}, {"model": "courses.coursemap", "pk": 255, "fields": {"_type": "L", "course": 5, "lesson": 208, "homework": null, "exam": null, "sort": 5, "token": "5#5"}}, {"model": "courses.coursemap", "pk": 256, "fields": {"_type": "L", "course": 5, "lesson": 209, "homework": null, "exam": null, "sort": 6, "token": "5#6"}}, {"model": "courses.coursemap", "pk": 257, "fields": {"_type": "H", "course": 5, "lesson": null, "homework": 33, "exam": null, "sort": 7, "token": "5#7"}}, {"model": "courses.coursemap", "pk": 258, "fields": {"_type": "L", "course": 5, "lesson": 210, "homework": null, "exam": null, "sort": 8, "token": "5#8"}}, {"model": "courses.coursemap", "pk": 259, "fields": {"_type": "L", "course": 5, "lesson": 211, "homework": null, "exam": null, "sort": 9, "token": "5#9"}}, {"model": "courses.coursemap", "pk": 260, "fields": {"_type": "L", "course": 5, "lesson": 212, "homework": null, "exam": null, "sort": 10, "token": "5#10"}}, {"model": "courses.coursemap", "pk": 261, "fields": {"_type": "L", "course": 5, "lesson": 213, "homework": null, "exam": null, "sort": 11, "token": "5#11"}}, {"model": "courses.coursemap", "pk": 262, "fields": {"_type": "L", "course": 5, "lesson": 214, "homework": null, "exam": null, "sort": 12, "token": "5#12"}}, {"model": "courses.coursemap", "pk": 263, "fields": {"_type": "L", "course": 5, "lesson": 215, "homework": null, "exam": null, "sort": 13, "token": "5#13"}}, {"model": "courses.coursemap", "pk": 264, "fields": {"_type": "H", "course": 5, "lesson": null, "homework": 36, "exam": null, "sort": 14, "token": "5#14"}}, {"model": "courses.coursemap", "pk": 265, "fields": {"_type": "L", "course": 5, "lesson": 275, "homework": null, "exam": null, "sort": 15, "token": "5#15"}}, {"model": "courses.coursemap", "pk": 266, "fields": {"_type": "L", "course": 5, "lesson": 216, "homework": null, "exam": null, "sort": 16, "token": "5#16"}}, {"model": "courses.coursemap", "pk": 267, "fields": {"_type": "L", "course": 5, "lesson": 217, "homework": null, "exam": null, "sort": 17, "token": "5#17"}}, {"model": "courses.coursemap", "pk": 268, "fields": {"_type": "L", "course": 5, "lesson": 218, "homework": null, "exam": null, "sort": 18, "token": "5#18"}}, {"model": "courses.coursemap", "pk": 269, "fields": {"_type": "L", "course": 5, "lesson": 219, "homework": null, "exam": null, "sort": 19, "token": "5#19"}}, {"model": "courses.coursemap", "pk": 270, "fields": {"_type": "L", "course": 5, "lesson": 220, "homework": null, "exam": null, "sort": 20, "token": "5#20"}}, {"model": "courses.coursemap", "pk": 271, "fields": {"_type": "H", "course": 5, "lesson": null, "homework": 37, "exam": null, "sort": 21, "token": "5#21"}}, {"model": "courses.coursemap", "pk": 272, "fields": {"_type": "L", "course": 5, "lesson": 276, "homework": null, "exam": null, "sort": 22, "token": "5#22"}}, {"model": "courses.coursemap", "pk": 273, "fields": {"_type": "L", "course": 5, "lesson": 221, "homework": null, "exam": null, "sort": 23, "token": "5#23"}}, {"model": "courses.coursemap", "pk": 274, "fields": {"_type": "L", "course": 5, "lesson": 222, "homework": null, "exam": null, "sort": 24, "token": "5#24"}}, {"model": "courses.coursemap", "pk": 275, "fields": {"_type": "L", "course": 5, "lesson": 223, "homework": null, "exam": null, "sort": 25, "token": "5#25"}}, {"model": "courses.coursemap", "pk": 276, "fields": {"_type": "L", "course": 5, "lesson": 224, "homework": null, "exam": null, "sort": 26, "token": "5#26"}}, {"model": "courses.coursemap", "pk": 277, "fields": {"_type": "H", "course": 5, "lesson": null, "homework": 38, "exam": null, "sort": 27, "token": "5#27"}}, {"model": "courses.coursemap", "pk": 278, "fields": {"_type": "L", "course": 5, "lesson": 278, "homework": null, "exam": null, "sort": 28, "token": "5#28"}}, {"model": "courses.coursemap", "pk": 279, "fields": {"_type": "L", "course": 5, "lesson": 225, "homework": null, "exam": null, "sort": 29, "token": "5#29"}}, {"model": "courses.coursemap", "pk": 280, "fields": {"_type": "L", "course": 5, "lesson": 226, "homework": null, "exam": null, "sort": 30, "token": "5#30"}}, {"model": "courses.coursemap", "pk": 281, "fields": {"_type": "L", "course": 5, "lesson": 227, "homework": null, "exam": null, "sort": 31, "token": "5#31"}}, {"model": "courses.coursemap", "pk": 282, "fields": {"_type": "L", "course": 5, "lesson": 228, "homework": null, "exam": null, "sort": 32, "token": "5#32"}}, {"model": "courses.coursemap", "pk": 283, "fields": {"_type": "H", "course": 5, "lesson": null, "homework": 39, "exam": null, "sort": 33, "token": "5#33"}}, {"model": "courses.coursemap", "pk": 284, "fields": {"_type": "L", "course": 5, "lesson": 279, "homework": null, "exam": null, "sort": 34, "token": "5#34"}}, {"model": "courses.coursemap", "pk": 285, "fields": {"_type": "L", "course": 5, "lesson": 229, "homework": null, "exam": null, "sort": 35, "token": "5#35"}}, {"model": "courses.coursemap", "pk": 286, "fields": {"_type": "L", "course": 5, "lesson": 230, "homework": null, "exam": null, "sort": 36, "token": "5#36"}}, {"model": "courses.coursemap", "pk": 287, "fields": {"_type": "L", "course": 5, "lesson": 231, "homework": null, "exam": null, "sort": 37, "token": "5#37"}}, {"model": "courses.coursemap", "pk": 288, "fields": {"_type": "L", "course": 5, "lesson": 232, "homework": null, "exam": null, "sort": 38, "token": "5#38"}}, {"model": "courses.coursemap", "pk": 289, "fields": {"_type": "H", "course": 5, "lesson": null, "homework": 40, "exam": null, "sort": 39, "token": "5#39"}}, {"model": "courses.coursemap", "pk": 290, "fields": {"_type": "L", "course": 5, "lesson": 280, "homework": null, "exam": null, "sort": 40, "token": "5#40"}}, {"model": "courses.coursemap", "pk": 291, "fields": {"_type": "L", "course": 5, "lesson": 233, "homework": null, "exam": null, "sort": 41, "token": "5#41"}}, {"model": "courses.coursemap", "pk": 292, "fields": {"_type": "L", "course": 5, "lesson": 234, "homework": null, "exam": null, "sort": 42, "token": "5#42"}}, {"model": "courses.coursemap", "pk": 293, "fields": {"_type": "L", "course": 5, "lesson": 235, "homework": null, "exam": null, "sort": 43, "token": "5#43"}}, {"model": "courses.coursemap", "pk": 294, "fields": {"_type": "L", "course": 5, "lesson": 236, "homework": null, "exam": null, "sort": 44, "token": "5#44"}}, {"model": "courses.coursemap", "pk": 295, "fields": {"_type": "H", "course": 5, "lesson": null, "homework": 41, "exam": null, "sort": 45, "token": "5#45"}}, {"model": "courses.coursemap", "pk": 296, "fields": {"_type": "L", "course": 5, "lesson": 285, "homework": null, "exam": null, "sort": 46, "token": "5#46"}}, {"model": "courses.coursemap", "pk": 297, "fields": {"_type": "L", "course": 5, "lesson": 237, "homework": null, "exam": null, "sort": 47, "token": "5#47"}}, {"model": "courses.coursemap", "pk": 298, "fields": {"_type": "L", "course": 5, "lesson": 238, "homework": null, "exam": null, "sort": 48, "token": "5#48"}}, {"model": "courses.coursemap", "pk": 299, "fields": {"_type": "L", "course": 5, "lesson": 239, "homework": null, "exam": null, "sort": 49, "token": "5#49"}}, {"model": "courses.coursemap", "pk": 300, "fields": {"_type": "L", "course": 5, "lesson": 240, "homework": null, "exam": null, "sort": 50, "token": "5#50"}}, {"model": "courses.coursemap", "pk": 301, "fields": {"_type": "H", "course": 5, "lesson": null, "homework": 45, "exam": null, "sort": 51, "token": "5#51"}}, {"model": "courses.coursemap", "pk": 302, "fields": {"_type": "L", "course": 5, "lesson": 287, "homework": null, "exam": null, "sort": 52, "token": "5#52"}}, {"model": "courses.coursemap", "pk": 303, "fields": {"_type": "L", "course": 5, "lesson": 241, "homework": null, "exam": null, "sort": 53, "token": "5#53"}}, {"model": "courses.coursemap", "pk": 304, "fields": {"_type": "L", "course": 5, "lesson": 242, "homework": null, "exam": null, "sort": 54, "token": "5#54"}}, {"model": "courses.coursemap", "pk": 305, "fields": {"_type": "L", "course": 5, "lesson": 243, "homework": null, "exam": null, "sort": 55, "token": "5#55"}}, {"model": "courses.coursemap", "pk": 306, "fields": {"_type": "L", "course": 5, "lesson": 244, "homework": null, "exam": null, "sort": 56, "token": "5#56"}}, {"model": "courses.coursemap", "pk": 307, "fields": {"_type": "H", "course": 5, "lesson": null, "homework": 49, "exam": null, "sort": 57, "token": "5#57"}}, {"model": "courses.coursemap", "pk": 308, "fields": {"_type": "L", "course": 5, "lesson": 288, "homework": null, "exam": null, "sort": 58, "token": "5#58"}}, {"model": "courses.coursemap", "pk": 309, "fields": {"_type": "L", "course": 5, "lesson": 245, "homework": null, "exam": null, "sort": 59, "token": "5#59"}}, {"model": "courses.coursemap", "pk": 310, "fields": {"_type": "L", "course": 5, "lesson": 246, "homework": null, "exam": null, "sort": 60, "token": "5#60"}}, {"model": "courses.coursemap", "pk": 311, "fields": {"_type": "L", "course": 5, "lesson": 247, "homework": null, "exam": null, "sort": 61, "token": "5#61"}}, {"model": "courses.coursemap", "pk": 312, "fields": {"_type": "L", "course": 5, "lesson": 248, "homework": null, "exam": null, "sort": 62, "token": "5#62"}}, {"model": "courses.coursemap", "pk": 313, "fields": {"_type": "H", "course": 5, "lesson": null, "homework": 50, "exam": null, "sort": 63, "token": "5#63"}}, {"model": "courses.coursemap", "pk": 314, "fields": {"_type": "L", "course": 5, "lesson": 294, "homework": null, "exam": null, "sort": 64, "token": "5#64"}}, {"model": "courses.coursemap", "pk": 315, "fields": {"_type": "L", "course": 5, "lesson": 249, "homework": null, "exam": null, "sort": 65, "token": "5#65"}}, {"model": "courses.coursemap", "pk": 316, "fields": {"_type": "L", "course": 5, "lesson": 250, "homework": null, "exam": null, "sort": 66, "token": "5#66"}}, {"model": "courses.coursemap", "pk": 317, "fields": {"_type": "L", "course": 5, "lesson": 251, "homework": null, "exam": null, "sort": 67, "token": "5#67"}}, {"model": "courses.coursemap", "pk": 318, "fields": {"_type": "L", "course": 5, "lesson": 252, "homework": null, "exam": null, "sort": 68, "token": "5#68"}}, {"model": "courses.coursemap", "pk": 319, "fields": {"_type": "L", "course": 5, "lesson": 277, "homework": null, "exam": null, "sort": 69, "token": "5#69"}}, {"model": "courses.coursemap", "pk": 320, "fields": {"_type": "H", "course": 5, "lesson": null, "homework": 54, "exam": null, "sort": 70, "token": "5#70"}}, {"model": "courses.coursemap", "pk": 321, "fields": {"_type": "L", "course": 5, "lesson": 253, "homework": null, "exam": null, "sort": 71, "token": "5#71"}}, {"model": "courses.coursemap", "pk": 322, "fields": {"_type": "L", "course": 5, "lesson": 254, "homework": null, "exam": null, "sort": 72, "token": "5#72"}}, {"model": "courses.coursemap", "pk": 323, "fields": {"_type": "L", "course": 5, "lesson": 255, "homework": null, "exam": null, "sort": 73, "token": "5#73"}}, {"model": "courses.coursemap", "pk": 324, "fields": {"_type": "L", "course": 5, "lesson": 256, "homework": null, "exam": null, "sort": 74, "token": "5#74"}}, {"model": "courses.coursemap", "pk": 325, "fields": {"_type": "H", "course": 5, "lesson": null, "homework": 66, "exam": null, "sort": 75, "token": "5#75"}}, {"model": "courses.coursemap", "pk": 326, "fields": {"_type": "L", "course": 5, "lesson": 257, "homework": null, "exam": null, "sort": 76, "token": "5#76"}}, {"model": "courses.coursemap", "pk": 327, "fields": {"_type": "L", "course": 5, "lesson": 258, "homework": null, "exam": null, "sort": 77, "token": "5#77"}}, {"model": "courses.coursemap", "pk": 328, "fields": {"_type": "L", "course": 5, "lesson": 259, "homework": null, "exam": null, "sort": 78, "token": "5#78"}}, {"model": "courses.coursemap", "pk": 329, "fields": {"_type": "L", "course": 5, "lesson": 260, "homework": null, "exam": null, "sort": 79, "token": "5#79"}}, {"model": "courses.coursemap", "pk": 330, "fields": {"_type": "L", "course": 5, "lesson": 261, "homework": null, "exam": null, "sort": 80, "token": "5#80"}}, {"model": "courses.coursemap", "pk": 331, "fields": {"_type": "H", "course": 5, "lesson": null, "homework": 71, "exam": null, "sort": 81, "token": "5#81"}}, {"model": "courses.coursemap", "pk": 332, "fields": {"_type": "L", "course": 5, "lesson": 262, "homework": null, "exam": null, "sort": 82, "token": "5#82"}}, {"model": "courses.coursemap", "pk": 333, "fields": {"_type": "L", "course": 5, "lesson": 263, "homework": null, "exam": null, "sort": 83, "token": "5#83"}}, {"model": "courses.coursemap", "pk": 334, "fields": {"_type": "L", "course": 5, "lesson": 264, "homework": null, "exam": null, "sort": 84, "token": "5#84"}}, {"model": "courses.coursemap", "pk": 335, "fields": {"_type": "L", "course": 5, "lesson": 265, "homework": null, "exam": null, "sort": 85, "token": "5#85"}}, {"model": "courses.coursemap", "pk": 336, "fields": {"_type": "H", "course": 5, "lesson": null, "homework": 72, "exam": null, "sort": 86, "token": "5#86"}}, {"model": "courses.coursemap", "pk": 337, "fields": {"_type": "E", "course": 4, "lesson": null, "homework": null, "exam": 8, "sort": 49, "token": "4#49"}}, {"model": "courses.coursemap", "pk": 340, "fields": {"_type": "L", "course": 5, "lesson": 266, "homework": null, "exam": null, "sort": 87, "token": "5#87"}}, {"model": "courses.coursemap", "pk": 341, "fields": {"_type": "H", "course": 4, "lesson": null, "homework": 44, "exam": null, "sort": 38, "token": "4#38"}}, {"model": "courses.coursemap", "pk": 342, "fields": {"_type": "L", "course": 4, "lesson": 148, "homework": null, "exam": null, "sort": 44, "token": "4#44"}}, {"model": "courses.coursemap", "pk": 343, "fields": {"_type": "L", "course": 5, "lesson": 267, "homework": null, "exam": null, "sort": 88, "token": "5#88"}}, {"model": "courses.coursemap", "pk": 344, "fields": {"_type": "L", "course": 5, "lesson": 268, "homework": null, "exam": null, "sort": 89, "token": "5#89"}}, {"model": "courses.coursemap", "pk": 345, "fields": {"_type": "L", "course": 5, "lesson": 269, "homework": null, "exam": null, "sort": 90, "token": "5#90"}}, {"model": "courses.coursemap", "pk": 346, "fields": {"_type": "L", "course": 2, "lesson": 128, "homework": null, "exam": null, "sort": 103, "token": "2#103"}}, {"model": "courses.coursemap", "pk": 347, "fields": {"_type": "L", "course": 2, "lesson": 130, "homework": null, "exam": null, "sort": 104, "token": "2#104"}}, {"model": "courses.coursemap", "pk": 348, "fields": {"_type": "L", "course": 2, "lesson": 131, "homework": null, "exam": null, "sort": 105, "token": "2#105"}}, {"model": "courses.coursemap", "pk": 349, "fields": {"_type": "L", "course": 2, "lesson": 133, "homework": null, "exam": null, "sort": 106, "token": "2#106"}}, {"model": "courses.coursemap", "pk": 350, "fields": {"_type": "H", "course": 2, "lesson": null, "homework": 61, "exam": null, "sort": 107, "token": "2#107"}}, {"model": "courses.coursemap", "pk": 351, "fields": {"_type": "L", "course": 2, "lesson": 134, "homework": null, "exam": null, "sort": 108, "token": "2#108"}}, {"model": "courses.coursemap", "pk": 352, "fields": {"_type": "L", "course": 2, "lesson": 136, "homework": null, "exam": null, "sort": 109, "token": "2#109"}}, {"model": "courses.coursemap", "pk": 353, "fields": {"_type": "L", "course": 6, "lesson": 295, "homework": null, "exam": null, "sort": 0, "token": "6#0"}}, {"model": "courses.coursemap", "pk": 354, "fields": {"_type": "L", "course": 6, "lesson": 296, "homework": null, "exam": null, "sort": 1, "token": "6#1"}}, {"model": "courses.coursemap", "pk": 355, "fields": {"_type": "L", "course": 6, "lesson": 297, "homework": null, "exam": null, "sort": 2, "token": "6#2"}}, {"model": "courses.coursemap", "pk": 356, "fields": {"_type": "L", "course": 6, "lesson": 298, "homework": null, "exam": null, "sort": 3, "token": "6#3"}}, {"model": "courses.coursemap", "pk": 357, "fields": {"_type": "L", "course": 6, "lesson": 299, "homework": null, "exam": null, "sort": 4, "token": "6#4"}}, {"model": "courses.coursemap", "pk": 358, "fields": {"_type": "L", "course": 6, "lesson": 300, "homework": null, "exam": null, "sort": 5, "token": "6#5"}}, {"model": "courses.coursemap", "pk": 359, "fields": {"_type": "H", "course": 6, "lesson": null, "homework": 67, "exam": null, "sort": 6, "token": "6#6"}}, {"model": "courses.coursemap", "pk": 360, "fields": {"_type": "L", "course": 6, "lesson": 309, "homework": null, "exam": null, "sort": 7, "token": "6#7"}}, {"model": "courses.coursemap", "pk": 361, "fields": {"_type": "L", "course": 6, "lesson": 310, "homework": null, "exam": null, "sort": 8, "token": "6#8"}}, {"model": "courses.coursemap", "pk": 362, "fields": {"_type": "L", "course": 6, "lesson": 311, "homework": null, "exam": null, "sort": 9, "token": "6#9"}}, {"model": "courses.coursemap", "pk": 363, "fields": {"_type": "L", "course": 6, "lesson": 312, "homework": null, "exam": null, "sort": 10, "token": "6#10"}}, {"model": "courses.coursemap", "pk": 364, "fields": {"_type": "L", "course": 6, "lesson": 313, "homework": null, "exam": null, "sort": 11, "token": "6#11"}}, {"model": "courses.coursemap", "pk": 365, "fields": {"_type": "L", "course": 6, "lesson": 444, "homework": null, "exam": null, "sort": 12, "token": "6#12"}}, {"model": "courses.coursemap", "pk": 366, "fields": {"_type": "L", "course": 6, "lesson": 445, "homework": null, "exam": null, "sort": 13, "token": "6#13"}}, {"model": "courses.coursemap", "pk": 367, "fields": {"_type": "H", "course": 6, "lesson": null, "homework": 64, "exam": null, "sort": 14, "token": "6#14"}}, {"model": "courses.coursemap", "pk": 368, "fields": {"_type": "L", "course": 6, "lesson": 314, "homework": null, "exam": null, "sort": 15, "token": "6#15"}}, {"model": "courses.coursemap", "pk": 369, "fields": {"_type": "L", "course": 6, "lesson": 315, "homework": null, "exam": null, "sort": 16, "token": "6#16"}}, {"model": "courses.coursemap", "pk": 370, "fields": {"_type": "L", "course": 6, "lesson": 316, "homework": null, "exam": null, "sort": 17, "token": "6#17"}}, {"model": "courses.coursemap", "pk": 371, "fields": {"_type": "L", "course": 6, "lesson": 317, "homework": null, "exam": null, "sort": 18, "token": "6#18"}}, {"model": "courses.coursemap", "pk": 372, "fields": {"_type": "L", "course": 6, "lesson": 318, "homework": null, "exam": null, "sort": 19, "token": "6#19"}}, {"model": "courses.coursemap", "pk": 373, "fields": {"_type": "H", "course": 6, "lesson": null, "homework": 68, "exam": null, "sort": 20, "token": "6#20"}}, {"model": "courses.coursemap", "pk": 374, "fields": {"_type": "L", "course": 6, "lesson": 319, "homework": null, "exam": null, "sort": 21, "token": "6#21"}}, {"model": "courses.coursemap", "pk": 375, "fields": {"_type": "L", "course": 6, "lesson": 320, "homework": null, "exam": null, "sort": 22, "token": "6#22"}}, {"model": "courses.coursemap", "pk": 376, "fields": {"_type": "L", "course": 6, "lesson": 321, "homework": null, "exam": null, "sort": 23, "token": "6#23"}}, {"model": "courses.coursemap", "pk": 377, "fields": {"_type": "L", "course": 6, "lesson": 322, "homework": null, "exam": null, "sort": 24, "token": "6#24"}}, {"model": "courses.coursemap", "pk": 379, "fields": {"_type": "L", "course": 7, "lesson": 304, "homework": null, "exam": null, "sort": 1, "token": "7#1"}}, {"model": "courses.coursemap", "pk": 381, "fields": {"_type": "H", "course": 7, "lesson": null, "homework": 62, "exam": null, "sort": 3, "token": "7#3"}}, {"model": "courses.coursemap", "pk": 382, "fields": {"_type": "L", "course": 7, "lesson": 306, "homework": null, "exam": null, "sort": 4, "token": "7#4"}}, {"model": "courses.coursemap", "pk": 383, "fields": {"_type": "L", "course": 7, "lesson": 307, "homework": null, "exam": null, "sort": 5, "token": "7#5"}}, {"model": "courses.coursemap", "pk": 384, "fields": {"_type": "L", "course": 7, "lesson": 442, "homework": null, "exam": null, "sort": 6, "token": "7#6"}}, {"model": "courses.coursemap", "pk": 385, "fields": {"_type": "L", "course": 7, "lesson": 308, "homework": null, "exam": null, "sort": 7, "token": "7#7"}}, {"model": "courses.coursemap", "pk": 387, "fields": {"_type": "L", "course": 7, "lesson": 335, "homework": null, "exam": null, "sort": 9, "token": "7#9"}}, {"model": "courses.coursemap", "pk": 388, "fields": {"_type": "L", "course": 6, "lesson": 323, "homework": null, "exam": null, "sort": 25, "token": "6#25"}}, {"model": "courses.coursemap", "pk": 389, "fields": {"_type": "L", "course": 6, "lesson": 325, "homework": null, "exam": null, "sort": 26, "token": "6#26"}}, {"model": "courses.coursemap", "pk": 390, "fields": {"_type": "L", "course": 6, "lesson": 326, "homework": null, "exam": null, "sort": 27, "token": "6#27"}}, {"model": "courses.coursemap", "pk": 391, "fields": {"_type": "L", "course": 6, "lesson": 327, "homework": null, "exam": null, "sort": 28, "token": "6#28"}}, {"model": "courses.coursemap", "pk": 392, "fields": {"_type": "L", "course": 6, "lesson": 324, "homework": null, "exam": null, "sort": 29, "token": "6#29"}}, {"model": "courses.coursemap", "pk": 393, "fields": {"_type": "L", "course": 6, "lesson": 328, "homework": null, "exam": null, "sort": 30, "token": "6#30"}}, {"model": "courses.coursemap", "pk": 394, "fields": {"_type": "L", "course": 6, "lesson": 329, "homework": null, "exam": null, "sort": 31, "token": "6#31"}}, {"model": "courses.coursemap", "pk": 395, "fields": {"_type": "L", "course": 6, "lesson": 330, "homework": null, "exam": null, "sort": 32, "token": "6#32"}}, {"model": "courses.coursemap", "pk": 396, "fields": {"_type": "L", "course": 6, "lesson": 331, "homework": null, "exam": null, "sort": 33, "token": "6#33"}}, {"model": "courses.coursemap", "pk": 397, "fields": {"_type": "L", "course": 7, "lesson": 338, "homework": null, "exam": null, "sort": 10, "token": "7#10"}}, {"model": "courses.coursemap", "pk": 398, "fields": {"_type": "L", "course": 7, "lesson": 339, "homework": null, "exam": null, "sort": 11, "token": "7#11"}}, {"model": "courses.coursemap", "pk": 399, "fields": {"_type": "H", "course": 7, "lesson": null, "homework": 65, "exam": null, "sort": 12, "token": "7#12"}}, {"model": "courses.coursemap", "pk": 400, "fields": {"_type": "L", "course": 7, "lesson": 340, "homework": null, "exam": null, "sort": 13, "token": "7#13"}}, {"model": "courses.coursemap", "pk": 401, "fields": {"_type": "L", "course": 7, "lesson": 343, "homework": null, "exam": null, "sort": 14, "token": "7#14"}}, {"model": "courses.coursemap", "pk": 402, "fields": {"_type": "L", "course": 7, "lesson": 344, "homework": null, "exam": null, "sort": 15, "token": "7#15"}}, {"model": "courses.coursemap", "pk": 403, "fields": {"_type": "L", "course": 7, "lesson": 345, "homework": null, "exam": null, "sort": 16, "token": "7#16"}}, {"model": "courses.coursemap", "pk": 404, "fields": {"_type": "L", "course": 6, "lesson": 332, "homework": null, "exam": null, "sort": 34, "token": "6#34"}}, {"model": "courses.coursemap", "pk": 405, "fields": {"_type": "L", "course": 6, "lesson": 333, "homework": null, "exam": null, "sort": 35, "token": "6#35"}}, {"model": "courses.coursemap", "pk": 406, "fields": {"_type": "L", "course": 6, "lesson": 334, "homework": null, "exam": null, "sort": 36, "token": "6#36"}}, {"model": "courses.coursemap", "pk": 407, "fields": {"_type": "L", "course": 6, "lesson": 337, "homework": null, "exam": null, "sort": 37, "token": "6#37"}}, {"model": "courses.coursemap", "pk": 408, "fields": {"_type": "L", "course": 6, "lesson": 342, "homework": null, "exam": null, "sort": 38, "token": "6#38"}}, {"model": "courses.coursemap", "pk": 409, "fields": {"_type": "L", "course": 6, "lesson": 341, "homework": null, "exam": null, "sort": 39, "token": "6#39"}}, {"model": "courses.coursemap", "pk": 410, "fields": {"_type": "L", "course": 6, "lesson": 352, "homework": null, "exam": null, "sort": 40, "token": "6#40"}}, {"model": "courses.coursemap", "pk": 411, "fields": {"_type": "L", "course": 6, "lesson": 353, "homework": null, "exam": null, "sort": 41, "token": "6#41"}}, {"model": "courses.coursemap", "pk": 412, "fields": {"_type": "L", "course": 6, "lesson": 354, "homework": null, "exam": null, "sort": 42, "token": "6#42"}}, {"model": "courses.coursemap", "pk": 413, "fields": {"_type": "L", "course": 6, "lesson": 355, "homework": null, "exam": null, "sort": 43, "token": "6#43"}}, {"model": "courses.coursemap", "pk": 414, "fields": {"_type": "L", "course": 6, "lesson": 356, "homework": null, "exam": null, "sort": 44, "token": "6#44"}}, {"model": "courses.coursemap", "pk": 415, "fields": {"_type": "L", "course": 6, "lesson": 357, "homework": null, "exam": null, "sort": 45, "token": "6#45"}}, {"model": "courses.coursemap", "pk": 416, "fields": {"_type": "L", "course": 6, "lesson": 358, "homework": null, "exam": null, "sort": 46, "token": "6#46"}}, {"model": "courses.coursemap", "pk": 417, "fields": {"_type": "L", "course": 6, "lesson": 359, "homework": null, "exam": null, "sort": 47, "token": "6#47"}}, {"model": "courses.coursemap", "pk": 418, "fields": {"_type": "L", "course": 6, "lesson": 366, "homework": null, "exam": null, "sort": 48, "token": "6#48"}}, {"model": "courses.coursemap", "pk": 419, "fields": {"_type": "L", "course": 6, "lesson": 368, "homework": null, "exam": null, "sort": 49, "token": "6#49"}}, {"model": "courses.coursemap", "pk": 420, "fields": {"_type": "L", "course": 6, "lesson": 370, "homework": null, "exam": null, "sort": 50, "token": "6#50"}}, {"model": "courses.coursemap", "pk": 421, "fields": {"_type": "L", "course": 6, "lesson": 373, "homework": null, "exam": null, "sort": 51, "token": "6#51"}}, {"model": "courses.coursemap", "pk": 422, "fields": {"_type": "L", "course": 6, "lesson": 376, "homework": null, "exam": null, "sort": 52, "token": "6#52"}}, {"model": "courses.coursemap", "pk": 423, "fields": {"_type": "L", "course": 6, "lesson": 379, "homework": null, "exam": null, "sort": 53, "token": "6#53"}}, {"model": "courses.coursemap", "pk": 424, "fields": {"_type": "L", "course": 6, "lesson": 382, "homework": null, "exam": null, "sort": 54, "token": "6#54"}}, {"model": "courses.coursemap", "pk": 425, "fields": {"_type": "L", "course": 6, "lesson": 384, "homework": null, "exam": null, "sort": 55, "token": "6#55"}}, {"model": "courses.coursemap", "pk": 426, "fields": {"_type": "L", "course": 6, "lesson": 385, "homework": null, "exam": null, "sort": 56, "token": "6#56"}}, {"model": "courses.coursemap", "pk": 427, "fields": {"_type": "L", "course": 6, "lesson": 386, "homework": null, "exam": null, "sort": 57, "token": "6#57"}}, {"model": "courses.coursemap", "pk": 428, "fields": {"_type": "L", "course": 7, "lesson": 347, "homework": null, "exam": null, "sort": 17, "token": "7#17"}}, {"model": "courses.coursemap", "pk": 429, "fields": {"_type": "L", "course": 7, "lesson": 346, "homework": null, "exam": null, "sort": 18, "token": "7#18"}}, {"model": "courses.coursemap", "pk": 430, "fields": {"_type": "L", "course": 7, "lesson": 348, "homework": null, "exam": null, "sort": 19, "token": "7#19"}}, {"model": "courses.coursemap", "pk": 431, "fields": {"_type": "L", "course": 7, "lesson": 349, "homework": null, "exam": null, "sort": 20, "token": "7#20"}}, {"model": "courses.coursemap", "pk": 432, "fields": {"_type": "L", "course": 7, "lesson": 350, "homework": null, "exam": null, "sort": 21, "token": "7#21"}}, {"model": "courses.coursemap", "pk": 433, "fields": {"_type": "L", "course": 7, "lesson": 351, "homework": null, "exam": null, "sort": 22, "token": "7#22"}}, {"model": "courses.coursemap", "pk": 434, "fields": {"_type": "L", "course": 7, "lesson": 360, "homework": null, "exam": null, "sort": 23, "token": "7#23"}}, {"model": "courses.coursemap", "pk": 435, "fields": {"_type": "L", "course": 7, "lesson": 361, "homework": null, "exam": null, "sort": 24, "token": "7#24"}}, {"model": "courses.coursemap", "pk": 436, "fields": {"_type": "L", "course": 7, "lesson": 362, "homework": null, "exam": null, "sort": 25, "token": "7#25"}}, {"model": "courses.coursemap", "pk": 437, "fields": {"_type": "L", "course": 7, "lesson": 363, "homework": null, "exam": null, "sort": 26, "token": "7#26"}}, {"model": "courses.coursemap", "pk": 438, "fields": {"_type": "L", "course": 7, "lesson": 364, "homework": null, "exam": null, "sort": 27, "token": "7#27"}}, {"model": "courses.coursemap", "pk": 439, "fields": {"_type": "L", "course": 7, "lesson": 365, "homework": null, "exam": null, "sort": 28, "token": "7#28"}}, {"model": "courses.coursemap", "pk": 440, "fields": {"_type": "L", "course": 7, "lesson": 367, "homework": null, "exam": null, "sort": 29, "token": "7#29"}}, {"model": "courses.coursemap", "pk": 441, "fields": {"_type": "L", "course": 7, "lesson": 369, "homework": null, "exam": null, "sort": 30, "token": "7#30"}}, {"model": "courses.coursemap", "pk": 442, "fields": {"_type": "L", "course": 7, "lesson": 371, "homework": null, "exam": null, "sort": 31, "token": "7#31"}}, {"model": "courses.coursemap", "pk": 443, "fields": {"_type": "L", "course": 7, "lesson": 372, "homework": null, "exam": null, "sort": 32, "token": "7#32"}}, {"model": "courses.coursemap", "pk": 444, "fields": {"_type": "L", "course": 7, "lesson": 374, "homework": null, "exam": null, "sort": 33, "token": "7#33"}}, {"model": "courses.coursemap", "pk": 445, "fields": {"_type": "L", "course": 7, "lesson": 375, "homework": null, "exam": null, "sort": 34, "token": "7#34"}}, {"model": "courses.coursemap", "pk": 446, "fields": {"_type": "L", "course": 7, "lesson": 377, "homework": null, "exam": null, "sort": 35, "token": "7#35"}}, {"model": "courses.coursemap", "pk": 447, "fields": {"_type": "L", "course": 7, "lesson": 378, "homework": null, "exam": null, "sort": 36, "token": "7#36"}}, {"model": "courses.coursemap", "pk": 448, "fields": {"_type": "L", "course": 7, "lesson": 380, "homework": null, "exam": null, "sort": 37, "token": "7#37"}}, {"model": "courses.coursemap", "pk": 449, "fields": {"_type": "L", "course": 7, "lesson": 381, "homework": null, "exam": null, "sort": 38, "token": "7#38"}}, {"model": "courses.coursemap", "pk": 450, "fields": {"_type": "L", "course": 7, "lesson": 383, "homework": null, "exam": null, "sort": 39, "token": "7#39"}}, {"model": "courses.coursemap", "pk": 451, "fields": {"_type": "L", "course": 7, "lesson": 394, "homework": null, "exam": null, "sort": 40, "token": "7#40"}}, {"model": "courses.coursemap", "pk": 452, "fields": {"_type": "L", "course": 7, "lesson": 395, "homework": null, "exam": null, "sort": 41, "token": "7#41"}}, {"model": "courses.coursemap", "pk": 453, "fields": {"_type": "L", "course": 7, "lesson": 396, "homework": null, "exam": null, "sort": 42, "token": "7#42"}}, {"model": "courses.coursemap", "pk": 454, "fields": {"_type": "L", "course": 7, "lesson": 397, "homework": null, "exam": null, "sort": 43, "token": "7#43"}}, {"model": "courses.coursemap", "pk": 455, "fields": {"_type": "L", "course": 7, "lesson": 398, "homework": null, "exam": null, "sort": 44, "token": "7#44"}}, {"model": "courses.coursemap", "pk": 456, "fields": {"_type": "L", "course": 7, "lesson": 400, "homework": null, "exam": null, "sort": 45, "token": "7#45"}}, {"model": "courses.coursemap", "pk": 457, "fields": {"_type": "L", "course": 7, "lesson": 402, "homework": null, "exam": null, "sort": 46, "token": "7#46"}}, {"model": "courses.coursemap", "pk": 458, "fields": {"_type": "L", "course": 7, "lesson": 403, "homework": null, "exam": null, "sort": 47, "token": "7#47"}}, {"model": "courses.coursemap", "pk": 459, "fields": {"_type": "L", "course": 7, "lesson": 405, "homework": null, "exam": null, "sort": 48, "token": "7#48"}}, {"model": "courses.coursemap", "pk": 460, "fields": {"_type": "L", "course": 7, "lesson": 407, "homework": null, "exam": null, "sort": 49, "token": "7#49"}}, {"model": "courses.coursemap", "pk": 461, "fields": {"_type": "L", "course": 7, "lesson": 409, "homework": null, "exam": null, "sort": 50, "token": "7#50"}}, {"model": "courses.coursemap", "pk": 462, "fields": {"_type": "L", "course": 7, "lesson": 411, "homework": null, "exam": null, "sort": 51, "token": "7#51"}}, {"model": "courses.coursemap", "pk": 463, "fields": {"_type": "L", "course": 7, "lesson": 413, "homework": null, "exam": null, "sort": 52, "token": "7#52"}}, {"model": "courses.coursemap", "pk": 464, "fields": {"_type": "L", "course": 7, "lesson": 414, "homework": null, "exam": null, "sort": 53, "token": "7#53"}}, {"model": "courses.coursemap", "pk": 465, "fields": {"_type": "L", "course": 7, "lesson": 416, "homework": null, "exam": null, "sort": 54, "token": "7#54"}}, {"model": "courses.coursemap", "pk": 466, "fields": {"_type": "L", "course": 7, "lesson": 418, "homework": null, "exam": null, "sort": 55, "token": "7#55"}}, {"model": "courses.coursemap", "pk": 467, "fields": {"_type": "L", "course": 7, "lesson": 422, "homework": null, "exam": null, "sort": 56, "token": "7#56"}}, {"model": "courses.coursemap", "pk": 468, "fields": {"_type": "L", "course": 7, "lesson": 423, "homework": null, "exam": null, "sort": 57, "token": "7#57"}}, {"model": "courses.coursemap", "pk": 469, "fields": {"_type": "L", "course": 7, "lesson": 425, "homework": null, "exam": null, "sort": 58, "token": "7#58"}}, {"model": "courses.coursemap", "pk": 470, "fields": {"_type": "L", "course": 7, "lesson": 427, "homework": null, "exam": null, "sort": 59, "token": "7#59"}}, {"model": "courses.coursemap", "pk": 471, "fields": {"_type": "L", "course": 7, "lesson": 428, "homework": null, "exam": null, "sort": 60, "token": "7#60"}}, {"model": "courses.coursemap", "pk": 474, "fields": {"_type": "L", "course": 6, "lesson": 387, "homework": null, "exam": null, "sort": 58, "token": "6#58"}}, {"model": "courses.coursemap", "pk": 475, "fields": {"_type": "L", "course": 6, "lesson": 388, "homework": null, "exam": null, "sort": 59, "token": "6#59"}}, {"model": "courses.coursemap", "pk": 476, "fields": {"_type": "L", "course": 6, "lesson": 389, "homework": null, "exam": null, "sort": 60, "token": "6#60"}}, {"model": "courses.coursemap", "pk": 477, "fields": {"_type": "L", "course": 6, "lesson": 390, "homework": null, "exam": null, "sort": 61, "token": "6#61"}}, {"model": "courses.coursemap", "pk": 478, "fields": {"_type": "L", "course": 6, "lesson": 391, "homework": null, "exam": null, "sort": 62, "token": "6#62"}}, {"model": "courses.coursemap", "pk": 479, "fields": {"_type": "L", "course": 6, "lesson": 392, "homework": null, "exam": null, "sort": 63, "token": "6#63"}}, {"model": "courses.coursemap", "pk": 480, "fields": {"_type": "L", "course": 6, "lesson": 393, "homework": null, "exam": null, "sort": 64, "token": "6#64"}}, {"model": "courses.coursemap", "pk": 481, "fields": {"_type": "L", "course": 6, "lesson": 399, "homework": null, "exam": null, "sort": 65, "token": "6#65"}}, {"model": "courses.coursemap", "pk": 482, "fields": {"_type": "L", "course": 6, "lesson": 401, "homework": null, "exam": null, "sort": 66, "token": "6#66"}}, {"model": "courses.coursemap", "pk": 483, "fields": {"_type": "L", "course": 6, "lesson": 404, "homework": null, "exam": null, "sort": 67, "token": "6#67"}}, {"model": "courses.coursemap", "pk": 484, "fields": {"_type": "L", "course": 6, "lesson": 406, "homework": null, "exam": null, "sort": 68, "token": "6#68"}}, {"model": "courses.coursemap", "pk": 485, "fields": {"_type": "L", "course": 6, "lesson": 408, "homework": null, "exam": null, "sort": 69, "token": "6#69"}}, {"model": "courses.coursemap", "pk": 486, "fields": {"_type": "L", "course": 6, "lesson": 410, "homework": null, "exam": null, "sort": 70, "token": "6#70"}}, {"model": "courses.coursemap", "pk": 487, "fields": {"_type": "L", "course": 6, "lesson": 412, "homework": null, "exam": null, "sort": 71, "token": "6#71"}}, {"model": "courses.coursemap", "pk": 488, "fields": {"_type": "L", "course": 6, "lesson": 415, "homework": null, "exam": null, "sort": 72, "token": "6#72"}}, {"model": "courses.coursemap", "pk": 489, "fields": {"_type": "L", "course": 6, "lesson": 417, "homework": null, "exam": null, "sort": 73, "token": "6#73"}}, {"model": "courses.coursemap", "pk": 490, "fields": {"_type": "L", "course": 6, "lesson": 419, "homework": null, "exam": null, "sort": 74, "token": "6#74"}}, {"model": "courses.coursemap", "pk": 491, "fields": {"_type": "L", "course": 6, "lesson": 420, "homework": null, "exam": null, "sort": 75, "token": "6#75"}}, {"model": "courses.coursemap", "pk": 492, "fields": {"_type": "L", "course": 6, "lesson": 421, "homework": null, "exam": null, "sort": 76, "token": "6#76"}}, {"model": "courses.coursemap", "pk": 493, "fields": {"_type": "L", "course": 6, "lesson": 424, "homework": null, "exam": null, "sort": 77, "token": "6#77"}}, {"model": "courses.coursemap", "pk": 494, "fields": {"_type": "L", "course": 6, "lesson": 426, "homework": null, "exam": null, "sort": 78, "token": "6#78"}}, {"model": "courses.coursemap", "pk": 495, "fields": {"_type": "L", "course": 6, "lesson": 430, "homework": null, "exam": null, "sort": 79, "token": "6#79"}}, {"model": "courses.coursemap", "pk": 496, "fields": {"_type": "L", "course": 6, "lesson": 432, "homework": null, "exam": null, "sort": 80, "token": "6#80"}}, {"model": "courses.coursemap", "pk": 497, "fields": {"_type": "L", "course": 6, "lesson": 434, "homework": null, "exam": null, "sort": 81, "token": "6#81"}}, {"model": "courses.coursemap", "pk": 498, "fields": {"_type": "L", "course": 6, "lesson": 433, "homework": null, "exam": null, "sort": 82, "token": "6#82"}}, {"model": "courses.coursemap", "pk": 499, "fields": {"_type": "L", "course": 6, "lesson": 435, "homework": null, "exam": null, "sort": 83, "token": "6#83"}}, {"model": "courses.coursemap", "pk": 500, "fields": {"_type": "L", "course": 6, "lesson": 436, "homework": null, "exam": null, "sort": 84, "token": "6#84"}}, {"model": "courses.coursemap", "pk": 501, "fields": {"_type": "L", "course": 3, "lesson": 201, "homework": null, "exam": null, "sort": 62, "token": "3#62"}}, {"model": "courses.coursemap", "pk": 502, "fields": {"_type": "L", "course": 2, "lesson": 137, "homework": null, "exam": null, "sort": 110, "token": "2#110"}}, {"model": "courses.coursemap", "pk": 503, "fields": {"_type": "H", "course": 5, "lesson": null, "homework": 73, "exam": null, "sort": 91, "token": "5#91"}}, {"model": "courses.coursemap", "pk": 504, "fields": {"_type": "L", "course": 5, "lesson": 270, "homework": null, "exam": null, "sort": 92, "token": "5#92"}}, {"model": "courses.coursemap", "pk": 505, "fields": {"_type": "L", "course": 7, "lesson": 302, "homework": null, "exam": null, "sort": 0, "token": "7#0"}}, {"model": "courses.coursemap", "pk": 506, "fields": {"_type": "L", "course": 7, "lesson": 305, "homework": null, "exam": null, "sort": 2, "token": "7#2"}}, {"model": "courses.coursemap", "pk": 508, "fields": {"_type": "L", "course": 2, "lesson": 139, "homework": null, "exam": null, "sort": 111, "token": "2#111"}}, {"model": "courses.coursemap", "pk": 509, "fields": {"_type": "L", "course": 2, "lesson": 281, "homework": null, "exam": null, "sort": 112, "token": "2#112"}}, {"model": "courses.coursemap", "pk": 510, "fields": {"_type": "L", "course": 2, "lesson": 282, "homework": null, "exam": null, "sort": 113, "token": "2#113"}}, {"model": "courses.coursemap", "pk": 511, "fields": {"_type": "L", "course": 2, "lesson": 284, "homework": null, "exam": null, "sort": 114, "token": "2#114"}}, {"model": "courses.coursemap", "pk": 512, "fields": {"_type": "L", "course": 2, "lesson": 283, "homework": null, "exam": null, "sort": 115, "token": "2#115"}}, {"model": "courses.coursemap", "pk": 513, "fields": {"_type": "E", "course": 2, "lesson": null, "homework": null, "exam": 2, "sort": 116, "token": "2#116"}}, {"model": "courses.coursemap", "pk": 514, "fields": {"_type": "H", "course": 7, "lesson": null, "homework": 63, "exam": null, "sort": 8, "token": "7#8"}}, {"model": "courses.coursemap", "pk": 515, "fields": {"_type": "L", "course": 7, "lesson": 429, "homework": null, "exam": null, "sort": 61, "token": "7#61"}}, {"model": "courses.coursemap", "pk": 516, "fields": {"_type": "L", "course": 7, "lesson": 431, "homework": null, "exam": null, "sort": 62, "token": "7#62"}}, {"model": "courses.coursemap", "pk": 517, "fields": {"_type": "L", "course": 5, "lesson": 271, "homework": null, "exam": null, "sort": 93, "token": "5#93"}}, {"model": "courses.coursemap", "pk": 519, "fields": {"_type": "L", "course": 6, "lesson": 437, "homework": null, "exam": null, "sort": 85, "token": "6#85"}}, {"model": "courses.coursemap", "pk": 520, "fields": {"_type": "L", "course": 6, "lesson": 438, "homework": null, "exam": null, "sort": 86, "token": "6#86"}}, {"model": "courses.coursemap", "pk": 521, "fields": {"_type": "L", "course": 6, "lesson": 439, "homework": null, "exam": null, "sort": 87, "token": "6#87"}}, {"model": "courses.coursemap", "pk": 522, "fields": {"_type": "E", "course": 7, "lesson": null, "homework": null, "exam": 6, "sort": 63, "token": "7#63"}}, {"model": "courses.coursemap", "pk": 523, "fields": {"_type": "L", "course": 5, "lesson": 272, "homework": null, "exam": null, "sort": 94, "token": "5#94"}}, {"model": "courses.coursemap", "pk": 524, "fields": {"_type": "L", "course": 6, "lesson": 440, "homework": null, "exam": null, "sort": 88, "token": "6#88"}}, {"model": "courses.coursemap", "pk": 525, "fields": {"_type": "E", "course": 6, "lesson": null, "homework": null, "exam": 7, "sort": 89, "token": "6#89"}}, {"model": "courses.coursemap", "pk": 526, "fields": {"_type": "L", "course": 3, "lesson": 195, "homework": null, "exam": null, "sort": 51, "token": "3#51"}}, {"model": "courses.coursemap", "pk": 527, "fields": {"_type": "L", "course": 3, "lesson": 202, "homework": null, "exam": null, "sort": 63, "token": "3#63"}}, {"model": "courses.coursemap", "pk": 529, "fields": {"_type": "L", "course": 5, "lesson": 443, "homework": null, "exam": null, "sort": 95, "token": "5#95"}}, {"model": "courses.coursemap", "pk": 530, "fields": {"_type": "L", "course": 5, "lesson": 273, "homework": null, "exam": null, "sort": 96, "token": "5#96"}}, {"model": "courses.coursemap", "pk": 531, "fields": {"_type": "E", "course": 5, "lesson": null, "homework": null, "exam": 5, "sort": 97, "token": "5#97"}}, {"model": "courses.coursemap", "pk": 532, "fields": {"_type": "H", "course": 2, "lesson": null, "homework": 56, "exam": null, "sort": 76, "token": "2#76"}}, {"model": "courses.coursemap", "pk": 533, "fields": {"_type": "E", "course": 3, "lesson": null, "homework": null, "exam": 4, "sort": 64, "token": "3#64"}}, {"model": "courses.achievementsmap", "pk": 3, "fields": {"after": true, "point": 42, "achiv": 30}}, {"model": "courses.achievementsmap", "pk": 4, "fields": {"after": true, "point": 51, "achiv": 29}}, {"model": "courses.achievementsmap", "pk": 5, "fields": {"after": true, "point": 60, "achiv": 25}}, {"model": "courses.achievementsmap", "pk": 6, "fields": {"after": true, "point": 64, "achiv": 28}}, {"model": "courses.achievementsmap", "pk": 7, "fields": {"after": true, "point": 69, "achiv": 27}}, {"model": "courses.achievementsmap", "pk": 8, "fields": {"after": true, "point": 76, "achiv": 26}}, {"model": "courses.achievementsmap", "pk": 9, "fields": {"after": true, "point": 83, "achiv": 24}}, {"model": "courses.achievementsmap", "pk": 10, "fields": {"after": true, "point": 89, "achiv": 23}}, {"model": "courses.achievementsmap", "pk": 11, "fields": {"after": true, "point": 97, "achiv": 22}}, {"model": "courses.achievementsmap", "pk": 12, "fields": {"after": true, "point": 143, "achiv": 46}}, {"model": "courses.achievementsmap", "pk": 13, "fields": {"after": true, "point": 146, "achiv": 45}}, {"model": "courses.achievementsmap", "pk": 14, "fields": {"after": true, "point": 150, "achiv": 44}}, {"model": "courses.achievementsmap", "pk": 15, "fields": {"after": true, "point": 154, "achiv": 43}}, {"model": "courses.achievementsmap", "pk": 16, "fields": {"after": true, "point": 158, "achiv": 42}}, {"model": "courses.achievementsmap", "pk": 17, "fields": {"after": true, "point": 162, "achiv": 41}}, {"model": "courses.achievementsmap", "pk": 18, "fields": {"after": true, "point": 166, "achiv": 37}}, {"model": "courses.achievementsmap", "pk": 19, "fields": {"after": true, "point": 170, "achiv": 39}}, {"model": "courses.achievementsmap", "pk": 20, "fields": {"after": true, "point": 179, "achiv": 38}}, {"model": "courses.achievementsmap", "pk": 21, "fields": {"after": true, "point": 182, "achiv": 36}}, {"model": "courses.achievementsmap", "pk": 22, "fields": {"after": true, "point": 212, "achiv": 62}}, {"model": "courses.achievementsmap", "pk": 23, "fields": {"after": true, "point": 219, "achiv": 61}}, {"model": "courses.achievementsmap", "pk": 24, "fields": {"after": true, "point": 222, "achiv": 60}}, {"model": "courses.achievementsmap", "pk": 25, "fields": {"after": true, "point": 228, "achiv": 59}}, {"model": "courses.achievementsmap", "pk": 26, "fields": {"after": true, "point": 234, "achiv": 58}}, {"model": "courses.achievementsmap", "pk": 27, "fields": {"after": true, "point": 341, "achiv": 57}}, {"model": "courses.achievementsmap", "pk": 28, "fields": {"after": true, "point": 244, "achiv": 56}}, {"model": "courses.achievementsmap", "pk": 29, "fields": {"after": true, "point": 249, "achiv": 55}}, {"model": "courses.diploma", "pk": 1, "fields": {"key": 378005117, "icon": "diploms/web.jpg", "course": 1, "out_image": "diploms/web_temp_print.png", "in_image": "diploms/web_temp_web.png", "date_place": "1300:1890", "date_color": "253,197,61", "date_font": "diploms/pfsquaresanspro-xblack.ttf", "date_size": 30, "key_place": "1250:1890", "key_color": "253,197,61", "key_font": "diploms/pfsquaresanspro-xblack_YDgOftA.ttf", "key_size": 30, "name_place": "1700:950", "name_color": "0,0,0", "name_font": "diploms/pfsquaresanspro-xblack_j9Gy4UF.ttf", "name_size": 150}}] \ No newline at end of file diff --git a/finance/__init__.py b/finance/__init__.py old mode 100644 new mode 100755 diff --git a/finance/admin.py b/finance/admin.py old mode 100644 new mode 100755 diff --git a/finance/api.py b/finance/api.py old mode 100644 new mode 100755 diff --git a/finance/migrations/0001_initial.py b/finance/migrations/0001_initial.py old mode 100644 new mode 100755 index 52eed99..0ac3b5e --- a/finance/migrations/0001_initial.py +++ b/finance/migrations/0001_initial.py @@ -1,125 +1,125 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-03-18 16:46 -from __future__ import unicode_literals - -import datetime -from django.conf import settings -from django.db import migrations, models -import django.db.models.deletion -import django.utils.timezone - - -class Migration(migrations.Migration): - - initial = True - - dependencies = [ - migrations.swappable_dependency(settings.AUTH_USER_MODEL), - ('courses', '0001_initial'), - ] - - operations = [ - migrations.CreateModel( - name='Bill', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('status', models.CharField(choices=[(b'W', '\u041e\u0436\u0438\u0434\u0430\u043d\u0438\u0435 \u0441\u043e\u0433\u043b\u0430\u0441\u0438\u044f'), (b'P', '\u041d\u0430 \u043e\u043f\u043b\u0430\u0442\u0435'), (b'F', '\u041e\u043f\u043b\u0430\u0447\u0435\u043d'), (b'C', '\u041e\u0442\u043a\u043b\u043e\u043d\u0435\u043d')], default=b'W', max_length=1, verbose_name='\u0421\u0442\u0430\u0442\u0443\u0441')), - ('key', models.CharField(blank=True, default=b'', max_length=255, verbose_name='\u041a\u043b\u044e\u0447')), - ('out_id', models.CharField(blank=True, default=b'', max_length=100, verbose_name='ID \u0432\u043d\u0435\u0448\u043d\u0435\u0433\u043e \u0437\u0430\u043a\u0430\u0437\u0430')), - ('date', models.DateTimeField(default=django.utils.timezone.now, verbose_name='\u0414\u0430\u0442\u0430 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0441\u0447\u0435\u0442\u0430')), - ('status_changed', models.DateTimeField(default=django.utils.timezone.now, verbose_name='\u0414\u0430\u0442\u0430 \u0441\u043c\u0435\u043d\u044b \u0441\u0442\u0430\u0442\u0443\u0441\u0430')), - ('comment', models.TextField(blank=True, help_text='\u0411\u0443\u0434\u0435\u0442 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e', verbose_name='\u041a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0439 \u043f\u0440\u043e\u0434\u0430\u0432\u0446\u0430')), - ('finish_date', models.DateTimeField(blank=True, null=True, verbose_name='\u0414\u0430\u0442\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f')), - ('salt', models.CharField(blank=True, default=b'', max_length=100, verbose_name='\u0421\u043e\u043b\u044c')), - ('manager', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='bill_manager', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u0440\u043e\u0434\u0430\u0432\u0435\u0446')), - ], - options={ - 'verbose_name': '\u0421\u0447\u0435\u0442', - 'verbose_name_plural': '\u0421\u0447\u0435\u0442\u0430', - }, - ), - migrations.CreateModel( - name='Price', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('m_type', models.CharField(choices=[(b'B', '\u0411\u0430\u0437\u043e\u0432\u044b\u0439 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b'), (b'E', '\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u044b\u0439 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b'), (b'P', '\u041f\u0440\u0435\u043c\u0438\u0443\u043c \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b')], default=b'B', max_length=1, verbose_name='\u0422\u0438\u043f \u043f\u043e\u0434\u043f\u0438\u0441\u043a\u0438')), - ('public', models.BooleanField(default=False, verbose_name='\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u0442\u044c')), - ('title', models.CharField(default=b'', help_text='\u0411\u0443\u0434\u0435\u0442 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c', max_length=255, verbose_name='\u0423\u0441\u043b\u0443\u0433\u0430')), - ('cost', models.IntegerField(verbose_name='\u0426\u0435\u043d\u0430')), - ('description', models.TextField(help_text='\u0411\u0443\u0434\u0435\u0442 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u043e \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u0430\u043c', verbose_name='\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435')), - ('course', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='courses.Course', verbose_name='\u041a\u0443\u0440\u0441')), - ], - options={ - 'verbose_name': '\u0423\u0441\u043b\u0443\u0433\u0430', - 'verbose_name_plural': '\u0423\u0441\u043b\u0443\u0433\u0438', - }, - ), - migrations.CreateModel( - name='SelfBillHistory', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('status', models.CharField(choices=[(b'O', '\u041e\u0436\u0438\u0434\u0430\u0435\u0442 \u043e\u043f\u043b\u0430\u0442\u044b'), (b'F', '\u041e\u043f\u043b\u0430\u0447\u0435\u043d'), (b'C', '\u041e\u0442\u043a\u043b\u043e\u043d\u0435\u043d')], default=b'O', max_length=1, verbose_name='\u0421\u0442\u0430\u0442\u0443\u0441')), - ('fio', models.CharField(max_length=255, verbose_name='\u0424\u0418\u041e')), - ('phone', models.CharField(blank=True, max_length=255, verbose_name='\u0422\u0435\u043b\u0435\u0444\u043e\u043d')), - ('email', models.CharField(blank=True, max_length=255, verbose_name='Email')), - ('s_date', models.DateTimeField(default=datetime.datetime.now, verbose_name='\u0414\u0430\u0442\u0430 \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u044f')), - ('f_date', models.DateTimeField(blank=True, null=True, verbose_name='\u0414\u0430\u0442\u0430 \u043e\u043f\u043b\u0430\u0442\u044b')), - ('salt', models.CharField(blank=True, default=b'', max_length=255, verbose_name='\u0421\u043e\u043b\u044c')), - ('out_id', models.CharField(blank=True, default=b'', max_length=100, verbose_name='ID \u0432\u043d\u0435\u0448\u043d\u0435\u0433\u043e \u0437\u0430\u043a\u0430\u0437\u0430')), - ('key', models.CharField(blank=True, default=b'', max_length=255, verbose_name='\u041a\u043b\u044e\u0447')), - ('sent', models.BooleanField(default=False, editable=False, verbose_name='\u041e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e')), - ], - options={ - 'verbose_name': '\u0418\u0441\u0442\u043e\u0440\u0438\u044f \u043e\u043f\u043b\u0430\u0442\u044b \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u0447\u0435\u0442\u0430', - 'verbose_name_plural': '\u0418\u0441\u0442\u043e\u0440\u0438\u0438 \u043e\u043f\u043b\u0430\u0442\u044b \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u0441\u0447\u0435\u0442\u043e\u0432', - }, - ), - migrations.CreateModel( - name='SelfBillRequest', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('name', models.CharField(max_length=255, verbose_name='\u041d\u0430\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u043d\u0438\u0435 \u0443\u0441\u043b\u0443\u0433\u0438')), - ('sum', models.IntegerField(verbose_name='\u0421\u0443\u043c\u043c\u0430')), - ('key', models.CharField(blank=True, max_length=255, null=True, unique=True, verbose_name='\u041a\u043b\u044e\u0447')), - ('url', models.URLField(blank=True, verbose_name='URL')), - ], - options={ - 'verbose_name': '\u0428\u0430\u0431\u043b\u043e\u043d \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u0447\u0435\u0442\u0430', - 'verbose_name_plural': '\u0428\u0430\u0431\u043b\u043e\u043d\u044b \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u0447\u0435\u0442\u0430', - }, - ), - migrations.CreateModel( - name='ServiceRequest', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('status', models.CharField(choices=[(b'S', '\u041d\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u043d'), (b'W', '\u0412 \u0440\u0430\u0431\u043e\u0442\u0435'), (b'F', '\u041f\u0440\u043e\u0434\u0430\u043d'), (b'B', '\u041d\u0435 \u043f\u0440\u043e\u0434\u0430\u043b')], default=b'S', max_length=1, verbose_name='\u0421\u0442\u0430\u0442\u0443\u0441')), - ('cancel_description', models.TextField(blank=True, default=b'', verbose_name='\u041f\u0440\u0438\u0447\u0438\u043d\u0430 \u043e\u0442\u043a\u0430\u0437\u0430')), - ('charge', models.TextField(blank=True, default=b'', verbose_name='\u041f\u043e\u0440\u0443\u0447\u0435\u043d\u0438\u0435')), - ('date', models.DateTimeField(default=django.utils.timezone.now, verbose_name='\u0414\u0430\u0442\u0430 \u0437\u0430\u043a\u0430\u0437\u0430')), - ('f_date', models.DateTimeField(blank=True, null=True, verbose_name='\u0414\u0430\u0442\u0430 \u043e\u0431\u0430\u0431\u043e\u0442\u043a\u0438')), - ('send', models.BooleanField(default=False, verbose_name='\u041e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e')), - ('course', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='courses.Course', verbose_name='\u041a\u0443\u0440\u0441')), - ('manager', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='manager_user', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u0440\u043e\u0434\u0430\u0432\u0435\u0446')), - ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='student_user', to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442')), - ], - options={ - 'verbose_name': '\u0417\u0430\u043f\u0440\u043e\u0441 \u043d\u0430 \u043f\u043e\u043a\u0443\u043f\u043a\u0443', - 'verbose_name_plural': '\u0417\u0430\u043f\u0440\u043e\u0441\u044b \u043d\u0430 \u043f\u0440\u043e\u043a\u0443\u043f\u043a\u0438', - }, - ), - migrations.AddField( - model_name='selfbillhistory', - name='request', - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='finance.SelfBillRequest', verbose_name='\u0424\u043e\u0440\u043c\u0430 \u0441\u0447\u0435\u0442\u0430'), - ), - migrations.AddField( - model_name='bill', - name='service', - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='finance.Price', verbose_name='\u041e\u043f\u043b\u0430\u0447\u0438\u0432\u0430\u0435\u043c\u0430\u044f \u0443\u0441\u043b\u0443\u0433\u0430'), - ), - migrations.AddField( - model_name='bill', - name='user', - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='bill_user', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u043b\u0430\u0442\u0435\u043b\u044c\u0449\u0438\u043a'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-03-18 16:46 +from __future__ import unicode_literals + +import datetime +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion +import django.utils.timezone + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('courses', '0001_initial'), + ] + + operations = [ + migrations.CreateModel( + name='Bill', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('status', models.CharField(choices=[(b'W', '\u041e\u0436\u0438\u0434\u0430\u043d\u0438\u0435 \u0441\u043e\u0433\u043b\u0430\u0441\u0438\u044f'), (b'P', '\u041d\u0430 \u043e\u043f\u043b\u0430\u0442\u0435'), (b'F', '\u041e\u043f\u043b\u0430\u0447\u0435\u043d'), (b'C', '\u041e\u0442\u043a\u043b\u043e\u043d\u0435\u043d')], default=b'W', max_length=1, verbose_name='\u0421\u0442\u0430\u0442\u0443\u0441')), + ('key', models.CharField(blank=True, default=b'', max_length=255, verbose_name='\u041a\u043b\u044e\u0447')), + ('out_id', models.CharField(blank=True, default=b'', max_length=100, verbose_name='ID \u0432\u043d\u0435\u0448\u043d\u0435\u0433\u043e \u0437\u0430\u043a\u0430\u0437\u0430')), + ('date', models.DateTimeField(default=django.utils.timezone.now, verbose_name='\u0414\u0430\u0442\u0430 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0441\u0447\u0435\u0442\u0430')), + ('status_changed', models.DateTimeField(default=django.utils.timezone.now, verbose_name='\u0414\u0430\u0442\u0430 \u0441\u043c\u0435\u043d\u044b \u0441\u0442\u0430\u0442\u0443\u0441\u0430')), + ('comment', models.TextField(blank=True, help_text='\u0411\u0443\u0434\u0435\u0442 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e', verbose_name='\u041a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0439 \u043f\u0440\u043e\u0434\u0430\u0432\u0446\u0430')), + ('finish_date', models.DateTimeField(blank=True, null=True, verbose_name='\u0414\u0430\u0442\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f')), + ('salt', models.CharField(blank=True, default=b'', max_length=100, verbose_name='\u0421\u043e\u043b\u044c')), + ('manager', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='bill_manager', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u0440\u043e\u0434\u0430\u0432\u0435\u0446')), + ], + options={ + 'verbose_name': '\u0421\u0447\u0435\u0442', + 'verbose_name_plural': '\u0421\u0447\u0435\u0442\u0430', + }, + ), + migrations.CreateModel( + name='Price', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('m_type', models.CharField(choices=[(b'B', '\u0411\u0430\u0437\u043e\u0432\u044b\u0439 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b'), (b'E', '\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u044b\u0439 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b'), (b'P', '\u041f\u0440\u0435\u043c\u0438\u0443\u043c \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b')], default=b'B', max_length=1, verbose_name='\u0422\u0438\u043f \u043f\u043e\u0434\u043f\u0438\u0441\u043a\u0438')), + ('public', models.BooleanField(default=False, verbose_name='\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u0442\u044c')), + ('title', models.CharField(default=b'', help_text='\u0411\u0443\u0434\u0435\u0442 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c', max_length=255, verbose_name='\u0423\u0441\u043b\u0443\u0433\u0430')), + ('cost', models.IntegerField(verbose_name='\u0426\u0435\u043d\u0430')), + ('description', models.TextField(help_text='\u0411\u0443\u0434\u0435\u0442 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u043e \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u0430\u043c', verbose_name='\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435')), + ('course', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='courses.Course', verbose_name='\u041a\u0443\u0440\u0441')), + ], + options={ + 'verbose_name': '\u0423\u0441\u043b\u0443\u0433\u0430', + 'verbose_name_plural': '\u0423\u0441\u043b\u0443\u0433\u0438', + }, + ), + migrations.CreateModel( + name='SelfBillHistory', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('status', models.CharField(choices=[(b'O', '\u041e\u0436\u0438\u0434\u0430\u0435\u0442 \u043e\u043f\u043b\u0430\u0442\u044b'), (b'F', '\u041e\u043f\u043b\u0430\u0447\u0435\u043d'), (b'C', '\u041e\u0442\u043a\u043b\u043e\u043d\u0435\u043d')], default=b'O', max_length=1, verbose_name='\u0421\u0442\u0430\u0442\u0443\u0441')), + ('fio', models.CharField(max_length=255, verbose_name='\u0424\u0418\u041e')), + ('phone', models.CharField(blank=True, max_length=255, verbose_name='\u0422\u0435\u043b\u0435\u0444\u043e\u043d')), + ('email', models.CharField(blank=True, max_length=255, verbose_name='Email')), + ('s_date', models.DateTimeField(default=datetime.datetime.now, verbose_name='\u0414\u0430\u0442\u0430 \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u044f')), + ('f_date', models.DateTimeField(blank=True, null=True, verbose_name='\u0414\u0430\u0442\u0430 \u043e\u043f\u043b\u0430\u0442\u044b')), + ('salt', models.CharField(blank=True, default=b'', max_length=255, verbose_name='\u0421\u043e\u043b\u044c')), + ('out_id', models.CharField(blank=True, default=b'', max_length=100, verbose_name='ID \u0432\u043d\u0435\u0448\u043d\u0435\u0433\u043e \u0437\u0430\u043a\u0430\u0437\u0430')), + ('key', models.CharField(blank=True, default=b'', max_length=255, verbose_name='\u041a\u043b\u044e\u0447')), + ('sent', models.BooleanField(default=False, editable=False, verbose_name='\u041e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e')), + ], + options={ + 'verbose_name': '\u0418\u0441\u0442\u043e\u0440\u0438\u044f \u043e\u043f\u043b\u0430\u0442\u044b \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u0447\u0435\u0442\u0430', + 'verbose_name_plural': '\u0418\u0441\u0442\u043e\u0440\u0438\u0438 \u043e\u043f\u043b\u0430\u0442\u044b \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u0441\u0447\u0435\u0442\u043e\u0432', + }, + ), + migrations.CreateModel( + name='SelfBillRequest', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(max_length=255, verbose_name='\u041d\u0430\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u043d\u0438\u0435 \u0443\u0441\u043b\u0443\u0433\u0438')), + ('sum', models.IntegerField(verbose_name='\u0421\u0443\u043c\u043c\u0430')), + ('key', models.CharField(blank=True, max_length=255, null=True, unique=True, verbose_name='\u041a\u043b\u044e\u0447')), + ('url', models.URLField(blank=True, verbose_name='URL')), + ], + options={ + 'verbose_name': '\u0428\u0430\u0431\u043b\u043e\u043d \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u0447\u0435\u0442\u0430', + 'verbose_name_plural': '\u0428\u0430\u0431\u043b\u043e\u043d\u044b \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u0447\u0435\u0442\u0430', + }, + ), + migrations.CreateModel( + name='ServiceRequest', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('status', models.CharField(choices=[(b'S', '\u041d\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0430\u043d'), (b'W', '\u0412 \u0440\u0430\u0431\u043e\u0442\u0435'), (b'F', '\u041f\u0440\u043e\u0434\u0430\u043d'), (b'B', '\u041d\u0435 \u043f\u0440\u043e\u0434\u0430\u043b')], default=b'S', max_length=1, verbose_name='\u0421\u0442\u0430\u0442\u0443\u0441')), + ('cancel_description', models.TextField(blank=True, default=b'', verbose_name='\u041f\u0440\u0438\u0447\u0438\u043d\u0430 \u043e\u0442\u043a\u0430\u0437\u0430')), + ('charge', models.TextField(blank=True, default=b'', verbose_name='\u041f\u043e\u0440\u0443\u0447\u0435\u043d\u0438\u0435')), + ('date', models.DateTimeField(default=django.utils.timezone.now, verbose_name='\u0414\u0430\u0442\u0430 \u0437\u0430\u043a\u0430\u0437\u0430')), + ('f_date', models.DateTimeField(blank=True, null=True, verbose_name='\u0414\u0430\u0442\u0430 \u043e\u0431\u0430\u0431\u043e\u0442\u043a\u0438')), + ('send', models.BooleanField(default=False, verbose_name='\u041e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043e')), + ('course', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='courses.Course', verbose_name='\u041a\u0443\u0440\u0441')), + ('manager', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='manager_user', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u0440\u043e\u0434\u0430\u0432\u0435\u0446')), + ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='student_user', to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442')), + ], + options={ + 'verbose_name': '\u0417\u0430\u043f\u0440\u043e\u0441 \u043d\u0430 \u043f\u043e\u043a\u0443\u043f\u043a\u0443', + 'verbose_name_plural': '\u0417\u0430\u043f\u0440\u043e\u0441\u044b \u043d\u0430 \u043f\u0440\u043e\u043a\u0443\u043f\u043a\u0438', + }, + ), + migrations.AddField( + model_name='selfbillhistory', + name='request', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='finance.SelfBillRequest', verbose_name='\u0424\u043e\u0440\u043c\u0430 \u0441\u0447\u0435\u0442\u0430'), + ), + migrations.AddField( + model_name='bill', + name='service', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='finance.Price', verbose_name='\u041e\u043f\u043b\u0430\u0447\u0438\u0432\u0430\u0435\u043c\u0430\u044f \u0443\u0441\u043b\u0443\u0433\u0430'), + ), + migrations.AddField( + model_name='bill', + name='user', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='bill_user', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u043b\u0430\u0442\u0435\u043b\u044c\u0449\u0438\u043a'), + ), + ] diff --git a/finance/migrations/0002_bill_description.py b/finance/migrations/0002_bill_description.py old mode 100644 new mode 100755 index e392bfd..e5870f7 --- a/finance/migrations/0002_bill_description.py +++ b/finance/migrations/0002_bill_description.py @@ -1,20 +1,20 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-04-07 17:41 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('finance', '0001_initial'), - ] - - operations = [ - migrations.AddField( - model_name='bill', - name='description', - field=models.TextField(blank=True, default=b'', help_text='\u041f\u043e\u043a\u0430\u0437\u0430\u043d\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u043d\u0443\u0442\u0440\u0438', verbose_name='\u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u0437\u0430\u043c\u0435\u0442\u043a\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-04-07 17:41 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('finance', '0001_initial'), + ] + + operations = [ + migrations.AddField( + model_name='bill', + name='description', + field=models.TextField(blank=True, default=b'', help_text='\u041f\u043e\u043a\u0430\u0437\u0430\u043d\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u043d\u0443\u0442\u0440\u0438', verbose_name='\u0412\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u0437\u0430\u043c\u0435\u0442\u043a\u0430'), + ), + ] diff --git a/finance/migrations/0003_selfbillrequest_company.py b/finance/migrations/0003_selfbillrequest_company.py old mode 100644 new mode 100755 index 81743a5..6247eb0 --- a/finance/migrations/0003_selfbillrequest_company.py +++ b/finance/migrations/0003_selfbillrequest_company.py @@ -1,20 +1,20 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-14 16:52 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('finance', '0002_bill_description'), - ] - - operations = [ - migrations.AddField( - model_name='selfbillrequest', - name='company', - field=models.CharField(choices=[(b'lms', b'http://lms.ru/'), (b'skillbox', b'http://skill-box.ru/')], default=b'lms', max_length=255, verbose_name='\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-14 16:52 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('finance', '0002_bill_description'), + ] + + operations = [ + migrations.AddField( + model_name='selfbillrequest', + name='company', + field=models.CharField(choices=[(b'lms', b'http://lms.ru/'), (b'skillbox', b'http://skill-box.ru/')], default=b'lms', max_length=255, verbose_name='\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f'), + ), + ] diff --git a/finance/migrations/0004_auto_20160414_1700.py b/finance/migrations/0004_auto_20160414_1700.py old mode 100644 new mode 100755 index dcf9c08..ff3d1b7 --- a/finance/migrations/0004_auto_20160414_1700.py +++ b/finance/migrations/0004_auto_20160414_1700.py @@ -1,30 +1,30 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-14 17:00 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('finance', '0003_selfbillrequest_company'), - ] - - operations = [ - migrations.AddField( - model_name='selfbillhistory', - name='day_sent', - field=models.BooleanField(default=False, editable=False, verbose_name='\u041e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043f\u043e\u0441\u043b\u0435 \u0434\u043d\u0435\u0432\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0441\u0442\u043e\u044f'), - ), - migrations.AddField( - model_name='selfbillhistory', - name='month_sent', - field=models.BooleanField(default=False, editable=False, verbose_name='\u041e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043f\u043e\u0441\u043b\u0435 \u043c\u0435\u0441\u044f\u0447\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0441\u0442\u043e\u044f'), - ), - migrations.AddField( - model_name='selfbillhistory', - name='week_sent', - field=models.BooleanField(default=False, editable=False, verbose_name='\u041e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043f\u043e\u0441\u043b\u0435 \u043d\u0435\u0434\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0441\u0442\u043e\u044f'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-14 17:00 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('finance', '0003_selfbillrequest_company'), + ] + + operations = [ + migrations.AddField( + model_name='selfbillhistory', + name='day_sent', + field=models.BooleanField(default=False, editable=False, verbose_name='\u041e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043f\u043e\u0441\u043b\u0435 \u0434\u043d\u0435\u0432\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0441\u0442\u043e\u044f'), + ), + migrations.AddField( + model_name='selfbillhistory', + name='month_sent', + field=models.BooleanField(default=False, editable=False, verbose_name='\u041e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043f\u043e\u0441\u043b\u0435 \u043c\u0435\u0441\u044f\u0447\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0441\u0442\u043e\u044f'), + ), + migrations.AddField( + model_name='selfbillhistory', + name='week_sent', + field=models.BooleanField(default=False, editable=False, verbose_name='\u041e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043f\u043e\u0441\u043b\u0435 \u043d\u0435\u0434\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0441\u0442\u043e\u044f'), + ), + ] diff --git a/finance/migrations/0005_selfbilldesign.py b/finance/migrations/0005_selfbilldesign.py old mode 100644 new mode 100755 index 83c77c1..1ff0eea --- a/finance/migrations/0005_selfbilldesign.py +++ b/finance/migrations/0005_selfbilldesign.py @@ -1,28 +1,28 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-14 19:27 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('finance', '0004_auto_20160414_1700'), - ] - - operations = [ - migrations.CreateModel( - name='SelfBillDesign', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('name', models.CharField(max_length=255, verbose_name='\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438')), - ('logo', models.ImageField(upload_to=b'self', verbose_name='\u041b\u043e\u0433\u043e\u0442\u0438\u043f')), - ('background', models.CharField(max_length=255, verbose_name='\u0426\u0432\u0435\u0442 \u0444\u043e\u043d\u0430')), - ], - options={ - 'verbose_name': '\u0414\u0438\u0437\u0430\u0439\u043d \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u0447\u0435\u0442\u0430', - 'verbose_name_plural': '\u0414\u0438\u0437\u0430\u0439\u043d \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u0447\u0435\u0442\u0430', - }, - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-14 19:27 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('finance', '0004_auto_20160414_1700'), + ] + + operations = [ + migrations.CreateModel( + name='SelfBillDesign', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(max_length=255, verbose_name='\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438')), + ('logo', models.ImageField(upload_to=b'self', verbose_name='\u041b\u043e\u0433\u043e\u0442\u0438\u043f')), + ('background', models.CharField(max_length=255, verbose_name='\u0426\u0432\u0435\u0442 \u0444\u043e\u043d\u0430')), + ], + options={ + 'verbose_name': '\u0414\u0438\u0437\u0430\u0439\u043d \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u0447\u0435\u0442\u0430', + 'verbose_name_plural': '\u0414\u0438\u0437\u0430\u0439\u043d \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u0447\u0435\u0442\u0430', + }, + ), + ] diff --git a/finance/migrations/0006_auto_20160414_1930.py b/finance/migrations/0006_auto_20160414_1930.py old mode 100644 new mode 100755 index 3c37e26..e14c2d1 --- a/finance/migrations/0006_auto_20160414_1930.py +++ b/finance/migrations/0006_auto_20160414_1930.py @@ -1,25 +1,25 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-14 19:30 -from __future__ import unicode_literals - -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('finance', '0005_selfbilldesign'), - ] - - operations = [ - migrations.RemoveField( - model_name='selfbillrequest', - name='company', - ), - migrations.AddField( - model_name='selfbillrequest', - name='design', - field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='finance.SelfBillDesign', verbose_name='\u041e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u0435'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-14 19:30 +from __future__ import unicode_literals + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('finance', '0005_selfbilldesign'), + ] + + operations = [ + migrations.RemoveField( + model_name='selfbillrequest', + name='company', + ), + migrations.AddField( + model_name='selfbillrequest', + name='design', + field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='finance.SelfBillDesign', verbose_name='\u041e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u0435'), + ), + ] diff --git a/finance/migrations/0007_auto_20160414_1941.py b/finance/migrations/0007_auto_20160414_1941.py old mode 100644 new mode 100755 index 1319d39..454bdf7 --- a/finance/migrations/0007_auto_20160414_1941.py +++ b/finance/migrations/0007_auto_20160414_1941.py @@ -1,25 +1,25 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-14 19:41 -from __future__ import unicode_literals - -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('finance', '0006_auto_20160414_1930'), - ] - - operations = [ - migrations.AlterModelOptions( - name='selfbilldesign', - options={'verbose_name': '\u0411\u0435\u043d\u0435\u0444\u0438\u0446\u0438\u0430\u0440 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u0447\u0435\u0442\u0430', 'verbose_name_plural': '\u0411\u0435\u043d\u0435\u0444\u0438\u0446\u0438\u0430\u0440\u044b \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u0447\u0435\u0442\u0430'}, - ), - migrations.AlterField( - model_name='selfbillrequest', - name='design', - field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='finance.SelfBillDesign', verbose_name='\u0411\u0435\u043d\u0435\u0444\u0438\u0446\u0438\u0430\u0440'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-14 19:41 +from __future__ import unicode_literals + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('finance', '0006_auto_20160414_1930'), + ] + + operations = [ + migrations.AlterModelOptions( + name='selfbilldesign', + options={'verbose_name': '\u0411\u0435\u043d\u0435\u0444\u0438\u0446\u0438\u0430\u0440 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u0447\u0435\u0442\u0430', 'verbose_name_plural': '\u0411\u0435\u043d\u0435\u0444\u0438\u0446\u0438\u0430\u0440\u044b \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u0447\u0435\u0442\u0430'}, + ), + migrations.AlterField( + model_name='selfbillrequest', + name='design', + field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='finance.SelfBillDesign', verbose_name='\u0411\u0435\u043d\u0435\u0444\u0438\u0446\u0438\u0430\u0440'), + ), + ] diff --git a/finance/migrations/0008_selfbilldesign_users.py b/finance/migrations/0008_selfbilldesign_users.py old mode 100644 new mode 100755 index 776eb5c..0057eab --- a/finance/migrations/0008_selfbilldesign_users.py +++ b/finance/migrations/0008_selfbilldesign_users.py @@ -1,22 +1,22 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-14 19:44 -from __future__ import unicode_literals - -from django.conf import settings -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - migrations.swappable_dependency(settings.AUTH_USER_MODEL), - ('finance', '0007_auto_20160414_1941'), - ] - - operations = [ - migrations.AddField( - model_name='selfbilldesign', - name='users', - field=models.ManyToManyField(to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u043e\u043b\u0443\u0447\u0430\u0442\u0435\u043b\u0438 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439 \u043e \u043f\u043b\u0430\u0442\u0435\u0436\u0430\u0445'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-14 19:44 +from __future__ import unicode_literals + +from django.conf import settings +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('finance', '0007_auto_20160414_1941'), + ] + + operations = [ + migrations.AddField( + model_name='selfbilldesign', + name='users', + field=models.ManyToManyField(to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u043e\u043b\u0443\u0447\u0430\u0442\u0435\u043b\u0438 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439 \u043e \u043f\u043b\u0430\u0442\u0435\u0436\u0430\u0445'), + ), + ] diff --git a/finance/migrations/0009_selfbillhistory_new_sent.py b/finance/migrations/0009_selfbillhistory_new_sent.py old mode 100644 new mode 100755 index b089756..703b884 --- a/finance/migrations/0009_selfbillhistory_new_sent.py +++ b/finance/migrations/0009_selfbillhistory_new_sent.py @@ -1,20 +1,20 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-14 20:30 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('finance', '0008_selfbilldesign_users'), - ] - - operations = [ - migrations.AddField( - model_name='selfbillhistory', - name='new_sent', - field=models.BooleanField(default=False, editable=False, verbose_name='\u041e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043e \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u0441\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-14 20:30 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('finance', '0008_selfbilldesign_users'), + ] + + operations = [ + migrations.AddField( + model_name='selfbillhistory', + name='new_sent', + field=models.BooleanField(default=False, editable=False, verbose_name='\u041e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043e \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u0441\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/finance/migrations/0010_selfbilldesign_pay_id.py b/finance/migrations/0010_selfbilldesign_pay_id.py old mode 100644 new mode 100755 index 98c1bed..53c0837 --- a/finance/migrations/0010_selfbilldesign_pay_id.py +++ b/finance/migrations/0010_selfbilldesign_pay_id.py @@ -1,20 +1,20 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-28 14:15 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('finance', '0009_selfbillhistory_new_sent'), - ] - - operations = [ - migrations.AddField( - model_name='selfbilldesign', - name='pay_id', - field=models.IntegerField(default=0, max_length=255, verbose_name='\u041a\u043b\u044e\u0447\u044c \u0442\u043e\u0440\u0433\u043e\u0432\u043e\u0439 \u0442\u043e\u0447\u043a\u0438'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-28 14:15 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('finance', '0009_selfbillhistory_new_sent'), + ] + + operations = [ + migrations.AddField( + model_name='selfbilldesign', + name='pay_id', + field=models.IntegerField(default=0, max_length=255, verbose_name='\u041a\u043b\u044e\u0447\u044c \u0442\u043e\u0440\u0433\u043e\u0432\u043e\u0439 \u0442\u043e\u0447\u043a\u0438'), + ), + ] diff --git a/finance/migrations/0011_auto_20160505_1748.py b/finance/migrations/0011_auto_20160505_1748.py old mode 100644 new mode 100755 index bdc2e00..653909e --- a/finance/migrations/0011_auto_20160505_1748.py +++ b/finance/migrations/0011_auto_20160505_1748.py @@ -1,26 +1,26 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-05-05 17:48 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('courses', '0024_auto_20160505_1748'), - ('finance', '0010_selfbilldesign_pay_id'), - ] - - operations = [ - migrations.AddField( - model_name='price', - name='included', - field=models.ManyToManyField(null=True, to='courses.CourseMap', verbose_name='\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u044b'), - ), - migrations.AlterField( - model_name='selfbilldesign', - name='pay_id', - field=models.IntegerField(blank=True, default=0, help_text='ID \u0442\u043e\u0440\u0433\u043e\u0432\u043e\u0439 \u0442\u043e\u0447\u043a\u0438. \u0415\u0441\u043b\u0438 \u043d\u0435 \u0443\u043a\u0430\u0437\u0430\u043d\u0430 - \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0430\u044f "1501".\u0415\u0441\u043b\u0438 \u0442\u0430\u043a \u043d\u0435 \u0437\u0430\u0434\u0443\u043c\u0430\u043d\u043e, \u0442\u043e \u044d\u0442\u043e \u0432\u044b\u0437\u044b\u0432\u0435\u0442 \u043e\u0448\u0438\u0431\u043a\u0443', max_length=255, verbose_name='\u041a\u043b\u044e\u0447 \u0442\u043e\u0440\u0433\u043e\u0432\u043e\u0439 \u0442\u043e\u0447\u043a\u0438'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-05-05 17:48 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('courses', '0024_auto_20160505_1748'), + ('finance', '0010_selfbilldesign_pay_id'), + ] + + operations = [ + migrations.AddField( + model_name='price', + name='included', + field=models.ManyToManyField(null=True, to='courses.CourseMap', verbose_name='\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u044b'), + ), + migrations.AlterField( + model_name='selfbilldesign', + name='pay_id', + field=models.IntegerField(blank=True, default=0, help_text='ID \u0442\u043e\u0440\u0433\u043e\u0432\u043e\u0439 \u0442\u043e\u0447\u043a\u0438. \u0415\u0441\u043b\u0438 \u043d\u0435 \u0443\u043a\u0430\u0437\u0430\u043d\u0430 - \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0430\u044f "1501".\u0415\u0441\u043b\u0438 \u0442\u0430\u043a \u043d\u0435 \u0437\u0430\u0434\u0443\u043c\u0430\u043d\u043e, \u0442\u043e \u044d\u0442\u043e \u0432\u044b\u0437\u044b\u0432\u0435\u0442 \u043e\u0448\u0438\u0431\u043a\u0443', max_length=255, verbose_name='\u041a\u043b\u044e\u0447 \u0442\u043e\u0440\u0433\u043e\u0432\u043e\u0439 \u0442\u043e\u0447\u043a\u0438'), + ), + ] diff --git a/finance/migrations/0012_auto_20160505_2009.py b/finance/migrations/0012_auto_20160505_2009.py old mode 100644 new mode 100755 index 529a241..a0ced2c --- a/finance/migrations/0012_auto_20160505_2009.py +++ b/finance/migrations/0012_auto_20160505_2009.py @@ -1,25 +1,25 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-05-05 20:09 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('finance', '0011_auto_20160505_1748'), - ] - - operations = [ - migrations.AddField( - model_name='price', - name='by_time', - field=models.IntegerField(blank=True, default=0, help_text='\u041f\u043e \u0438\u0441\u0442\u0435\u0447\u0435\u043d\u0438\u0438 \u044d\u0442\u043e\u0433\u043e \u043f\u0435\u0440\u0438\u043e\u0434\u0430 \u0434\u043e\u0441\u0442\u0443\u043f \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u043a\u0440\u044b\u0442', verbose_name='\u0414\u043d\u0435\u0439 \u0434\u043e\u0441\u0442\u0443\u043f\u0430'), - ), - migrations.AlterField( - model_name='price', - name='included', - field=models.ManyToManyField(blank=True, help_text='\u0415\u0441\u043b\u0438 \u0437\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u044d\u0442\u0443 \u0444\u0443\u043d\u043a\u0446\u0438\u044e, \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0430\u044f \u0441\u0445\u0435\u043c\u0430 \u043f\u043e\u0434\u043f\u0438\u0441\u043e\u043a \u0431\u0443\u0434\u0435\u0442 \u043d\u0435 \u0430\u043a\u0442\u0438\u0432\u043d\u0430', null=True, to='courses.CourseMap', verbose_name='\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u044b'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-05-05 20:09 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('finance', '0011_auto_20160505_1748'), + ] + + operations = [ + migrations.AddField( + model_name='price', + name='by_time', + field=models.IntegerField(blank=True, default=0, help_text='\u041f\u043e \u0438\u0441\u0442\u0435\u0447\u0435\u043d\u0438\u0438 \u044d\u0442\u043e\u0433\u043e \u043f\u0435\u0440\u0438\u043e\u0434\u0430 \u0434\u043e\u0441\u0442\u0443\u043f \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u043a\u0440\u044b\u0442', verbose_name='\u0414\u043d\u0435\u0439 \u0434\u043e\u0441\u0442\u0443\u043f\u0430'), + ), + migrations.AlterField( + model_name='price', + name='included', + field=models.ManyToManyField(blank=True, help_text='\u0415\u0441\u043b\u0438 \u0437\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u044d\u0442\u0443 \u0444\u0443\u043d\u043a\u0446\u0438\u044e, \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0430\u044f \u0441\u0445\u0435\u043c\u0430 \u043f\u043e\u0434\u043f\u0438\u0441\u043e\u043a \u0431\u0443\u0434\u0435\u0442 \u043d\u0435 \u0430\u043a\u0442\u0438\u0432\u043d\u0430', null=True, to='courses.CourseMap', verbose_name='\u0412\u043a\u043b\u044e\u0447\u0435\u043d\u044b'), + ), + ] diff --git a/finance/migrations/0013_auto_20160505_2035.py b/finance/migrations/0013_auto_20160505_2035.py old mode 100644 new mode 100755 index a526aa8..2bd2aac --- a/finance/migrations/0013_auto_20160505_2035.py +++ b/finance/migrations/0013_auto_20160505_2035.py @@ -1,20 +1,20 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-05-05 20:35 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('finance', '0012_auto_20160505_2009'), - ] - - operations = [ - migrations.AlterField( - model_name='price', - name='by_time', - field=models.IntegerField(blank=True, default=0, help_text='\u041f\u043e \u0438\u0441\u0442\u0435\u0447\u0435\u043d\u0438\u0438 \u044d\u0442\u043e\u0433\u043e \u043f\u0435\u0440\u0438\u043e\u0434\u0430 \u0434\u043e\u0441\u0442\u0443\u043f \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u043a\u0440\u044b\u0442', null=True, verbose_name='\u0414\u043d\u0435\u0439 \u0434\u043e\u0441\u0442\u0443\u043f\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-05-05 20:35 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('finance', '0012_auto_20160505_2009'), + ] + + operations = [ + migrations.AlterField( + model_name='price', + name='by_time', + field=models.IntegerField(blank=True, default=0, help_text='\u041f\u043e \u0438\u0441\u0442\u0435\u0447\u0435\u043d\u0438\u0438 \u044d\u0442\u043e\u0433\u043e \u043f\u0435\u0440\u0438\u043e\u0434\u0430 \u0434\u043e\u0441\u0442\u0443\u043f \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u043a\u0440\u044b\u0442', null=True, verbose_name='\u0414\u043d\u0435\u0439 \u0434\u043e\u0441\u0442\u0443\u043f\u0430'), + ), + ] diff --git a/finance/migrations/0014_auto_20160506_1303.py b/finance/migrations/0014_auto_20160506_1303.py old mode 100644 new mode 100755 index 46203a8..a9a30e9 --- a/finance/migrations/0014_auto_20160506_1303.py +++ b/finance/migrations/0014_auto_20160506_1303.py @@ -1,20 +1,20 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-05-06 13:03 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('finance', '0013_auto_20160505_2035'), - ] - - operations = [ - migrations.AlterField( - model_name='price', - name='by_time', - field=models.IntegerField(blank=True, default=0, help_text='\u041f\u043e \u0438\u0441\u0442\u0435\u0447\u0435\u043d\u0438\u0438 \u044d\u0442\u043e\u0433\u043e \u043f\u0435\u0440\u0438\u043e\u0434\u0430 \u0434\u043e\u0441\u0442\u0443\u043f \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u043a\u0440\u044b\u0442 \u0434\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439.', null=True, verbose_name='\u0414\u043d\u0435\u0439 \u0434\u043e\u0441\u0442\u0443\u043f\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-05-06 13:03 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('finance', '0013_auto_20160505_2035'), + ] + + operations = [ + migrations.AlterField( + model_name='price', + name='by_time', + field=models.IntegerField(blank=True, default=0, help_text='\u041f\u043e \u0438\u0441\u0442\u0435\u0447\u0435\u043d\u0438\u0438 \u044d\u0442\u043e\u0433\u043e \u043f\u0435\u0440\u0438\u043e\u0434\u0430 \u0434\u043e\u0441\u0442\u0443\u043f \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u043a\u0440\u044b\u0442 \u0434\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439.', null=True, verbose_name='\u0414\u043d\u0435\u0439 \u0434\u043e\u0441\u0442\u0443\u043f\u0430'), + ), + ] diff --git a/finance/migrations/0015_price_key.py b/finance/migrations/0015_price_key.py old mode 100644 new mode 100755 index a5150bc..fd49fdb --- a/finance/migrations/0015_price_key.py +++ b/finance/migrations/0015_price_key.py @@ -1,20 +1,20 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-05-09 17:10 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('finance', '0014_auto_20160506_1303'), - ] - - operations = [ - migrations.AddField( - model_name='price', - name='key', - field=models.CharField(blank=True, editable=False, max_length=255, null=True, verbose_name='\u041a\u043b\u044e\u0447\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-05-09 17:10 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('finance', '0014_auto_20160506_1303'), + ] + + operations = [ + migrations.AddField( + model_name='price', + name='key', + field=models.CharField(blank=True, editable=False, max_length=255, null=True, verbose_name='\u041a\u043b\u044e\u0447\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u0430'), + ), + ] diff --git a/finance/migrations/0016_auto_20160524_1255.py b/finance/migrations/0016_auto_20160524_1255.py old mode 100644 new mode 100755 index b4d6064..f216a07 --- a/finance/migrations/0016_auto_20160524_1255.py +++ b/finance/migrations/0016_auto_20160524_1255.py @@ -1,25 +1,25 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-05-24 12:55 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('finance', '0015_price_key'), - ] - - operations = [ - migrations.AddField( - model_name='price', - name='flex', - field=models.BooleanField(default=False, verbose_name='\u041e\u043f\u0438\u0440\u0430\u0442\u044c\u0441\u044f \u043d\u0430 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f'), - ), - migrations.AlterField( - model_name='price', - name='key', - field=models.CharField(blank=True, editable=False, max_length=255, null=True, verbose_name='\u041a\u043b\u044e\u0447 \u0434\u043e\u0441\u0442\u0443\u043f\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-05-24 12:55 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('finance', '0015_price_key'), + ] + + operations = [ + migrations.AddField( + model_name='price', + name='flex', + field=models.BooleanField(default=False, verbose_name='\u041e\u043f\u0438\u0440\u0430\u0442\u044c\u0441\u044f \u043d\u0430 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f'), + ), + migrations.AlterField( + model_name='price', + name='key', + field=models.CharField(blank=True, editable=False, max_length=255, null=True, verbose_name='\u041a\u043b\u044e\u0447 \u0434\u043e\u0441\u0442\u0443\u043f\u0430'), + ), + ] diff --git a/finance/migrations/0017_remove_price_flex.py b/finance/migrations/0017_remove_price_flex.py old mode 100644 new mode 100755 index cb1fd7b..a4b15e8 --- a/finance/migrations/0017_remove_price_flex.py +++ b/finance/migrations/0017_remove_price_flex.py @@ -1,19 +1,19 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-05-24 12:58 -from __future__ import unicode_literals - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('finance', '0016_auto_20160524_1255'), - ] - - operations = [ - migrations.RemoveField( - model_name='price', - name='flex', - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-05-24 12:58 +from __future__ import unicode_literals + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('finance', '0016_auto_20160524_1255'), + ] + + operations = [ + migrations.RemoveField( + model_name='price', + name='flex', + ), + ] diff --git a/finance/migrations/0018_auto_20160531_1256.py b/finance/migrations/0018_auto_20160531_1256.py old mode 100644 new mode 100755 index 0f3d540..1be62ac --- a/finance/migrations/0018_auto_20160531_1256.py +++ b/finance/migrations/0018_auto_20160531_1256.py @@ -1,117 +1,117 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-05-31 12:56 -from __future__ import unicode_literals - -import datetime -from django.conf import settings -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - migrations.swappable_dependency(settings.AUTH_USER_MODEL), - ('finance', '0017_remove_price_flex'), - ] - - operations = [ - migrations.CreateModel( - name='Installment', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('price', models.IntegerField(verbose_name='\u041e\u0431\u0449\u0430\u044f \u0446\u0435\u043d\u0430')), - ('first_price', models.IntegerField(default=0, verbose_name='\u041f\u0435\u0440\u0432\u044b\u0439 \u043f\u043b\u0430\u0442\u0435\u0436')), - ('period', models.IntegerField(default=5, verbose_name='\u041c\u0435\u0441\u044f\u0446\u0435\u0432 \u043d\u0430 \u043e\u043f\u043b\u0430\u0442\u0443')), - ('date', models.DateTimeField(default=datetime.datetime.now, editable=False, verbose_name='\u0414\u0430\u0442\u0430 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f')), - ('f_date', models.DateField(blank=True, verbose_name='\u0414\u0430\u0442\u0430 \u0437\u0430\u043a\u0440\u044b\u0442\u0438\u044f')), - ('rest', models.IntegerField(default=0, verbose_name='\u041e\u0441\u0442\u0430\u0442\u043e\u043a \u043f\u043e \u0437\u0430\u0434\u043e\u043b\u0436\u043d\u043e\u0441\u0442\u0438')), - ('wait', models.IntegerField(default=0, help_text='\u0427\u0435\u0440\u0435\u0437 \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0434\u043d\u0435\u0439 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u0440\u043e\u0447\u043a\u0438', verbose_name='\u0414\u043d\u0435\u0439 \u0432 \u0437\u0430\u0434\u043e\u043b\u0436\u043d\u043e\u0441\u0442\u0438')), - ('expired', models.BooleanField(default=False, verbose_name='\u041f\u0440\u043e\u0441\u0440\u043e\u0447\u0435\u043d\u043e')), - ], - options={ - 'verbose_name': '\u0420\u0430\u0441\u0441\u0440\u043e\u0447\u043a\u0430', - 'verbose_name_plural': '\u0420\u0430\u0441\u0441\u0440\u043e\u0447\u043a\u0438', - }, - ), - migrations.RemoveField( - model_name='selfbilldesign', - name='users', - ), - migrations.RemoveField( - model_name='selfbillhistory', - name='request', - ), - migrations.RemoveField( - model_name='selfbillrequest', - name='design', - ), - migrations.AlterModelOptions( - name='price', - options={'ordering': ['-id'], 'verbose_name': '\u0423\u0441\u043b\u0443\u0433\u0430', 'verbose_name_plural': '\u0423\u0441\u043b\u0443\u0433\u0438'}, - ), - migrations.AddField( - model_name='bill', - name='_method', - field=models.CharField(choices=[(b'H', '\u0412 \u0420\u0443\u0447\u043d\u0443\u044e'), (b'S', 'SimplePay'), (b'A1', '\u0410\u043b\u044c\u0444\u0430\u0411\u0430\u043d\u043a'), (b'A2', '\u0410\u043b\u044c\u0431\u0430\u0411\u0430\u043d\u043a c \u043f\u0440\u0435\u0434\u043e\u043f\u043b\u0430\u0442\u043e\u0439')], default=b'H', max_length=2, verbose_name='\u0421\u043f\u043e\u0441\u043e\u0431 \u043e\u043f\u043b\u0430\u0442\u044b'), - ), - migrations.AddField( - model_name='bill', - name='_type', - field=models.CharField(choices=[(b'I', '\u0420\u0430\u0441\u0441\u0440\u043e\u0447\u043a\u0430'), (b'F', '\u0421\u0432\u043e\u0431\u043e\u0434\u043d\u044b\u0439 \u043f\u043b\u0430\u0442\u0435\u0436'), (b'S', '\u0423\u0441\u043b\u0443\u0433\u0430')], default=b'S', max_length=1, verbose_name='\u0422\u0438\u043f \u043f\u043b\u0430\u0442\u0435\u0436\u0430'), - ), - migrations.AddField( - model_name='bill', - name='gift', - field=models.BooleanField(default=False, verbose_name='\u041f\u043e\u0434\u0430\u0440\u043e\u043a'), - ), - migrations.AddField( - model_name='bill', - name='price', - field=models.CharField(default=0, max_length=255, verbose_name='\u0421\u0443\u043c\u043c\u0430'), - ), - migrations.AddField( - model_name='price', - name='freepay', - field=models.BooleanField(default=False, editable=False, verbose_name='\u0421\u0432\u043e\u0431\u043e\u0434\u043d\u044b\u0439 \u0441\u0447\u0435\u0442'), - ), - migrations.AlterField( - model_name='price', - name='course', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='courses.Course', verbose_name='\u041a\u0443\u0440\u0441'), - ), - migrations.AlterField( - model_name='price', - name='title', - field=models.CharField(help_text='\u0411\u0443\u0434\u0435\u0442 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c', max_length=255, verbose_name='\u0423\u0441\u043b\u0443\u0433\u0430'), - ), - migrations.DeleteModel( - name='SelfBillDesign', - ), - migrations.DeleteModel( - name='SelfBillHistory', - ), - migrations.DeleteModel( - name='SelfBillRequest', - ), - migrations.AddField( - model_name='installment', - name='initiative', - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='finance.Price', verbose_name='\u0418\u043d\u0438\u0430\u0446\u0438\u0430\u0442\u0438\u0432\u0430'), - ), - migrations.AddField( - model_name='installment', - name='payments', - field=models.ManyToManyField(blank=True, null=True, related_name='bill_point', to='finance.Bill', verbose_name='\u041f\u043b\u0430\u0442\u0435\u0436\u0438'), - ), - migrations.AddField( - model_name='installment', - name='user', - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c'), - ), - migrations.AddField( - model_name='bill', - name='installment', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='installment_point', to='finance.Installment', verbose_name='\u0420\u0430\u0441\u0441\u0440\u043e\u0447\u043a\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-05-31 12:56 +from __future__ import unicode_literals + +import datetime +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('finance', '0017_remove_price_flex'), + ] + + operations = [ + migrations.CreateModel( + name='Installment', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('price', models.IntegerField(verbose_name='\u041e\u0431\u0449\u0430\u044f \u0446\u0435\u043d\u0430')), + ('first_price', models.IntegerField(default=0, verbose_name='\u041f\u0435\u0440\u0432\u044b\u0439 \u043f\u043b\u0430\u0442\u0435\u0436')), + ('period', models.IntegerField(default=5, verbose_name='\u041c\u0435\u0441\u044f\u0446\u0435\u0432 \u043d\u0430 \u043e\u043f\u043b\u0430\u0442\u0443')), + ('date', models.DateTimeField(default=datetime.datetime.now, editable=False, verbose_name='\u0414\u0430\u0442\u0430 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f')), + ('f_date', models.DateField(blank=True, verbose_name='\u0414\u0430\u0442\u0430 \u0437\u0430\u043a\u0440\u044b\u0442\u0438\u044f')), + ('rest', models.IntegerField(default=0, verbose_name='\u041e\u0441\u0442\u0430\u0442\u043e\u043a \u043f\u043e \u0437\u0430\u0434\u043e\u043b\u0436\u043d\u043e\u0441\u0442\u0438')), + ('wait', models.IntegerField(default=0, help_text='\u0427\u0435\u0440\u0435\u0437 \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0434\u043d\u0435\u0439 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u0440\u043e\u0447\u043a\u0438', verbose_name='\u0414\u043d\u0435\u0439 \u0432 \u0437\u0430\u0434\u043e\u043b\u0436\u043d\u043e\u0441\u0442\u0438')), + ('expired', models.BooleanField(default=False, verbose_name='\u041f\u0440\u043e\u0441\u0440\u043e\u0447\u0435\u043d\u043e')), + ], + options={ + 'verbose_name': '\u0420\u0430\u0441\u0441\u0440\u043e\u0447\u043a\u0430', + 'verbose_name_plural': '\u0420\u0430\u0441\u0441\u0440\u043e\u0447\u043a\u0438', + }, + ), + migrations.RemoveField( + model_name='selfbilldesign', + name='users', + ), + migrations.RemoveField( + model_name='selfbillhistory', + name='request', + ), + migrations.RemoveField( + model_name='selfbillrequest', + name='design', + ), + migrations.AlterModelOptions( + name='price', + options={'ordering': ['-id'], 'verbose_name': '\u0423\u0441\u043b\u0443\u0433\u0430', 'verbose_name_plural': '\u0423\u0441\u043b\u0443\u0433\u0438'}, + ), + migrations.AddField( + model_name='bill', + name='_method', + field=models.CharField(choices=[(b'H', '\u0412 \u0420\u0443\u0447\u043d\u0443\u044e'), (b'S', 'SimplePay'), (b'A1', '\u0410\u043b\u044c\u0444\u0430\u0411\u0430\u043d\u043a'), (b'A2', '\u0410\u043b\u044c\u0431\u0430\u0411\u0430\u043d\u043a c \u043f\u0440\u0435\u0434\u043e\u043f\u043b\u0430\u0442\u043e\u0439')], default=b'H', max_length=2, verbose_name='\u0421\u043f\u043e\u0441\u043e\u0431 \u043e\u043f\u043b\u0430\u0442\u044b'), + ), + migrations.AddField( + model_name='bill', + name='_type', + field=models.CharField(choices=[(b'I', '\u0420\u0430\u0441\u0441\u0440\u043e\u0447\u043a\u0430'), (b'F', '\u0421\u0432\u043e\u0431\u043e\u0434\u043d\u044b\u0439 \u043f\u043b\u0430\u0442\u0435\u0436'), (b'S', '\u0423\u0441\u043b\u0443\u0433\u0430')], default=b'S', max_length=1, verbose_name='\u0422\u0438\u043f \u043f\u043b\u0430\u0442\u0435\u0436\u0430'), + ), + migrations.AddField( + model_name='bill', + name='gift', + field=models.BooleanField(default=False, verbose_name='\u041f\u043e\u0434\u0430\u0440\u043e\u043a'), + ), + migrations.AddField( + model_name='bill', + name='price', + field=models.CharField(default=0, max_length=255, verbose_name='\u0421\u0443\u043c\u043c\u0430'), + ), + migrations.AddField( + model_name='price', + name='freepay', + field=models.BooleanField(default=False, editable=False, verbose_name='\u0421\u0432\u043e\u0431\u043e\u0434\u043d\u044b\u0439 \u0441\u0447\u0435\u0442'), + ), + migrations.AlterField( + model_name='price', + name='course', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='courses.Course', verbose_name='\u041a\u0443\u0440\u0441'), + ), + migrations.AlterField( + model_name='price', + name='title', + field=models.CharField(help_text='\u0411\u0443\u0434\u0435\u0442 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c', max_length=255, verbose_name='\u0423\u0441\u043b\u0443\u0433\u0430'), + ), + migrations.DeleteModel( + name='SelfBillDesign', + ), + migrations.DeleteModel( + name='SelfBillHistory', + ), + migrations.DeleteModel( + name='SelfBillRequest', + ), + migrations.AddField( + model_name='installment', + name='initiative', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='finance.Price', verbose_name='\u0418\u043d\u0438\u0430\u0446\u0438\u0430\u0442\u0438\u0432\u0430'), + ), + migrations.AddField( + model_name='installment', + name='payments', + field=models.ManyToManyField(blank=True, null=True, related_name='bill_point', to='finance.Bill', verbose_name='\u041f\u043b\u0430\u0442\u0435\u0436\u0438'), + ), + migrations.AddField( + model_name='installment', + name='user', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c'), + ), + migrations.AddField( + model_name='bill', + name='installment', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='installment_point', to='finance.Installment', verbose_name='\u0420\u0430\u0441\u0441\u0440\u043e\u0447\u043a\u0430'), + ), + ] diff --git a/finance/migrations/0019_price_url.py b/finance/migrations/0019_price_url.py old mode 100644 new mode 100755 index 6d1790b..0ba5e2f --- a/finance/migrations/0019_price_url.py +++ b/finance/migrations/0019_price_url.py @@ -1,20 +1,20 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-05-31 13:00 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('finance', '0018_auto_20160531_1256'), - ] - - operations = [ - migrations.AddField( - model_name='price', - name='url', - field=models.URLField(blank=True, null=True, verbose_name='\u0421\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u043f\u043b\u0430\u0442\u0443'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-05-31 13:00 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('finance', '0018_auto_20160531_1256'), + ] + + operations = [ + migrations.AddField( + model_name='price', + name='url', + field=models.URLField(blank=True, null=True, verbose_name='\u0421\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u043f\u043b\u0430\u0442\u0443'), + ), + ] diff --git a/finance/migrations/0020_auto_20160531_1303.py b/finance/migrations/0020_auto_20160531_1303.py old mode 100644 new mode 100755 index 18199f4..9d0843c --- a/finance/migrations/0020_auto_20160531_1303.py +++ b/finance/migrations/0020_auto_20160531_1303.py @@ -1,20 +1,20 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-05-31 13:03 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('finance', '0019_price_url'), - ] - - operations = [ - migrations.AlterField( - model_name='price', - name='url', - field=models.URLField(blank=True, editable=False, null=True, verbose_name='\u0421\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u043f\u043b\u0430\u0442\u0443'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-05-31 13:03 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('finance', '0019_price_url'), + ] + + operations = [ + migrations.AlterField( + model_name='price', + name='url', + field=models.URLField(blank=True, editable=False, null=True, verbose_name='\u0421\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u043f\u043b\u0430\u0442\u0443'), + ), + ] diff --git a/finance/migrations/0021_auto_20160601_1309.py b/finance/migrations/0021_auto_20160601_1309.py old mode 100644 new mode 100755 index 3d13ecd..980cd27 --- a/finance/migrations/0021_auto_20160601_1309.py +++ b/finance/migrations/0021_auto_20160601_1309.py @@ -1,34 +1,34 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-06-01 13:09 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('finance', '0020_auto_20160531_1303'), - ] - - operations = [ - migrations.RemoveField( - model_name='bill', - name='key', - ), - migrations.AddField( - model_name='bill', - name='pay_key', - field=models.CharField(blank=True, default=b'', max_length=255, verbose_name='\u041a\u043b\u044e\u0447 \u043f\u043b\u0430\u0442\u0435\u0436\u0430'), - ), - migrations.AddField( - model_name='bill', - name='result_key', - field=models.CharField(blank=True, default=b'', max_length=255, verbose_name='\u041a\u043b\u044e\u0447 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430'), - ), - migrations.AddField( - model_name='bill', - name='success_key', - field=models.CharField(blank=True, default=b'', max_length=255, verbose_name='\u041a\u043b\u044e\u0447 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-01 13:09 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('finance', '0020_auto_20160531_1303'), + ] + + operations = [ + migrations.RemoveField( + model_name='bill', + name='key', + ), + migrations.AddField( + model_name='bill', + name='pay_key', + field=models.CharField(blank=True, default=b'', max_length=255, verbose_name='\u041a\u043b\u044e\u0447 \u043f\u043b\u0430\u0442\u0435\u0436\u0430'), + ), + migrations.AddField( + model_name='bill', + name='result_key', + field=models.CharField(blank=True, default=b'', max_length=255, verbose_name='\u041a\u043b\u044e\u0447 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430'), + ), + migrations.AddField( + model_name='bill', + name='success_key', + field=models.CharField(blank=True, default=b'', max_length=255, verbose_name='\u041a\u043b\u044e\u0447 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f'), + ), + ] diff --git a/finance/migrations/0022_auto_20160601_1320.py b/finance/migrations/0022_auto_20160601_1320.py old mode 100644 new mode 100755 index f7ad42e..287e110 --- a/finance/migrations/0022_auto_20160601_1320.py +++ b/finance/migrations/0022_auto_20160601_1320.py @@ -1,28 +1,28 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-06-01 13:20 -from __future__ import unicode_literals - -from django.db import migrations - - -class Migration(migrations.Migration): - - dependencies = [ - ('finance', '0021_auto_20160601_1309'), - ] - - operations = [ - migrations.RenameField( - model_name='bill', - old_name='pay_key', - new_name='key', - ), - migrations.RemoveField( - model_name='bill', - name='result_key', - ), - migrations.RemoveField( - model_name='bill', - name='success_key', - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-01 13:20 +from __future__ import unicode_literals + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('finance', '0021_auto_20160601_1309'), + ] + + operations = [ + migrations.RenameField( + model_name='bill', + old_name='pay_key', + new_name='key', + ), + migrations.RemoveField( + model_name='bill', + name='result_key', + ), + migrations.RemoveField( + model_name='bill', + name='success_key', + ), + ] diff --git a/finance/migrations/0023_bill_source_key.py b/finance/migrations/0023_bill_source_key.py old mode 100644 new mode 100755 index 7f9675c..dc1d5c4 --- a/finance/migrations/0023_bill_source_key.py +++ b/finance/migrations/0023_bill_source_key.py @@ -1,20 +1,20 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-06-01 16:30 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('finance', '0022_auto_20160601_1320'), - ] - - operations = [ - migrations.AddField( - model_name='bill', - name='source_key', - field=models.CharField(blank=True, default=b'', max_length=255, verbose_name='\u0418\u0441\u0445\u043e\u0434\u043d\u0438\u043a \u043a\u043b\u044e\u0447\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-01 16:30 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('finance', '0022_auto_20160601_1320'), + ] + + operations = [ + migrations.AddField( + model_name='bill', + name='source_key', + field=models.CharField(blank=True, default=b'', max_length=255, verbose_name='\u0418\u0441\u0445\u043e\u0434\u043d\u0438\u043a \u043a\u043b\u044e\u0447\u0430'), + ), + ] diff --git a/finance/migrations/0024_auto_20160607_2002.py b/finance/migrations/0024_auto_20160607_2002.py old mode 100644 new mode 100755 index fbc18f4..7680bee --- a/finance/migrations/0024_auto_20160607_2002.py +++ b/finance/migrations/0024_auto_20160607_2002.py @@ -1,35 +1,35 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-06-07 20:02 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('finance', '0023_bill_source_key'), - ] - - operations = [ - migrations.AddField( - model_name='bill', - name='fire_date', - field=models.DateTimeField(blank=True, null=True, verbose_name='\u0414\u0430\u0442\u0430 \u0441\u0433\u043e\u0440\u0430\u043d\u0438\u044f'), - ), - migrations.AddField( - model_name='bill', - name='views', - field=models.IntegerField(default=0, help_text='\u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u043e\u043a\u0430\u0437\u0430 \u043d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u043d\u0438\u0439', verbose_name='\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u043d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u043d\u0438\u0435'), - ), - migrations.AlterField( - model_name='bill', - name='_type', - field=models.CharField(choices=[(b'I', '\u0420\u0430\u0441\u0441\u0440\u043e\u0447\u043a\u0430'), (b'F', '\u0421\u0432\u043e\u0431\u043e\u0434\u043d\u044b\u0439 \u043f\u043b\u0430\u0442\u0435\u0436'), (b'S', '\u0423\u0441\u043b\u0443\u0433\u0430'), (b'P', '\u0421\u0447\u0435\u0442 \u043d\u0430 \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u0438')], default=b'S', max_length=1, verbose_name='\u0422\u0438\u043f \u043f\u043b\u0430\u0442\u0435\u0436\u0430'), - ), - migrations.AlterField( - model_name='bill', - name='status', - field=models.CharField(choices=[(b'W', '\u041e\u0436\u0438\u0434\u0430\u043d\u0438\u0435 \u0441\u043e\u0433\u043b\u0430\u0441\u0438\u044f'), (b'P', '\u041d\u0430 \u043e\u043f\u043b\u0430\u0442\u0435'), (b'F', '\u041e\u043f\u043b\u0430\u0447\u0435\u043d'), (b'C', '\u041e\u0442\u043a\u043b\u043e\u043d\u0435\u043d'), (b'H', '\u0421\u0442\u0443\u0445')], default=b'W', max_length=1, verbose_name='\u0421\u0442\u0430\u0442\u0443\u0441'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-07 20:02 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('finance', '0023_bill_source_key'), + ] + + operations = [ + migrations.AddField( + model_name='bill', + name='fire_date', + field=models.DateTimeField(blank=True, null=True, verbose_name='\u0414\u0430\u0442\u0430 \u0441\u0433\u043e\u0440\u0430\u043d\u0438\u044f'), + ), + migrations.AddField( + model_name='bill', + name='views', + field=models.IntegerField(default=0, help_text='\u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u043e\u043a\u0430\u0437\u0430 \u043d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u043d\u0438\u0439', verbose_name='\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u043d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u043d\u0438\u0435'), + ), + migrations.AlterField( + model_name='bill', + name='_type', + field=models.CharField(choices=[(b'I', '\u0420\u0430\u0441\u0441\u0440\u043e\u0447\u043a\u0430'), (b'F', '\u0421\u0432\u043e\u0431\u043e\u0434\u043d\u044b\u0439 \u043f\u043b\u0430\u0442\u0435\u0436'), (b'S', '\u0423\u0441\u043b\u0443\u0433\u0430'), (b'P', '\u0421\u0447\u0435\u0442 \u043d\u0430 \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u0438')], default=b'S', max_length=1, verbose_name='\u0422\u0438\u043f \u043f\u043b\u0430\u0442\u0435\u0436\u0430'), + ), + migrations.AlterField( + model_name='bill', + name='status', + field=models.CharField(choices=[(b'W', '\u041e\u0436\u0438\u0434\u0430\u043d\u0438\u0435 \u0441\u043e\u0433\u043b\u0430\u0441\u0438\u044f'), (b'P', '\u041d\u0430 \u043e\u043f\u043b\u0430\u0442\u0435'), (b'F', '\u041e\u043f\u043b\u0430\u0447\u0435\u043d'), (b'C', '\u041e\u0442\u043a\u043b\u043e\u043d\u0435\u043d'), (b'H', '\u0421\u0442\u0443\u0445')], default=b'W', max_length=1, verbose_name='\u0421\u0442\u0430\u0442\u0443\u0441'), + ), + ] diff --git a/finance/migrations/0025_auto_20160607_2034.py b/finance/migrations/0025_auto_20160607_2034.py old mode 100644 new mode 100755 index 5d20f6c..f55c9a0 --- a/finance/migrations/0025_auto_20160607_2034.py +++ b/finance/migrations/0025_auto_20160607_2034.py @@ -1,30 +1,30 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-06-07 20:34 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('finance', '0024_auto_20160607_2002'), - ] - - operations = [ - migrations.AddField( - model_name='price', - name='post_fire', - field=models.IntegerField(default=0, help_text='\u041f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0438 50% \u0441\u043a\u0438\u043d\u0434\u043a\u0438 \u043d\u0430 X \u0434\u043d\u0435\u0439. \u0421\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u0438 \u043d\u0430\u043b\u0438\u0447\u0438\u0438 "\u0434\u043d\u0435\u0439 \u0434\u043e\u0441\u0442\u0443\u043f\u0430"', verbose_name='\u0414\u043d\u0435\u0439 \u0441\u0433\u043e\u0440\u0430\u043d\u0438\u044f'), - ), - migrations.AlterField( - model_name='bill', - name='status', - field=models.CharField(choices=[(b'W', '\u041e\u0436\u0438\u0434\u0430\u043d\u0438\u0435 \u0441\u043e\u0433\u043b\u0430\u0441\u0438\u044f'), (b'P', '\u041d\u0430 \u043e\u043f\u043b\u0430\u0442\u0435'), (b'F', '\u041e\u043f\u043b\u0430\u0447\u0435\u043d'), (b'C', '\u041e\u0442\u043a\u043b\u043e\u043d\u0435\u043d'), (b'H', '\u0421\u0433\u043e\u0440\u0435\u043b')], default=b'W', max_length=1, verbose_name='\u0421\u0442\u0430\u0442\u0443\u0441'), - ), - migrations.AlterField( - model_name='bill', - name='views', - field=models.IntegerField(blank=True, default=0, help_text='\u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u043e\u043a\u0430\u0437\u043e\u0432 \u043d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u043d\u0438\u044f', verbose_name='\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u043d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u043d\u0438\u0435'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-07 20:34 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('finance', '0024_auto_20160607_2002'), + ] + + operations = [ + migrations.AddField( + model_name='price', + name='post_fire', + field=models.IntegerField(default=0, help_text='\u041f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0438 50% \u0441\u043a\u0438\u043d\u0434\u043a\u0438 \u043d\u0430 X \u0434\u043d\u0435\u0439. \u0421\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u0438 \u043d\u0430\u043b\u0438\u0447\u0438\u0438 "\u0434\u043d\u0435\u0439 \u0434\u043e\u0441\u0442\u0443\u043f\u0430"', verbose_name='\u0414\u043d\u0435\u0439 \u0441\u0433\u043e\u0440\u0430\u043d\u0438\u044f'), + ), + migrations.AlterField( + model_name='bill', + name='status', + field=models.CharField(choices=[(b'W', '\u041e\u0436\u0438\u0434\u0430\u043d\u0438\u0435 \u0441\u043e\u0433\u043b\u0430\u0441\u0438\u044f'), (b'P', '\u041d\u0430 \u043e\u043f\u043b\u0430\u0442\u0435'), (b'F', '\u041e\u043f\u043b\u0430\u0447\u0435\u043d'), (b'C', '\u041e\u0442\u043a\u043b\u043e\u043d\u0435\u043d'), (b'H', '\u0421\u0433\u043e\u0440\u0435\u043b')], default=b'W', max_length=1, verbose_name='\u0421\u0442\u0430\u0442\u0443\u0441'), + ), + migrations.AlterField( + model_name='bill', + name='views', + field=models.IntegerField(blank=True, default=0, help_text='\u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u043e\u043a\u0430\u0437\u043e\u0432 \u043d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u043d\u0438\u044f', verbose_name='\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u043d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u043d\u0438\u0435'), + ), + ] diff --git a/finance/migrations/0026_servicerequest__type.py b/finance/migrations/0026_servicerequest__type.py old mode 100644 new mode 100755 index e534326..7623968 --- a/finance/migrations/0026_servicerequest__type.py +++ b/finance/migrations/0026_servicerequest__type.py @@ -1,20 +1,20 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-06-07 20:51 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('finance', '0025_auto_20160607_2034'), - ] - - operations = [ - migrations.AddField( - model_name='servicerequest', - name='_type', - field=models.CharField(choices=[(b'S', b'\xd0\x9e\xd1\x80\xd0\xb3\xd0\xb0\xd0\xbd\xd0\xb8\xd1\x87\xd0\xbd\xd0\xbe'), (b'B', b'\xd0\x9f\xd1\x80\xd0\xb8\xd0\xb2\xd0\xbb\xd0\xb5\xd1\x87\xd0\xb5\xd0\xbd')], default=b'S', max_length=1, verbose_name='\u0422\u0438\u043f \u0437\u0430\u043f\u0440\u043e\u0441\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-07 20:51 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('finance', '0025_auto_20160607_2034'), + ] + + operations = [ + migrations.AddField( + model_name='servicerequest', + name='_type', + field=models.CharField(choices=[(b'S', b'\xd0\x9e\xd1\x80\xd0\xb3\xd0\xb0\xd0\xbd\xd0\xb8\xd1\x87\xd0\xbd\xd0\xbe'), (b'B', b'\xd0\x9f\xd1\x80\xd0\xb8\xd0\xb2\xd0\xbb\xd0\xb5\xd1\x87\xd0\xb5\xd0\xbd')], default=b'S', max_length=1, verbose_name='\u0422\u0438\u043f \u0437\u0430\u043f\u0440\u043e\u0441\u0430'), + ), + ] diff --git a/finance/migrations/0027_price_modals.py b/finance/migrations/0027_price_modals.py old mode 100644 new mode 100755 index d661b31..831047a --- a/finance/migrations/0027_price_modals.py +++ b/finance/migrations/0027_price_modals.py @@ -1,21 +1,21 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-06-09 23:51 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('management', '0039_auto_20160609_2351'), - ('finance', '0026_servicerequest__type'), - ] - - operations = [ - migrations.AddField( - model_name='price', - name='modals', - field=models.ManyToManyField(blank=True, null=True, to='management.Modals', verbose_name='\u041c\u043e\u0434\u0430\u043b\u044c\u043d\u044b\u0435 \u043e\u043a\u043d\u0430 \u043f\u0440\u0438 \u0437\u0430\u043a\u0440\u044b\u0442\u0438\u0438'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-09 23:51 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('management', '0039_auto_20160609_2351'), + ('finance', '0026_servicerequest__type'), + ] + + operations = [ + migrations.AddField( + model_name='price', + name='modals', + field=models.ManyToManyField(blank=True, null=True, to='management.Modals', verbose_name='\u041c\u043e\u0434\u0430\u043b\u044c\u043d\u044b\u0435 \u043e\u043a\u043d\u0430 \u043f\u0440\u0438 \u0437\u0430\u043a\u0440\u044b\u0442\u0438\u0438'), + ), + ] diff --git a/finance/migrations/0028_auto_20160610_0003.py b/finance/migrations/0028_auto_20160610_0003.py old mode 100644 new mode 100755 index e4de24e..5dcc8a5 --- a/finance/migrations/0028_auto_20160610_0003.py +++ b/finance/migrations/0028_auto_20160610_0003.py @@ -1,30 +1,30 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-06-10 00:03 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('finance', '0027_price_modals'), - ] - - operations = [ - migrations.AddField( - model_name='bill', - name='fire_date_sent', - field=models.BooleanField(default=False, verbose_name='\u041f\u0438\u0441\u044c\u043c\u043e \u0441\u0433\u043e\u0440\u0430\u043d\u0438\u044f'), - ), - migrations.AddField( - model_name='bill', - name='start_fire', - field=models.DateTimeField(blank=True, null=True, verbose_name='\u0414\u0430\u0442\u0430 \u043d\u0430\u0447\u0430\u043b\u0430 \u0441\u0433\u043e\u0440\u0430\u043d\u0438\u044f'), - ), - migrations.AddField( - model_name='bill', - name='start_fire_sent', - field=models.BooleanField(default=False, verbose_name='\u041f\u0438\u0441\u044c\u043c\u043e \u0441\u0433\u043e\u0440\u0430\u043d\u0438\u044f'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-10 00:03 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('finance', '0027_price_modals'), + ] + + operations = [ + migrations.AddField( + model_name='bill', + name='fire_date_sent', + field=models.BooleanField(default=False, verbose_name='\u041f\u0438\u0441\u044c\u043c\u043e \u0441\u0433\u043e\u0440\u0430\u043d\u0438\u044f'), + ), + migrations.AddField( + model_name='bill', + name='start_fire', + field=models.DateTimeField(blank=True, null=True, verbose_name='\u0414\u0430\u0442\u0430 \u043d\u0430\u0447\u0430\u043b\u0430 \u0441\u0433\u043e\u0440\u0430\u043d\u0438\u044f'), + ), + migrations.AddField( + model_name='bill', + name='start_fire_sent', + field=models.BooleanField(default=False, verbose_name='\u041f\u0438\u0441\u044c\u043c\u043e \u0441\u0433\u043e\u0440\u0430\u043d\u0438\u044f'), + ), + ] diff --git a/finance/migrations/0029_bill_modals_show.py b/finance/migrations/0029_bill_modals_show.py old mode 100644 new mode 100755 index 8e6f4dd..79a8383 --- a/finance/migrations/0029_bill_modals_show.py +++ b/finance/migrations/0029_bill_modals_show.py @@ -1,20 +1,20 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-06-10 12:51 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('finance', '0028_auto_20160610_0003'), - ] - - operations = [ - migrations.AddField( - model_name='bill', - name='modals_show', - field=models.BooleanField(default=False, verbose_name='\u041c\u043e\u0434\u0430\u043b\u043a\u0438 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u044b'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-10 12:51 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('finance', '0028_auto_20160610_0003'), + ] + + operations = [ + migrations.AddField( + model_name='bill', + name='modals_show', + field=models.BooleanField(default=False, verbose_name='\u041c\u043e\u0434\u0430\u043b\u043a\u0438 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u044b'), + ), + ] diff --git a/finance/migrations/0030_bill_admitad_uid.py b/finance/migrations/0030_bill_admitad_uid.py old mode 100644 new mode 100755 index 4914efa..4cf5366 --- a/finance/migrations/0030_bill_admitad_uid.py +++ b/finance/migrations/0030_bill_admitad_uid.py @@ -1,20 +1,20 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-07-26 19:01 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('finance', '0029_bill_modals_show'), - ] - - operations = [ - migrations.AddField( - model_name='bill', - name='admitad_uid', - field=models.CharField(blank=True, default=b'', max_length=100, verbose_name='\u041a\u043b\u044e\u0447\u044c admitad'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-07-26 19:01 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('finance', '0029_bill_modals_show'), + ] + + operations = [ + migrations.AddField( + model_name='bill', + name='admitad_uid', + field=models.CharField(blank=True, default=b'', max_length=100, verbose_name='\u041a\u043b\u044e\u0447\u044c admitad'), + ), + ] diff --git a/finance/migrations/0031_auto_20160727_1453.py b/finance/migrations/0031_auto_20160727_1453.py old mode 100644 new mode 100755 index 4a73678..90c588a --- a/finance/migrations/0031_auto_20160727_1453.py +++ b/finance/migrations/0031_auto_20160727_1453.py @@ -1,20 +1,20 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-07-27 14:53 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('finance', '0030_bill_admitad_uid'), - ] - - operations = [ - migrations.AlterField( - model_name='bill', - name='price', - field=models.CharField(max_length=255, verbose_name='\u0421\u0443\u043c\u043c\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-07-27 14:53 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('finance', '0030_bill_admitad_uid'), + ] + + operations = [ + migrations.AlterField( + model_name='bill', + name='price', + field=models.CharField(max_length=255, verbose_name='\u0421\u0443\u043c\u043c\u0430'), + ), + ] diff --git a/finance/migrations/__init__.py b/finance/migrations/__init__.py old mode 100644 new mode 100755 diff --git a/finance/models.py b/finance/models.py old mode 100644 new mode 100755 diff --git a/finance/pay.py b/finance/pay.py old mode 100644 new mode 100755 diff --git a/finance/tasks.py b/finance/tasks.py old mode 100644 new mode 100755 index febb53d..b331b34 --- a/finance/tasks.py +++ b/finance/tasks.py @@ -1,37 +1,37 @@ -# coding=utf-8 -from celery.task import periodic_task -from datetime import timedelta, datetime -from finance.models import Price, Bill, ServiceRequest -from courses.models import CourseMap - - -@periodic_task(run_every=timedelta(minutes=1)) -def price_map_migrator(): - for price in Price.objects.filter(included=None).exclude(course=None): - if not price.included.exists(): - inc_type = [] - - if price.m_type == 'B': - inc_type = ['B'] - elif price.m_type == 'E': - inc_type = ['B', 'E'] - elif price.m_type == 'P': - inc_type = ['B', 'E', 'P'] - for m in CourseMap.objects.filter(course=price.course): - if m.get_obj().theme.price_type in inc_type: - price.included.add(m) - - -@periodic_task(run_every=timedelta(hours=1)) -def price_map_migrator(): - for price in Price.objects.exclude(by_time=None): - for bill in Bill.objects.filter(service=price, fire_date__lt=datetime.now()): - bill.status = 'H' - bill.save() - - -@periodic_task(run_every=timedelta(minutes=1)) -def sent_service_request_to_amo(): - sr = ServiceRequest.objects.filter(send=False, send_date__lt=datetime.now()).exclude(name='TEST').first() - if sr: - sr.sent_to_amo() +# coding=utf-8 +from celery.task import periodic_task +from datetime import timedelta, datetime +from finance.models import Price, Bill, ServiceRequest +from courses.models import CourseMap + + +@periodic_task(run_every=timedelta(minutes=1)) +def price_map_migrator(): + for price in Price.objects.filter(included=None).exclude(course=None): + if not price.included.exists(): + inc_type = [] + + if price.m_type == 'B': + inc_type = ['B'] + elif price.m_type == 'E': + inc_type = ['B', 'E'] + elif price.m_type == 'P': + inc_type = ['B', 'E', 'P'] + for m in CourseMap.objects.filter(course=price.course): + if m.get_obj().theme.price_type in inc_type: + price.included.add(m) + + +@periodic_task(run_every=timedelta(hours=1)) +def price_map_migrator(): + for price in Price.objects.exclude(by_time=None): + for bill in Bill.objects.filter(service=price, fire_date__lt=datetime.now()): + bill.status = 'H' + bill.save() + + +@periodic_task(run_every=timedelta(minutes=1)) +def sent_service_request_to_amo(): + sr = ServiceRequest.objects.filter(send=False, send_date__lt=datetime.now()).exclude(name='TEST').first() + if sr: + sr.sent_to_amo() diff --git a/finance/tools.py b/finance/tools.py old mode 100644 new mode 100755 index a43ac78..ddf2f25 --- a/finance/tools.py +++ b/finance/tools.py @@ -1,58 +1,58 @@ -# coding=utf-8 -from django.db.models import Q -import datetime -from finance.models import Bill, Price -from courses.models import CourseMap - - -def system_check_bill(token, user, theme_type='B'): - if user.is_admin: - return True - - # Проверка счета, как подписки - __point = CourseMap.objects.get(token=token) - course = __point.course - if user in course.teachers.all(): - return True - - prices = Price.objects.filter(included=__point).values_list('id', flat=True) - for b in Bill.objects.filter(service__id__in=prices, user=user, status='F'): - if b: - if b.service.by_time: - if b.finish_date + datetime.timedelta(days=b.service.by_time) > datetime.datetime.now(): - return True - else: - return False - else: - return True - - m_type = [] - if theme_type == 'B' or theme_type == 'M': - m_type = ['B', 'E', 'P'] - - elif theme_type == 'E': - m_type = ['E', 'P'] - - elif theme_type == 'P': - m_type = ['P'] - - if m_type: - bill = Bill.objects.filter(service__included=None, service__course=course, user=user, status='F', service__m_type__in=m_type) - if bill.exists(): - check = [] - for b in bill: - if b.service.by_time: - check.append(b) - if not check: - return True - - else: - result = False - for b in check: - if b.finish_date + datetime.timedelta(days=b.service.by_time) > datetime.datetime.now(): - result = True - if result: - return True - else: - return False - return False +# coding=utf-8 +from django.db.models import Q +import datetime +from finance.models import Bill, Price +from courses.models import CourseMap + + +def system_check_bill(token, user, theme_type='B'): + if user.is_admin: + return True + + # Проверка счета, как подписки + __point = CourseMap.objects.get(token=token) + course = __point.course + if user in course.teachers.all(): + return True + + prices = Price.objects.filter(included=__point).values_list('id', flat=True) + for b in Bill.objects.filter(service__id__in=prices, user=user, status='F'): + if b: + if b.service.by_time: + if b.finish_date + datetime.timedelta(days=b.service.by_time) > datetime.datetime.now(): + return True + else: + return False + else: + return True + + m_type = [] + if theme_type == 'B' or theme_type == 'M': + m_type = ['B', 'E', 'P'] + + elif theme_type == 'E': + m_type = ['E', 'P'] + + elif theme_type == 'P': + m_type = ['P'] + + if m_type: + bill = Bill.objects.filter(service__included=None, service__course=course, user=user, status='F', service__m_type__in=m_type) + if bill.exists(): + check = [] + for b in bill: + if b.service.by_time: + check.append(b) + if not check: + return True + + else: + result = False + for b in check: + if b.finish_date + datetime.timedelta(days=b.service.by_time) > datetime.datetime.now(): + result = True + if result: + return True + else: + return False + return False diff --git a/finance/urls.py b/finance/urls.py old mode 100644 new mode 100755 diff --git a/finance/views.py b/finance/views.py old mode 100644 new mode 100755 index d9a3c53..9885df6 --- a/finance/views.py +++ b/finance/views.py @@ -1,36 +1,36 @@ -# coding=utf-8 -from django.http import Http404 -from lms.decors import response_decor -from courses.models import Course -from finance.models import Price, Bill - - -@response_decor(template='traffic_map.html') -def traffic_map(request, course): - # Страница цен - _course = Course.objects.get(id=course) - return {'course': _course.title, 'traffic': Price.objects.filter(course=_course)} - - -@response_decor(template='selfbill.html', without_auth=True) -def self_bill(request, key): - # Страница формирования собственного счета - try: - req = Price.objects.get(key=key) - except Price.DoesNotExist: - raise Http404 - else: - return {'sum': req.cost, 'name': req.get_name(), 'key': key} - - -@response_decor(template='bill_out.html', without_auth=True) -def bill_out(request, salt): - try: - bill = Bill.objects.get(salt=salt) - except Bill.DoesNotExist: - raise Http404 - else: - if bill.status == 'W': - bill.status = 'P' - bill.save() - return {'data': bill.gen_yandex_data(), 'price': bill.price} +# coding=utf-8 +from django.http import Http404 +from lms.decors import response_decor +from courses.models import Course +from finance.models import Price, Bill + + +@response_decor(template='traffic_map.html') +def traffic_map(request, course): + # Страница цен + _course = Course.objects.get(id=course) + return {'course': _course.title, 'traffic': Price.objects.filter(course=_course)} + + +@response_decor(template='selfbill.html', without_auth=True) +def self_bill(request, key): + # Страница формирования собственного счета + try: + req = Price.objects.get(key=key) + except Price.DoesNotExist: + raise Http404 + else: + return {'sum': req.cost, 'name': req.get_name(), 'key': key} + + +@response_decor(template='bill_out.html', without_auth=True) +def bill_out(request, salt): + try: + bill = Bill.objects.get(salt=salt) + except Bill.DoesNotExist: + raise Http404 + else: + if bill.status == 'W': + bill.status = 'P' + bill.save() + return {'data': bill.gen_yandex_data(), 'price': bill.price} diff --git a/java_students b/java_students deleted file mode 100644 index 8268e31..0000000 --- a/java_students +++ /dev/null @@ -1,936 +0,0 @@ -mr.olips@mail.ru -vengard1706@mail.ru -asa280@ukr.net -kroko2@yandex.ru -appppppple@gmail.com -yuri.ivanov@ep.ru -pizza148814@gmail.com -sortedmap@gmail.com -rybich@mail.ru -psidy@rambler.ru -igrix@mail.ru -tin22@mail.ru -fly2sky7777@mail.ru -valera.shadrin.1999@mail.ru -anton.anton1204@mail.ru -dr.heart@list.ru -ahs2004@bk.ru -efendim@mail.ru -sespangenberg@gmail.com -khizhnenko.oleg@mail.ru -89501940950@mail.ru -dymov33@ya.ru -su_globus@mail.ru -umka_max@mail.ru -glimmer2009@yandex.ru -iw366931@mail.ru -sergey.p.sliva@gmail.com -gale4ka99@mail.ru -sergteletrade@gmail.com -zwitterlos@mail.ru -chitinski86@gmail.com -levis84@mail.ru -artyomzykov@gmail.com -konovchenko@mail.ru -avenger3df@yandex.ru -romik1985@gmail.com -dalboyop2@yandex.ru -xfter16@gmail.com -a1951kol@gmail.com -79814686875@mail.ru -lavrovii1911@gmail.com -ilyas_kopishev@mail.ru -halin853@mail.ru -danzolka4@gmail.com -aaallleeexxx918@gmail.com -zxc_@bk.ru -den_260181@mail.ru -si-shum@yandex.ru -ramis.salimgaraev@mail.ru -pvlniko@gmail.com -irinfito@mail.ru -vitaliyexplorer7@gmail.com -psacruelty@gmail.com -humanalone@ya.ru -musarubas97@mail.ru -shoarr@gmail.com -yutars@gmail.com -van4o47187@mail.ru -copymi@gmail.com -bataevai@me.com -goshavis@gmail.com -adm.kollag@yandex.ru -nemethis1990@yandex.ru -morov@inbox.ru -nixenx@gmail.com -fat0318@gmail.com -dima.vorobyov2000@gmail.com -vitaliy.a.2015@mail.ru -sholg@mail.ru -sv_urich@mail.ru -zhalgasbayev.k@gmail.com -k-mal-off@mail.ru -ivanov-55@bk.ru -vdmfg@mail.ru -margovera3015@mail.ru -ssas5@mail.ru -1985_dandy@mail.ru -alexandr_n_year@mail.ru -alen-6v-klass@mail.ru -ph.shamsiev@mail.ru -mixalin@mail.ru -nk.knsh@rambler.ru -trollface0504@gmail.com -bajena.tchernyh@yandex.ru -svirepyi@mail.ru -alp1@list.ru -nwpb@mail.ru -l2id0014@gmail.com -shaman-cherenki@ya.ru -akvilonec@gmail.com -eugene483@yandex.ru -kutsko.v.v@yandex.ru -bakeevsa@gmail.com -89091635474@mail.ru -yorv@mail.ru -ibleyev@gmail.com -aleksandroff7@yandex.ru -movao@mail.ru -ann-ruzanov@yandex.ru -viktin11@yandex.ru -shevanov@gmail.com -samarin_andrej@mail.ru -konstanto33@gmail.com -annavic23@gmail.com -dimpolozkov@gmail.com -supana1976@gmail.com -st2969@yandex.ru -zubandor@gmail.com -vitaliy.yurchuk.work@gmail.com -ealoshinsky@gmail.com -netbooks@mail.ru -kardv@yandex.ru -den-549@mail.ru -fan2pr@yandex.ru -danilabelyakoff@yandex.ru -aleks.vik@mail.ru -bubazoid@gmail.com -123qwekir2wl@gmail.com -georgygevorkov@gmail.com -nils1968@gmail.com -xopt88@gmail.com -ksynja95@mail.ru -tamaro4ka90@mail.ru -algamazov@yandex.ru -premium15@ya.ru -tretyakova@live.com -proprofi15@yndex.ru -bean@ogent.net -dmitriy__smirnov@mail.ru -aav-kerry@mail.ru -finik001@gmail.com -daria_andr@outlook.com -istubb@me.com -aliikmail@mail.ru -alexkostrov2012@gmail.com -rsbk73@gmail.com -vtg33@rambler.ru -murzinaa1987@gmail.com -siorasan@yandex.ru -olik-lenatik@yandex.ru -orlenko23@mail.ru -jnss2013ks@gmail.com -ogoak@mail.ru -didense@yandex.ru -no4noioxotnik@gmail.com -79780079086@yandex.ru -ovikdevil@gmail.com -msv1108@gmail.com -oleg.patsey@mail.ru -bd667@mail.ru -naruto378603@mail.ru -geshakh@ya.ru -shemerzi@yahoo.com -alex.zacepin@gmail.com -mg4755@rambler.ru -anidab70@mail.ru -maxim.shukevitch@yandex.ru -andreiod@yahoo.com -yevimo@top1mail.ru -79096300008@mail.ru -steam_moy002@mail.ru -user275301@yandex.ru -zhenya-golikov@yandex.ru -glanass15@mail.ru -velichutin@mail.ru -juneority@mail.ru -shpreh@mail.ru -miht2901@yandex.ru -vasey@yandex.ru -ciberus.ps@gmail.com -d200000@bk.ru -ikolechenkov@mail.ru -instinct975@gmail.com -afilatov75@gmail.com -danil_lahtin@mail.ru -daria.ardasheva@gmail.com -shadrinann8@yandex.ru -pabls@yandex.ru -palik777@gmail.com -turukhinsn@mail.ru -ustinov.kn@mail.ru -ruslan.sabirov.rb@gmail.com -dima_orsk1@mail.ru -volnov_mv@mail.ru -maksim_klenin_99@mail.ru -ars.lipskiy@gmail.com -shaburova89@bk.ru -malkolm063@yandex.ru -daurenanay@gmail.com -well12done@yandex.ru -kaa-work@yandex.ru -korotaeva66@bk.ru -namikadzeikita99@mail.ru -tpoint1@yandex.ru -azazaz.azaza.00@mail.ru -xumuk123@mail.ru -mansur.by@gmail.com -ceasarium@mail.ru -plutonium_150n@mail.ru -t@skillbox.ru -tauequa@yandex.ru -alex@titul-spb.ru -ms.tomskyh@gmail.com -baktybekergabyl@gmail.com -p-evgeniy87@yandex.ru -info@elen-decor.ru -muxaul01@mail.ru -polezin85@gmail.com -progres5@yandex.ru -adv1989@mail.ru -avduckart@gmail.com -uglukfearless@gmail.com -guzar0979@gmail.com -denezhka@mail.ru -ivan@ivanov.ru -mox16@yandex.ru -8118eee@mail.ru -levs01@mail.ru -amitei@mail.ru -marat_mrafikov@mail.ru -sashalpk1c@gmail.com -alexey.ramensky@gmail.com -ivan@mymediagroup.ru -roman@proskurnin.ru -digitex.91@mail.ru -kirillbugajj98@yandex.ru -orthodox.forever@yandex.ru -crazyguyplay@mail.ru -idris77@mail.ru -123qaz27@rambler.ru -specnazdelta62@mail.ru -kirikswork@yandex.ru -xxnikolayxx@gmail.com -nvladislavn@gmail.com -jys.naturoil@yandex.ru -angel_spb1@rambler.ru -aleks_mihalev@list.ru -smekhav@mail.ru -makushatnik@yandex.ru -dragon-off@dragon-off.ru -orlando.76@mail.ru -aleksis.perminov@mail.ru -nikamaliish@mail.ru -novosib_2009@mail.ru -mufrid23@mail.ru -svettlantik@rambler.ru -kudriashov.art@yandex.ru -promenergo.ch@gmail.com -ukhin.ag@gmail.com -v.sht1987@gmail.com -stzv78@mail.ru -doccooper15@gmail.com -vinaris04@mail.ru -pushkinan@yandex.ru -neofit161653@yandex.ru -enemy006@gmail.com -kalliope@list.ru -rakursmedia@gmail.com -drnvoldemar@mail.ru -dmitry.mamonov@gmail.com -ligeros1@yandex.ru -pabls.web@gmail.com -ilya.arkhipov.89@mail.ru -ufakirill@gmail.com -iglatypov2010@yandex.ru -mopslike@mail.ru -vetarak@gmail.com -timurice@mail.ru -dimon_digin@mail.ru -admin@portix.ru -murody@mail.ru -shalberkind@mail.ru -loskutov-sv@mail.ru -zarat73@yandex.ru -alexnif@bk.ru -podliza122@bk.ru -fpa.stu@rambler.ru -aleks2211irk@mail.ru -wow1980@mail.ru -ulndenisovy@mail.ru -yaroslavcev.2000@mail.ru -net.aleshka@gmail.com -silvestrius@mail.ru -cprof777@gmail.com -reachi73@ya.ru -alex_mylnikov@mail.ru -ivashka.co@gmail.com -4-mi@bk.ru -aleka196@yandex.ru -manmg87@gmail.com -ne-devil@mail.ru -ajazmn@mail.ru -svettor@mail.ru -spacecool@mail.ru -lob-zik@mail.ru -dabu144@gmail.com -richbvl@mail.ru -vladimir_titarenko_80@mail.ru -fedotovevgeni@gmail.com -zoom-zoom555@mail.ru -alexsanderostrikov@gmail.com -exstarzii@yandex.ru -danil.glux@inbox.ru -yamchenko.y.v@yandex.com -p-kosenko@mail.ua -mor.gan@list.ru -andrey.poprotsky@gmail.com -remenyuk79@gmial.com -karyapkin@gmail.com -wirelines@yandex.ru -magicue@mail.ru -rajnisk@hotmail.com -yaros75@ya.ru -i_barsik@yahoo.com -fformula@gmail.com -dmitry010581@yandex.ru -valorml@gmail.com -profurs@yandex.ru -artemshchurev@gmail.com -leonvp@mail.ru -technesis@mail.ru -1994helga@mail.ru -misha41192@mail.ru -a.myskova@yandex.ru -sss-74@bk.ru -stalevs@gmail.com -egor161@mail.ru -bfisher@mail.ru -vitr@list.ru -all4me4@gmail.com -n-samoilov@mail.ru -konstload@gmail.com -sokolik2701@mail.ru -madinaxyt@mail.ru -lbch2201@gmail.com -vlad-amosov@yandex.ru -at_alex@bk.ru -w_wasd@mail.ru -master1987@mail.ru -sabyb8787@mail.ru -majestic.jazz@yandex.ru -mobilizer@ya.ru -hilolas_box@outlook.com -soft-bi@mail.ru -podlipskiy@list.ru -matrix-1975@mail.ru -i.zaria@yandex.ru -shayhov91@gmail.com -pashkin_disk@mail.ru -faraola_u@outlook.com -alex.sushkoff@gmail.com -rayesbern@ya.ru -romanefimov24@mail.ru -maks-twin@yandex.ru -yakovbeng@gmail.com -solotrant@gmail.com -ant.kutt@yandex.ru -olgagrek@rambler.ru -vaseninn@mail.ru -4fz4@mail.ru -francois_thierry@mail.ru -igor_kravchenko@live.ru -ponamarev_89@bk.ru -morozalex@list.ru -mr.hyman63@gmail.com -mad-dimon@mail.ru -natzero@mail.ru -dressatele@gmail.com -vasey@ya.ru -theravenherz@gmail.com -d77dk@mail.ru -webconsult.ekb@gmail.com -val4656@yandex.ru -kohandjo@gmail.com -dj_death@list.ru -adrianobuon@mail.ru -aspushkin2395@gmail.com -mazurovdm@mail.ru -seven_avk_@mail.ru -studio-126@mail.ru -ivanovim@mail.ru -agent.777@inbox.ru -cantemirdima@yahoo.com -shikin.a.v@mail.ru -mirik49@yandex.ru -79184161155@yandex.ru -oleguch@ya.ru -dante.net@mail.ru -cement21@yandex.ru -coolfatner@mail.ru -dikck.dmitry@yandex.ru -s_lobashev@mail.ru -olia-olia-2015@inbox.ru -natalia04011953@yandex.ru -ewigschatten@yandex.ru -legeev12@gmail.com -ilya_korchagin_90@mail.ru -tohafrit@gmail.com -vdimae@mail.ru -glockbender@mail.ru -robin-nogood@rambler.ru -c-ilya@mail.ru -coldinc@rambler.ru -nadin12233@mail.ru -dorogov@bk.ru -vraduir@mail.ru -2024123@mail.ru -atos_1972@mail.ru -zav.olga888@mail.ru -ewe21@ya.ru -host_63@mail.ru -91raykard@gmail.com -taim777@ya.ru -wmsangel@gmail.com -alex_on89@mail.ru -alexona90@mail.ru -krrera@mail.ru -gothic311@mail.ru -tretiakov2511@gmail.ru -k.alex.f@mail.ru -chepurnov2010@gmail.com -jamil2005.78@mail.ru -proprofi15@yandex.ru -andkorni@yandex.ru -chabakvolodya@gmail.com -sasha63rus@ya.ru -yatriks@mail.ru -evg_moiseev93@mail.ru -mbayrakova@gmail.com -sergeshopmail@list.ru -galankin-nikita@lenta.ru -vudtver@mail.ru -klen2277@mail.ru -qwertyantoshu2@gmail.com -rm7m@mail.ru -scepteroff@yandex.ru -chernova.tanya.96@mail.ru -egor.outhead@gmail.com -luminiksik@yandex.ru -moriv08@yandex.ru -abdulay.suleymanov@gmail.com -infiniticiti@gmail.com -public-mail@mail.ru -lerchdru@gmail.com -vaavik@bk.ru -gpeckob@gmail.com -nikulinag@gmail.com -eremindw@yandex.ru -middler.jon@yandex.ru -startsev_da@mail.ru -prusove@gmail.com -dima-sit168@yandex.ru -andr.bondaren@gmail.com -tchorteg@yandex.ru -slava-sh@yandex.ru -vladejkee@gmail.com -gyppi96@gmail.com -154533@mail.ru -abyxabyxabyx@gmail.com -brin.stepan@mail.ru -sozhegov@mail.ru -jaggon@list.ru -sak_aa@mail.ru -eshudanov@gmail.com -maksimovanb15@gmail.com -avartru@yandex.ru -julia_71@mail.ru -sergey.petrov@me.com -neonvteni@gmail.com -kusskaev@yandex.ru -infdev@yandex.ru -malenkaya.grafinya@mail.ru -agar10@yandex.ru -9284330043@mail.ru -s.nadjufka@mail.ru -mlit@nm.ru -tailskomi@gmail.com -alex.s.fry@gmail.com -r_dauranov@mail.ru -zekskorn@gmail.com -allanoy@yandex.ru -remenyuk79@gmail.com -alex_424242@mail.ru -starodubtzeva.iana@yandex.ru -s-m-n@mail.ru -asafinasafin@gmail.com -pavel.anix@gmail.com -dagomit05@ya.ru -spec4web@gmail.com -sergeimalinin1@gmail.com -vvcvvcvvs@gmail.com -step1383@gmail.com -iwahnencko1996@yandex.ru -iyaroslav@yandex.ru -rabmit@yandex.ru -c0x1ff6@yahoo.com -ferdinand2k4@gmail.com -it-a.d.m.i.n.s@ya.ru -mcrtchan@mail.ru -albert@gestiv.ru -marugo@mail.ru -pavelgusynin@yandex.ru -elvis97rus@gmail.com -krutovdv@gmail.com -dmitriev.ns@yandex.ru -ivico@inbox.ru -dkrstudio@gmail.com -pavelmaxosip@mail.ru -georg_ry@mail.ru -pavel08041983@gmail.com -upax@inbox.ru -jake_r77@mail.ru -kirillizmailov@mail.ru -etopist@outlook.com -bstrdn@gmail.com -4484864@gmail.com -supreme-inside@yandex.ru -jane_crispin@mail.ru -cesc0717@gmail.com -fioktistova@bk.ru -sacrament1989@gmail.com -vic.bandura@yandex.ru -rulka7@narod.ru -rootkitlink@mail.ru -w3orks@mail.ru -horlsgrand@gmail.com -fatullaevroman@gmail.com -mas.proekt@mail.ru -a.kyrov@gmail.com -la-verne@mail.ru -thedimagladkov@gmail.com -pagr89@gmail.com -tao981@rambler.ru -k.v.sokolov@bk.ru -shultsev13@gmail.com -gogi_ark@mail.ru -vladixa@mail.ru -3dmax50@mail.ru -956768@mail.ru -o.gricenko@yandex.ru -safarov-ar@yandex.ru -ariv@meta.ua -irogoff88@gmail.com -gholovieshko@mail.ru -alex1net@mail.ru -parfenovevgeniy@mail.ru -sparomaroma@gmail.com -eremenko-83@mail.ru -malov.alexsander@yandex.ru -bulat.93@inbox.ru -fokusnicevgeni@mail.ru -lebedy25@yandex.ru -olegmironyk@gmail.com -sab33sab@mail.ru -yurchuk2@mail.ru -pavelstar@rambler.ru -ormis37@mail.ru -belycov@rambler.ru -hellsballs99@gmail.com -rodina-vera@inbox.ru -mirt735@rambler.ru -duckart_av@mail.ru -trubchik@mail.ru -rvt_oit@mail.ru -oper.debian@gmail.com -lilasteciv@rambler.ru -mb2043@yandex.ru -n3222464@mail.ru -faith88@mail.ru -ksd921020@yandex.ru -aequivalere13@gmail.com -uraltux@gmail.com -kupukctep@mail.ru -tarxanova_09@mail.ru -curtc@ngs.ru -kant_2017@mail.ru -qwerty777-08@bk.ru -alexandrxvii@gmail.com -ragozina@mokselle.com -an4bi0s@mail.ru -stassyn@yandex.ru -missq2012@yandex.ru -yungamm@yandex.ru -ya.m2soft@yandex.ru -9446726@gmail.com -rapheroes@mail.ru -o.turewi4@yandex.ru -andrey.ksenon@gmail.com -tafury@mail.ru -bondareva.tanya@inbox.ru -ekbpotok@gmail.com -shatvladimir@yandex.ru -martyr552@mail.ru -samaraqwerty63@gmail.cpm -nolich@yandex.ru -msvechnikova@mail.ru -zamaev.aydrus@yandex.ru -ld1995@tut.by -81baxrom@mail.ru -rds2212@yandex.ru -zalexz1994@gmail.com -help.helpsetup@gmail.com -asavlukov@maxus.ru -bva_np@mail.ru -valery.remenyuk@rambler.ru -vadmirr@yandex.ru -ainslie.red@gmail.com -panda@chelcom.ru -est-pismo@yandex.ru -kgv63@mail.ru -v_vyborg@rambler.ru -galvai@mail.ru -milov63@yandex.ru -656486@mail.ru -ainf17@ngs.ru -kotans@inbox.ru -mobiotgroup@gmail.com -shalva@reuters.com -venom.prog@gmail.com -alp112a@gmail.com -uza-88@mail.ru -aleks.2001.murman@mail.ru -fimaforbiz@gmail.com -r_aleksanyan@mail.ru -studpraktik@mail.ru -dmitriy.mosolov@gmail.com -selena22@mail.ru -kimdaychin@yandex.ru -lauke@mail.ru -b_ayshat_s@rambler.ru -avalongames@outlook.com -zloy.jozheg@gmail.com -b.davletshin@gmail.com -samaraqwerty63@gmail.com -didrojon@gmail.com -zulkarnaev_sergei@mail.ru -luckygift@mail.ru -dmitrii_gerass@mail.ru -telminov-s@mail.ru -alion.dim@yandex.ru -leha-fantom@mail.ru -kimonnick@mail.ru -13bit69@gmail.com -sabirov@worksolutions.ru -student.89@list.ru -moriyel@rambler.ru -kochevnik01@mail.ru -gorelina93@gmail.com -kerby@inbox.ru -baltport@mail.ru -urself2015@yandex.ru -vitaly.popov.75@gmail.com -qwoto2015@gmail.com -k.nurmatov@yandex.ru -footzi2014@outlook.com -daydream88@bk.ru -matlin_daniil@mail.ru -yas_s@mail.ru -cyberfancool@yandex.ru -xxc@leeching.net -uzor1@ukr.net -defalt9474@gmail.com -draxx512@gmail.com -ioffe.am@gmail.com -sabybinnv@yandex.ru -aleksei.serdyuckov@yandex.ru -wkatsa@gmail.com -koropov@mokselle.ru -kot8988@ya.ru -irina9994@rambler.ru -cmakept@yandex.ru -ilumushark@mail.ru -warks@mail.ru -aleksey.elizaryev@gmail.com -gennadiy1983@ya.ru -klykov_v@mail.ru -oglekler@gmail.com -kaza4kin.k@yandex.ru -pol.lebedev@gmail.com -forestone@mail.ru -shaluhin.marat@gmail.com -mujui@yandex.ru -8student8@gmail.com -vladislavwar@gmail.com -pverbatim@mail.ru -ramzes.mgdn@gmail.com -luckyguy81@mail.ru -elina-10v9v2014@yandex.ru -varaksinandrey@yandex.ru -ulitinigor@yandex.ru -yuralet@mail.ru -darthy.first@gmail.com -ipereyma@yandex.ru -iterus@rambler.ru -korkinas74@mail.ru -lara407@qip.ru -8931481052@mail.ru -pades91@yandex.ru -ushac@mail.ru -yanickel@mail.ru -alexz1983@mail.ru -louvor@bk.ru -yurinbu@mail.ru -dronkin.alexei@mail.ru -ksena@inbox.ru -sema1197@mail.ru -saninamaria@gmail.com -strategybz@mail.ru -abdimalik777@yandex.kz -dimadimych@gmail.com -isanbet@mail.ru -edwd.mkrv@gmail.com -8923374342314@mail.ru -tymur1983@mail.ru -slizh.a@mail.ru -aeugeniy@gmail.com -daria-risya@mail.ru -input_chet@rambler.ru -e.p.aleksandrov@yandex.ru -alo61@mail.ru -alexandr.gornushkin@yandex.ru -emitrohin@icloud.com -pear3200@gmail.com -bedew@yandex.ru -irisdisel@yandex.ru -kalina8208@gmail.com -ivkov_wa@mail.ru -delo@jet-mix.ru -abulhanof@yandex.kz -duplicate@mail.ru -k.batalov@bk.ru -sglvzom@gmail.com -gral@yandex.ru -timur008116@gmail.com -d.koganovsky@gmail.com -work11.77@mail.ru -vitalikymaksimovoi@mail.ru -ichipyshev@gmail.com -yaguar2102@yandex.ru -e.b.j_99@mail.ru -9265971995@mail.ru -seregei-melehin@mail.ru -bolteg86@yandex.ru -sashatktarv@yandex.ru -netproblem2009@yandex.ru -brmoney@ya.ru -vv-off83@mail.ru -og.box@mail.ru -l1fepro@yandex.ru -9258686281@mail.ru -kosalexey98@gmail.com -symchuk.andriy@gmail.com -kot_optimist@mail.ru -lehasalivan@gmail.com -maraekabu@gmail.com -adyank@mail.ru -vilislac@gmail.com -rybkina.ma@gmail.com -dem0version@yandex.ru -wgw2006@rambler.ru -savva-fokin2002@mail.ru -uri0605@mail.ru -starodubtseva.iana@yandex.ru -andrey.lapin.mail@gmail.com -dsias@mail.ru -omegaprime@live.ru -l_maxwell@mail.ru -glomer@bk.ru -sanika94@yandex.ru -dimkut@bk.ru -ffiirreeffooxx@gmail.com -khalil.gumeroff@yandex.ru -alex-bedev@ozero.net -j.haustov@gmail.com -lmr777@bk.ru -mordekainen@yandex.ru -annanowo@yandex.ru -khenkinpaul@gmail.com -dine77e@gmail.com -grandger@mail.ru -martynenkolev@gmail.com -novikov.spetsnaz@yandex.ru -timfedotov@yandex.ru -khabibulin.t@gmail.com -ravilwork@mail.ru -ot-15@yandex.ru -lena_as_sister@mail.ru -oleg_alegatar@mail.ru -tores-90@mail.ru -karpov.g777@mail.ru -mikhail.pak@kor.kz -elenagum@gmail.com -neelovdima@gmail.com -alexander5454@yandex.ru -anna-1804@mail.ru -denis.str12@gmail.com -v-makarov@yandex.ru -s_teplom@mail.ru -knightdeadd@gmail.com -rivo551@rambler.ru -amedyntsev@yandex.ru -alex.v.andreev@gmail.com -ma1m2@mail.ru -funkeet@ya.ru -kdanilka2009@mail.ru -makoron@mail.ru -bele.niente@gmail.com -my.777@mail.ru -budarin.02@bk.ru -midda7@mail.ru -glzdslint@mail.ru -nwisher@gmail.com -sergey.b.bo@gmail.com -serd89@mail.ru -roma.korehov@yandex.ru -masyamizin@mail.ru -gazovik7@gmail.com -stetskoi@yandex.ru -prusov1987@gmail.com -preyzon@mail.ru -todace@mail.ru -evgeniy.v.tikhonov@gmail.com -nvestan@hotmail.ru -vanyabocharov13@gmail.com -2602199@list.ru -larisavalgutova@gmail.com -sl.codemy@gmail.com -magnestik@rambler.ru -bramanthe@gmail.com -mr.miv@icloud.com -feric@list.ru -380734890630@yandex.ru -alex@corpmail.ws -terexnik@gmail.com -shelalex@mail.ru -smolokhov@gmail.com -vafellkaaa@gmail.com -teacher_m@mail.ru -gordjelin14@gmail.com -13flowers@mail.ru -dvinnik@yahoo.com -csphsoec@mail.ru -dmitry@senashenko.ru -makevkin@mail.ru -battle.city@mail.ru -aptem240@mail.ru -mskorotkov@mail.ru -yarsouz@mail.ru -sashkokirill@gmail.com -sumona@list.ru -od_89@mail.ru -sergeioff@mail.ru -max@gmail.com -bez.b.unix@gmail.com -xxrq@mail.ru -vzahov@mail.ru -evg2369@yandex.ru -ab_surd@list.ru -levin_aleksey@mail.ru -vav@teobit.ru -gadzhibekov.nariman@mail.ru -mity282@gmail.com -kaz@udm.ru -iban.kun@gmail.com -wespe@outlook.com -mysample@rambler.ru -224mmv@gmail.com -azemsha@hotmail.com -zet11111@bk.ru -robertkhisameev@gmail.com -secretlana@gmail.com -eltiiv@yandex.ru -m_c_p@mail.ru -mbk_88@mail.ru -be1phegor.js@gmail.com -3490053@i.ua -danikanisa@gmail.com -anatoliiandreev19@gmail.com -79043610901@yandex.ru -podliza123@gmail.com -af03gh34fg@gmail.com -mail4bsf@gmail.com -diadiasash@mail.ru -tretyakov2511@bk.ru -vlad_rym@mail.ru -big_zyk@mail.ru -denfyz@mail.ru -iriyamak@ya.ru -smirnovm84@gmail.com -kosior@ukr.net -pheniksesalex@mail.ru -molotilow@yandex.ru -osipovik89@gmail.com -heia@yandex.ru -krbv.gennadiy@gmail.com -foxibit@mail.ru -phantomx@yandex.ru -hamomel@gmail.com -grey50cj@gmail.com -k.v.berezovsky@yandex.ru -karakan77@yandex.ru -raduga-k-klyuchi@mail.ru -tematixonov@mail.ru -tsarevvs@bk.ru -babyas@yandex.ru -ar4i_92@bk.ru -root@k0d.ru -karimov.bahtiyor@yahoo.com -rangako@bk.ru -zvuk47@mail.ru -mihyil-94@mail.ru -maxrusgm@yandex.ru -nglk_z1k@mail.ru -gladiator.maksim1992@mail.ru -alekskolr@gmail.com -total100@ya.ru -andy_hs@mail.ru -ps@email.su -sbahodur@gmail.com -gen9938@yandex.ru -leks_aleks@ro.ru -novoross86@gmail.com -koganovsky@yandex.ru -klaus_83@mail.ru -s.prava@mail.ru -fenufenu@mail.ru -aselya.bekenova@gmail.com -lazarevs39@yandex.ru -tsvvst@yandex.ru -grash25@mail.ru -igorbunovf@gmail.com -mbr0969@gmail.com -i_nazar@mail.ru -khritavarman@gmail.com -dimias@lenta.ru -sergey-1968-spb@mail.ru diff --git a/journals/__init__.py b/journals/__init__.py old mode 100644 new mode 100755 diff --git a/journals/admin.py b/journals/admin.py old mode 100644 new mode 100755 index 68a1200..87bd39f --- a/journals/admin.py +++ b/journals/admin.py @@ -1,250 +1,250 @@ -from django.contrib import admin -from django.db.models import Q -from django.http import HttpResponse - -from access.models import User -from journals.models import TeacherJ, LessonJ, HomeworkJ, \ - ExamJ, AchievementJ, HomeworkTry, \ - ExamTry, CourseThemeJ, DiplomaJ, ReportDepth -from import_export.admin import ImportExportModelAdmin - - -def export_xls(modeladmin, request, queryset): - import xlwt - response = HttpResponse(content_type='application/ms-excel') - response['Content-Disposition'] = 'attachment; filename=report.xls' - wb = xlwt.Workbook(encoding='utf-8') - ws = wb.add_sheet("MyModel") - - row_num = 0 - - columns = [ - (u"ID Студента", 3000), - (u"ФИО", 6000), - (u"Email", 8000), - (u'Порядок темы урока', 1000), - (u'Тема урока', 16000), - (u'Порядок урока', 1000), - (u"Урок", 16000), - (u"ДЗ", 16000), - (u'Тема ДЗ', 16000), - (u'Порядок темы ДЗ', 1000), - (u"Преподаватель", 6000), - (u"Курс", 6000), - ] - - font_style = xlwt.XFStyle() - font_style.font.bold = True - - for col_num in range(len(columns)): - ws.write(row_num, col_num, columns[col_num][0], font_style) - # set column width - ws.col(col_num).width = columns[col_num][1] - - font_style = xlwt.XFStyle() - font_style.alignment.wrap = 1 - - for obj in queryset: - row_num += 1 - row = [ - obj.student.id if obj.student else '-', - obj.student.get_full_name() if obj.student else '-', - obj.student.email if obj.student else '-', - obj.lesson.theme.sort if obj.lesson else '-', - obj.lesson.theme.get_title() if obj.lesson else '-', - obj.lesson.sort if obj.lesson else '-', - obj.lesson.get_title() if obj.lesson else '-', - obj.homework.get_title() if obj.homework else '-', - obj.homework.theme.get_title() if obj.homework else '-', - obj.homework.theme.sort if obj.homework else '-', - obj.teacher.get_short_name() if obj.teacher else '-', - obj.course.get_title() if obj.course else '-', - ] - for col_num in range(len(row)): - ws.write(row_num, col_num, row[col_num], font_style) - - wb.save(response) - return response - - -export_xls.short_description = u"Export XLS" - - -def export_hw_journals(modeladmin, request, queryset): - import xlwt - response = HttpResponse(content_type='application/ms-excel') - response['Content-Disposition'] = 'attachment; filename=report.xls' - wb = xlwt.Workbook(encoding='utf-8') - ws = wb.add_sheet("MyModel") - - row_num = 0 - - columns = [ - (u"ID Студента", 3000), - (u"ФИО", 6000), - (u"Email", 8000), - (u'Порядок темы', 1000), - (u'Тема', 16000), - (u'Преподаватель', 1000) - ] - - font_style = xlwt.XFStyle() - font_style.font.bold = True - - for col_num in range(len(columns)): - ws.write(row_num, col_num, columns[col_num][0], font_style) - # set column width - ws.col(col_num).width = columns[col_num][1] - - font_style = xlwt.XFStyle() - font_style.alignment.wrap = 1 - - for obj in queryset: - row_num += 1 - row = [ - obj.student.id if obj.student else '-', - obj.student.get_full_name() if obj.student else '-', - obj.student.email if obj.student else '-', - obj.material.theme.sort if obj.material else '-', - obj.material.theme.get_title() if obj.material else '-', - obj.teacher.get_full_name() if obj.teacher else '-' - ] - for col_num in range(len(row)): - ws.write(row_num, col_num, row[col_num], font_style) - - wb.save(response) - return response - - -export_xls.short_description = u"Отчет по сдаче" - - -class TeacherJAdmin(admin.ModelAdmin): - list_display = ('get_student_name', 'get_student_email', 'lesson', 'homework', 'teacher', 'course', 'start_date', 'progress', ) - search_fields = ['current_token', 'student__email', 'student__id'] - list_filter = ['course', 'status'] - filter_horizontal = ('waiting', ) - actions = [export_xls] - - def get_student_email(self, instance): - return instance.student.email if instance.student else '' - - def get_student_name(self, instance): - return instance.student.get_full_name() if instance.student else '' - - def formfield_for_foreignkey(self, db_field, request=None, **kwargs): - if db_field.name == "teacher": - kwargs["queryset"] = User.objects.filter(in_role='T') - return super(TeacherJAdmin, self).formfield_for_foreignkey(db_field, request, **kwargs) - -admin.site.register(TeacherJ, TeacherJAdmin) - - -class LessonJAdmin(admin.ModelAdmin): - list_display = ('student', 'material', 'parent', 'success', 'date', 'f_date',) - list_filter = ['success', 'material__course', 'date', 'f_date'] - raw_id_fields = ['parent', 'student'] - search_fields = ['student__id', 'student__email'] - - def formfield_for_foreignkey(self, db_field, request=None, **kwargs): - if db_field.name == "teacher": - kwargs["queryset"] = User.objects.filter(in_role='T') - return super(LessonJAdmin, self).formfield_for_foreignkey(db_field, request, **kwargs) - -admin.site.register(LessonJ, LessonJAdmin) - - -class HomeworkJAdmin(admin.ModelAdmin): - list_display = ('student', 'parent', 'get_courese_title', 'success', 'date', 'f_date', 'teacher', 'get_url', ) - raw_id_fields = ['student', 'parent'] - list_filter = ['material__course', 'success', 'date', 'f_date'] - search_fields = ['student__email', 'student__id'] - actions = [export_hw_journals] - - def get_courese_title(self, instance): - return instance.material.course.get_title() - - def formfield_for_foreignkey(self, db_field, request=None, **kwargs): - if db_field.name == "teacher": - kwargs["queryset"] = User.objects.filter(in_role='T') - return super(HomeworkJAdmin, self).formfield_for_foreignkey(db_field, request, **kwargs) - -admin.site.register(HomeworkJ, HomeworkJAdmin) - - -class ExamJAdmin(admin.ModelAdmin): - list_display = ('student', 'date', 'f_date', 'success', 'teacher', 'get_url', ) - list_filter = ['material__course', 'success', 'date', 'f_date'] - search_fields = ['student__email'] - - def formfield_for_foreignkey(self, db_field, request=None, **kwargs): - if db_field.name == "teacher": - kwargs["queryset"] = User.objects.filter(in_role__in=['T']) - return super(ExamJAdmin, self).formfield_for_foreignkey(db_field, request, **kwargs) - -admin.site.register(ExamJ, ExamJAdmin) - - -class HomeworkTryAdmin(admin.ModelAdmin): - list_display = ('student', 'get_status_flag', 'material', 'date', 'f_date', 'success', 'expired', 'teacher', 'parent', 'get_url',) - search_fields = ['student__email', 'parent__id', 'student__id'] - list_filter = ('material__course', 'expired', 'date', 'f_date', ) - raw_id_fields = ['student', 'parent'] - filter_horizontal = ['comments'] - - def formfield_for_foreignkey(self, db_field, request=None, **kwargs): - if db_field.name == "teacher": - kwargs["queryset"] = User.objects.filter(in_role__in=['T']) - return super(HomeworkTryAdmin, self).formfield_for_foreignkey(db_field, request, **kwargs) - - def get_status_flag(self, instance): - return instance.get_status()['title'] - -admin.site.register(HomeworkTry, HomeworkTryAdmin) - - -class ExamTryAdmin(admin.ModelAdmin): - list_display = ('parent', 'get_status_flag', 'student', 'date', 'f_date', 'success', 'expired', 'teacher') - search_fields = ['student__email', 'parent__id', 'student__id'] - list_filter = ('material__course', 'expired', 'date', 'f_date') - raw_id_fields = ['student', 'parent'] - - def formfield_for_foreignkey(self, db_field, request=None, **kwargs): - if db_field.name == "teacher": - kwargs["queryset"] = User.objects.filter(in_role__in=['T']) - return super(ExamTryAdmin, self).formfield_for_foreignkey(db_field, request, **kwargs) - - def get_status_flag(self, instance): - return instance.get_status()['title'] - -admin.site.register(ExamTry, ExamTryAdmin) - - -class CourseThemeJAdmin(admin.ModelAdmin): - list_display = ('id', 'material', 'parent', 'student', 'date', 'f_date', ) - search_fields = ['student__email', 'student__id', 'material__title', 'material__id'] - list_filter = ['material__course', 'success', 'date', 'f_date'] - -admin.site.register(CourseThemeJ, CourseThemeJAdmin) - - -class AchievementJAdmin(admin.ModelAdmin): - list_display = ('title', 'student', 'achievement', 'date', 'got',) - -admin.site.register(AchievementJ, AchievementJAdmin) - - -class DiplomaJAdmin(admin.ModelAdmin): - list_display = ('parent', 'material', 'student', 'date', 'key', 'out_image', 'in_image', 'gen') - search_fields = ('key', 'student__email', 'student__fname', 'student__name', 'student__oname') - list_filter = ['material'] - - -admin.site.register(DiplomaJ, DiplomaJAdmin) - - -class ReportDepthAdmin(admin.ModelAdmin): - list_display = ('token', 'student', 'teacher', 'course', 's_date', 'f_date', 'flag') - - -admin.site.register(ReportDepth, ReportDepthAdmin) +from django.contrib import admin +from django.db.models import Q +from django.http import HttpResponse + +from access.models import User +from journals.models import TeacherJ, LessonJ, HomeworkJ, \ + ExamJ, AchievementJ, HomeworkTry, \ + ExamTry, CourseThemeJ, DiplomaJ, ReportDepth +from import_export.admin import ImportExportModelAdmin + + +def export_xls(modeladmin, request, queryset): + import xlwt + response = HttpResponse(content_type='application/ms-excel') + response['Content-Disposition'] = 'attachment; filename=report.xls' + wb = xlwt.Workbook(encoding='utf-8') + ws = wb.add_sheet("MyModel") + + row_num = 0 + + columns = [ + (u"ID Студента", 3000), + (u"ФИО", 6000), + (u"Email", 8000), + (u'Порядок темы урока', 1000), + (u'Тема урока', 16000), + (u'Порядок урока', 1000), + (u"Урок", 16000), + (u"ДЗ", 16000), + (u'Тема ДЗ', 16000), + (u'Порядок темы ДЗ', 1000), + (u"Преподаватель", 6000), + (u"Курс", 6000), + ] + + font_style = xlwt.XFStyle() + font_style.font.bold = True + + for col_num in range(len(columns)): + ws.write(row_num, col_num, columns[col_num][0], font_style) + # set column width + ws.col(col_num).width = columns[col_num][1] + + font_style = xlwt.XFStyle() + font_style.alignment.wrap = 1 + + for obj in queryset: + row_num += 1 + row = [ + obj.student.id if obj.student else '-', + obj.student.get_full_name() if obj.student else '-', + obj.student.email if obj.student else '-', + obj.lesson.theme.sort if obj.lesson else '-', + obj.lesson.theme.get_title() if obj.lesson else '-', + obj.lesson.sort if obj.lesson else '-', + obj.lesson.get_title() if obj.lesson else '-', + obj.homework.get_title() if obj.homework else '-', + obj.homework.theme.get_title() if obj.homework else '-', + obj.homework.theme.sort if obj.homework else '-', + obj.teacher.get_short_name() if obj.teacher else '-', + obj.course.get_title() if obj.course else '-', + ] + for col_num in range(len(row)): + ws.write(row_num, col_num, row[col_num], font_style) + + wb.save(response) + return response + + +export_xls.short_description = u"Export XLS" + + +def export_hw_journals(modeladmin, request, queryset): + import xlwt + response = HttpResponse(content_type='application/ms-excel') + response['Content-Disposition'] = 'attachment; filename=report.xls' + wb = xlwt.Workbook(encoding='utf-8') + ws = wb.add_sheet("MyModel") + + row_num = 0 + + columns = [ + (u"ID Студента", 3000), + (u"ФИО", 6000), + (u"Email", 8000), + (u'Порядок темы', 1000), + (u'Тема', 16000), + (u'Преподаватель', 1000) + ] + + font_style = xlwt.XFStyle() + font_style.font.bold = True + + for col_num in range(len(columns)): + ws.write(row_num, col_num, columns[col_num][0], font_style) + # set column width + ws.col(col_num).width = columns[col_num][1] + + font_style = xlwt.XFStyle() + font_style.alignment.wrap = 1 + + for obj in queryset: + row_num += 1 + row = [ + obj.student.id if obj.student else '-', + obj.student.get_full_name() if obj.student else '-', + obj.student.email if obj.student else '-', + obj.material.theme.sort if obj.material else '-', + obj.material.theme.get_title() if obj.material else '-', + obj.teacher.get_full_name() if obj.teacher else '-' + ] + for col_num in range(len(row)): + ws.write(row_num, col_num, row[col_num], font_style) + + wb.save(response) + return response + + +export_xls.short_description = u"Отчет по сдаче" + + +class TeacherJAdmin(admin.ModelAdmin): + list_display = ('get_student_name', 'get_student_email', 'lesson', 'homework', 'teacher', 'course', 'start_date', 'progress', ) + search_fields = ['current_token', 'student__email', 'student__id'] + list_filter = ['course', 'status'] + filter_horizontal = ('waiting', ) + actions = [export_xls] + + def get_student_email(self, instance): + return instance.student.email if instance.student else '' + + def get_student_name(self, instance): + return instance.student.get_full_name() if instance.student else '' + + def formfield_for_foreignkey(self, db_field, request=None, **kwargs): + if db_field.name == "teacher": + kwargs["queryset"] = User.objects.filter(in_role='T') + return super(TeacherJAdmin, self).formfield_for_foreignkey(db_field, request, **kwargs) + +admin.site.register(TeacherJ, TeacherJAdmin) + + +class LessonJAdmin(admin.ModelAdmin): + list_display = ('student', 'material', 'parent', 'success', 'date', 'f_date',) + list_filter = ['success', 'material__course', 'date', 'f_date'] + raw_id_fields = ['parent', 'student'] + search_fields = ['student__id', 'student__email'] + + def formfield_for_foreignkey(self, db_field, request=None, **kwargs): + if db_field.name == "teacher": + kwargs["queryset"] = User.objects.filter(in_role='T') + return super(LessonJAdmin, self).formfield_for_foreignkey(db_field, request, **kwargs) + +admin.site.register(LessonJ, LessonJAdmin) + + +class HomeworkJAdmin(admin.ModelAdmin): + list_display = ('student', 'parent', 'get_courese_title', 'success', 'date', 'f_date', 'teacher', 'get_url', ) + raw_id_fields = ['student', 'parent'] + list_filter = ['material__course', 'success', 'date', 'f_date'] + search_fields = ['student__email', 'student__id'] + actions = [export_hw_journals] + + def get_courese_title(self, instance): + return instance.material.course.get_title() + + def formfield_for_foreignkey(self, db_field, request=None, **kwargs): + if db_field.name == "teacher": + kwargs["queryset"] = User.objects.filter(in_role='T') + return super(HomeworkJAdmin, self).formfield_for_foreignkey(db_field, request, **kwargs) + +admin.site.register(HomeworkJ, HomeworkJAdmin) + + +class ExamJAdmin(admin.ModelAdmin): + list_display = ('student', 'date', 'f_date', 'success', 'teacher', 'get_url', ) + list_filter = ['material__course', 'success', 'date', 'f_date'] + search_fields = ['student__email'] + + def formfield_for_foreignkey(self, db_field, request=None, **kwargs): + if db_field.name == "teacher": + kwargs["queryset"] = User.objects.filter(in_role__in=['T']) + return super(ExamJAdmin, self).formfield_for_foreignkey(db_field, request, **kwargs) + +admin.site.register(ExamJ, ExamJAdmin) + + +class HomeworkTryAdmin(admin.ModelAdmin): + list_display = ('student', 'get_status_flag', 'material', 'date', 'f_date', 'success', 'expired', 'teacher', 'parent', 'get_url',) + search_fields = ['student__email', 'parent__id', 'student__id'] + list_filter = ('material__course', 'expired', 'date', 'f_date', ) + raw_id_fields = ['student', 'parent'] + filter_horizontal = ['comments'] + + def formfield_for_foreignkey(self, db_field, request=None, **kwargs): + if db_field.name == "teacher": + kwargs["queryset"] = User.objects.filter(in_role__in=['T']) + return super(HomeworkTryAdmin, self).formfield_for_foreignkey(db_field, request, **kwargs) + + def get_status_flag(self, instance): + return instance.get_status()['title'] + +admin.site.register(HomeworkTry, HomeworkTryAdmin) + + +class ExamTryAdmin(admin.ModelAdmin): + list_display = ('parent', 'get_status_flag', 'student', 'date', 'f_date', 'success', 'expired', 'teacher') + search_fields = ['student__email', 'parent__id', 'student__id'] + list_filter = ('material__course', 'expired', 'date', 'f_date') + raw_id_fields = ['student', 'parent'] + + def formfield_for_foreignkey(self, db_field, request=None, **kwargs): + if db_field.name == "teacher": + kwargs["queryset"] = User.objects.filter(in_role__in=['T']) + return super(ExamTryAdmin, self).formfield_for_foreignkey(db_field, request, **kwargs) + + def get_status_flag(self, instance): + return instance.get_status()['title'] + +admin.site.register(ExamTry, ExamTryAdmin) + + +class CourseThemeJAdmin(admin.ModelAdmin): + list_display = ('id', 'material', 'parent', 'student', 'date', 'f_date', ) + search_fields = ['student__email', 'student__id', 'material__title', 'material__id'] + list_filter = ['material__course', 'success', 'date', 'f_date'] + +admin.site.register(CourseThemeJ, CourseThemeJAdmin) + + +class AchievementJAdmin(admin.ModelAdmin): + list_display = ('title', 'student', 'achievement', 'date', 'got',) + +admin.site.register(AchievementJ, AchievementJAdmin) + + +class DiplomaJAdmin(admin.ModelAdmin): + list_display = ('parent', 'material', 'student', 'date', 'key', 'out_image', 'in_image', 'gen') + search_fields = ('key', 'student__email', 'student__fname', 'student__name', 'student__oname') + list_filter = ['material'] + + +admin.site.register(DiplomaJ, DiplomaJAdmin) + + +class ReportDepthAdmin(admin.ModelAdmin): + list_display = ('token', 'student', 'teacher', 'course', 's_date', 'f_date', 'flag') + + +admin.site.register(ReportDepth, ReportDepthAdmin) diff --git a/journals/api.py b/journals/api.py old mode 100644 new mode 100755 index 2f4d4ee..0dbc18f --- a/journals/api.py +++ b/journals/api.py @@ -1,161 +1,161 @@ -# coding=utf-8 -from access.models import User -from lms.decors import api_decor -import simplejson as json -# Процесс добавления журналов через API -# Добавление проходит по -from lms.settings import SECRET_KEY -from courses.models import Course, Lesson, Homework, Exam -from journals.models import TeacherJ, LessonJ, ExamJ, HomeworkJ - - -def new_index(map, model, key, obj): - if str(key) in map[model]: - return obj.objects.get(id=map[model][str(key)]) - return None - - -@api_decor(without_auth=False, need_keys=['id', 'type'], method='POST', check_request=True) -def check_materials_access(request, context): - return context - - -@api_decor(without_auth=True, - need_keys=['student', 'lesson', 'status', 'start_date', 'f_date', 'lesson_old_id', 'student_old_id']) -def open_lj(request, context): - _fixture = json.load(open('../migrate/fixtures/pk_maps.json')) - if request.POST['token'] == SECRET_KEY: - l = new_index(_fixture, 'courses.lesson', request.POST['lesson'], Lesson) if request.POST[ - 'lesson_old_id'] else Lesson.objects.get(id=request.POST['lesson']) - s = new_index(_fixture, 'access.user', request.POST['student'], User) if request.POST[ - 'student_old_id'] else User.objects.get(id=request.POST['student']) - lj = LessonJ.objects.get_or_create(material=l, student=s) - if request.POST['status'] == 'F': - lj.saw_this() - lj.f_date = request.POST['f_date'] - lj.date = request.POST['start_date'] - elif request.POST['status'] == 'A': - lj.open_material() - lj.date = request.POST['start_date'] - elif request.POST['status'] == 'N': - lj.date = None - lj.f_date = None - lj.success = False - lj.save() - return context - - -@api_decor(without_auth=True, - need_keys=['student', 'homework', 'status', 'start_date', 'f_date', 'token', 'comments', 'student_old_id', - 'homework_old_id']) -def set_ht(request, context): - # Добавить попытку и все ее комментарии - _fixture = json.load(open('../migrate/fixtures/pk_maps.json')) - if request.POST['token'] == SECRET_KEY: - t = new_index(_fixture, 'access.user', request.POST['teacher'], User) if request.POST[ - 'teacher_old_id'] else User.objects.get(id=request.POST['teaceher']) - s = new_index(_fixture, 'access.user', request.POST['student'], User) if request.POST[ - 'student_old_id'] else User.objects.get(id=request.POST['student']) - c = new_index(_fixture, 'courses.course', request.POST['course'], Course) if request.POST[ - 'course_old_id'] else Course.objects.get(id=request.POST['course']) - tj = TeacherJ.objects.get_or_create(student=s, course=c) - tj.teacher = t - tj.save() - return context - - -@api_decor(without_auth=True, - need_keys=['token', 'teacher', 'teacher_old_id', 'student', 'student_old_id', 'course', 'course_old_id']) -def set_teacher(request, context): - _fixture = json.load(open('../migrate/fixtures/pk_maps.json')) - if request.POST['token'] == SECRET_KEY: - t = new_index(_fixture, 'access.user', request.POST['teacher'], User) if request.POST[ - 'teacher_old_id'] else User.objects.get(id=request.POST['teaceher']) - s = new_index(_fixture, 'access.user', request.POST['student'], User) if request.POST[ - 'student_old_id'] else User.objects.get(id=request.POST['student']) - c = new_index(_fixture, 'courses.course', request.POST['course'], Course) if request.POST[ - 'course_old_id'] else Course.objects.get(id=request.POST['course']) - tj = TeacherJ.objects.get_or_create(student=s, course=c) - tj.teacher = t - tj.save() - return context - - -@api_decor(without_auth=True, need_keys=['id', 'type'], method='GET', check_request=True) -def check_jaccess(request, context): - if request.user.is_authenticated(): - if request.user.is_admin: - context['code'] = '1' - return context - - context['code'] = '0' - _type = request.GET['type'] - journal = None - if _type == 'lesson': - journal = LessonJ.objects.filter(material=Lesson.objects.get(id=request.GET['id']), student=request.user) - if _type == 'homework': - journal = HomeworkJ.objects.filter(material=Homework.objects.get(id=request.GET['id']), student=request.user) - if _type == 'exam': - journal = ExamJ.objects.filter(material=Exam.objects.get(id=request.GET['id']), student=request.user) - - if journal and journal.exists(): - if request.user in journal[0].material.course.teachers.all(): - context['code'] = '1' - return context - w = journal.first().parent.parent.waiting - if w.exists(): - if w.first().token != journal.first().material.token: - if w.first().token > journal.first().material.token: - context['code'] = '1' - return context - context['code'] = '0' - return context - _before = journal.first().get_before() - if journal.first().get_status_flag() != 'N': - context['code'] = '1' - elif journal.first().get_status_flag() == 'N': - if _before['journal'].get_status_flag() == 'F': - journal.first().open_material() - - return context - - -@api_decor(without_auth=False, need_keys=['id'], method='GET', check_request=True) -def check_exists_jhomework(request, context): - try: - HomeworkJ.objects.get(id=request.GET['id'], f_date=None) - except HomeworkJ.DoesNotExist: - context['code'] = '0' - else: - context['code'] = '1' - return context - - -@api_decor(without_auth=False, need_keys=['id'], method='GET', check_request=True) -def check_exists_jexam(request, context): - try: - ExamJ.objects.get(id=request.GET['id'], f_date=None) - except ExamJ.DoesNotExist: - context['code'] = '0' - else: - context['code'] = '1' - return context - - -@api_decor(without_auth=True, need_keys=['id', 'type'], method='GET', check_request=True) -def check_block(request, context): - if request.user.is_authenticated(): - context['code'] = '0' - _type = request.GET['type'] - journal = None - if _type == 'lesson': - journal = LessonJ.objects.filter(material=Lesson.objects.get(id=request.GET['id']), student=request.user) - if _type == 'homework': - journal = HomeworkJ.objects.filter(material=Homework.objects.get(id=request.GET['id']), student=request.user) - if _type == 'exam': - journal = ExamJ.objects.filter(material=Exam.objects.get(id=request.GET['id']), student=request.user) - - if journal and journal.exists(): - context['code'] = '0' if journal.first().material.theme.empty else '1' - - return context +# coding=utf-8 +from access.models import User +from lms.decors import api_decor +import simplejson as json +# Процесс добавления журналов через API +# Добавление проходит по +from lms.settings import SECRET_KEY +from courses.models import Course, Lesson, Homework, Exam +from journals.models import TeacherJ, LessonJ, ExamJ, HomeworkJ + + +def new_index(map, model, key, obj): + if str(key) in map[model]: + return obj.objects.get(id=map[model][str(key)]) + return None + + +@api_decor(without_auth=False, need_keys=['id', 'type'], method='POST', check_request=True) +def check_materials_access(request, context): + return context + + +@api_decor(without_auth=True, + need_keys=['student', 'lesson', 'status', 'start_date', 'f_date', 'lesson_old_id', 'student_old_id']) +def open_lj(request, context): + _fixture = json.load(open('../migrate/fixtures/pk_maps.json')) + if request.POST['token'] == SECRET_KEY: + l = new_index(_fixture, 'courses.lesson', request.POST['lesson'], Lesson) if request.POST[ + 'lesson_old_id'] else Lesson.objects.get(id=request.POST['lesson']) + s = new_index(_fixture, 'access.user', request.POST['student'], User) if request.POST[ + 'student_old_id'] else User.objects.get(id=request.POST['student']) + lj = LessonJ.objects.get_or_create(material=l, student=s) + if request.POST['status'] == 'F': + lj.saw_this() + lj.f_date = request.POST['f_date'] + lj.date = request.POST['start_date'] + elif request.POST['status'] == 'A': + lj.open_material() + lj.date = request.POST['start_date'] + elif request.POST['status'] == 'N': + lj.date = None + lj.f_date = None + lj.success = False + lj.save() + return context + + +@api_decor(without_auth=True, + need_keys=['student', 'homework', 'status', 'start_date', 'f_date', 'token', 'comments', 'student_old_id', + 'homework_old_id']) +def set_ht(request, context): + # Добавить попытку и все ее комментарии + _fixture = json.load(open('../migrate/fixtures/pk_maps.json')) + if request.POST['token'] == SECRET_KEY: + t = new_index(_fixture, 'access.user', request.POST['teacher'], User) if request.POST[ + 'teacher_old_id'] else User.objects.get(id=request.POST['teaceher']) + s = new_index(_fixture, 'access.user', request.POST['student'], User) if request.POST[ + 'student_old_id'] else User.objects.get(id=request.POST['student']) + c = new_index(_fixture, 'courses.course', request.POST['course'], Course) if request.POST[ + 'course_old_id'] else Course.objects.get(id=request.POST['course']) + tj = TeacherJ.objects.get_or_create(student=s, course=c) + tj.teacher = t + tj.save() + return context + + +@api_decor(without_auth=True, + need_keys=['token', 'teacher', 'teacher_old_id', 'student', 'student_old_id', 'course', 'course_old_id']) +def set_teacher(request, context): + _fixture = json.load(open('../migrate/fixtures/pk_maps.json')) + if request.POST['token'] == SECRET_KEY: + t = new_index(_fixture, 'access.user', request.POST['teacher'], User) if request.POST[ + 'teacher_old_id'] else User.objects.get(id=request.POST['teaceher']) + s = new_index(_fixture, 'access.user', request.POST['student'], User) if request.POST[ + 'student_old_id'] else User.objects.get(id=request.POST['student']) + c = new_index(_fixture, 'courses.course', request.POST['course'], Course) if request.POST[ + 'course_old_id'] else Course.objects.get(id=request.POST['course']) + tj = TeacherJ.objects.get_or_create(student=s, course=c) + tj.teacher = t + tj.save() + return context + + +@api_decor(without_auth=True, need_keys=['id', 'type'], method='GET', check_request=True) +def check_jaccess(request, context): + if request.user.is_authenticated(): + if request.user.is_admin: + context['code'] = '1' + return context + + context['code'] = '0' + _type = request.GET['type'] + journal = None + if _type == 'lesson': + journal = LessonJ.objects.filter(material=Lesson.objects.get(id=request.GET['id']), student=request.user) + if _type == 'homework': + journal = HomeworkJ.objects.filter(material=Homework.objects.get(id=request.GET['id']), student=request.user) + if _type == 'exam': + journal = ExamJ.objects.filter(material=Exam.objects.get(id=request.GET['id']), student=request.user) + + if journal and journal.exists(): + if request.user in journal[0].material.course.teachers.all(): + context['code'] = '1' + return context + w = journal.first().parent.parent.waiting + if w.exists(): + if w.first().token != journal.first().material.token: + if w.first().token > journal.first().material.token: + context['code'] = '1' + return context + context['code'] = '0' + return context + _before = journal.first().get_before() + if journal.first().get_status_flag() != 'N': + context['code'] = '1' + elif journal.first().get_status_flag() == 'N': + if _before['journal'].get_status_flag() == 'F': + journal.first().open_material() + + return context + + +@api_decor(without_auth=False, need_keys=['id'], method='GET', check_request=True) +def check_exists_jhomework(request, context): + try: + HomeworkJ.objects.get(id=request.GET['id'], f_date=None) + except HomeworkJ.DoesNotExist: + context['code'] = '0' + else: + context['code'] = '1' + return context + + +@api_decor(without_auth=False, need_keys=['id'], method='GET', check_request=True) +def check_exists_jexam(request, context): + try: + ExamJ.objects.get(id=request.GET['id'], f_date=None) + except ExamJ.DoesNotExist: + context['code'] = '0' + else: + context['code'] = '1' + return context + + +@api_decor(without_auth=True, need_keys=['id', 'type'], method='GET', check_request=True) +def check_block(request, context): + if request.user.is_authenticated(): + context['code'] = '0' + _type = request.GET['type'] + journal = None + if _type == 'lesson': + journal = LessonJ.objects.filter(material=Lesson.objects.get(id=request.GET['id']), student=request.user) + if _type == 'homework': + journal = HomeworkJ.objects.filter(material=Homework.objects.get(id=request.GET['id']), student=request.user) + if _type == 'exam': + journal = ExamJ.objects.filter(material=Exam.objects.get(id=request.GET['id']), student=request.user) + + if journal and journal.exists(): + context['code'] = '0' if journal.first().material.theme.empty else '1' + + return context diff --git a/journals/check_switch b/journals/check_switch index 573541a..d00491f 100644 --- a/journals/check_switch +++ b/journals/check_switch @@ -1 +1 @@ -0 +1 diff --git a/journals/migrations/0001_initial.py b/journals/migrations/0001_initial.py old mode 100644 new mode 100755 index 9e5647b..9333006 --- a/journals/migrations/0001_initial.py +++ b/journals/migrations/0001_initial.py @@ -1,191 +1,191 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-03-18 16:46 -from __future__ import unicode_literals - -import datetime -from django.conf import settings -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - initial = True - - dependencies = [ - ('management', '0001_initial'), - ('storage', '0001_initial'), - migrations.swappable_dependency(settings.AUTH_USER_MODEL), - ('courses', '0001_initial'), - ] - - operations = [ - migrations.CreateModel( - name='AchievementJ', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('group', models.CharField(default='', max_length=100, verbose_name='\u0420\u0430\u0437\u0434\u0435\u043b')), - ('title', models.CharField(max_length=255, verbose_name='\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a')), - ('text', models.TextField(blank=True, verbose_name='\u0422\u0435\u043a\u0441\u0442 \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u044f')), - ('got', models.BooleanField(default=False, verbose_name='\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u043e')), - ('date', models.DateField(default=datetime.date.today, verbose_name='\u0414\u0430\u0442\u0430 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f')), - ('achievement', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='courses.Achievements', verbose_name='\u0428\u0430\u0431\u043b\u043e\u043d \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u044f')), - ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442')), - ], - options={ - 'verbose_name': '\u0416\u0443\u0440\u043d\u0430\u043b \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u0439', - 'verbose_name_plural': '\u0416\u0443\u0440\u043d\u0430\u043b\u044b \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u0439', - }, - ), - migrations.CreateModel( - name='CourseThemeJ', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('success', models.BooleanField(default=False, verbose_name='\u0417\u0430\u043a\u043e\u043d\u0447\u0435\u043d\u043e')), - ('date', models.DateTimeField(blank=True, null=True, verbose_name='\u0414\u0430\u0442\u0430 \u043d\u0430\u0447\u0430\u043b\u0430')), - ('f_date', models.DateTimeField(blank=True, null=True, verbose_name='\u0414\u0430\u0442\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f')), - ('actual_lesson', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='courses.Lesson', verbose_name='\u0410\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b \u0443\u0440\u043e\u043a \u0434\u043b\u044f \u044d\u0442\u043e\u0439 \u0442\u0435\u043c\u044b')), - ('material', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='courses.CourseTheme', verbose_name='\u0422\u0435\u043c\u0430')), - ], - options={ - 'ordering': ['id'], - 'verbose_name': '\u0416\u0443\u0440\u043d\u0430\u043b \u0442\u0435\u043c\u044b', - 'verbose_name_plural': '\u0416\u0443\u0440\u043d\u0430\u043b \u0442\u0435\u043c\u044b', - }, - ), - migrations.CreateModel( - name='ExamJ', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('success', models.BooleanField(default=False, verbose_name='\u041f\u0440\u043e\u0439\u0434\u0435\u043d\u043e')), - ('date', models.DateTimeField(null=True, verbose_name='\u0414\u0430\u0442\u0430')), - ('f_date', models.DateTimeField(blank=True, null=True, verbose_name='\u0414\u0430\u0442\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f')), - ('diploma', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='storage.Storage', verbose_name='\u0414\u0438\u043f\u043b\u043e\u043c')), - ('material', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='courses.Exam', verbose_name='\u042d\u043a\u0437\u0430\u043c\u0435\u043d')), - ('parent', models.ForeignKey(blank=True, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, to='journals.CourseThemeJ', verbose_name='\u0416\u0443\u0440\u043d\u0430\u043b')), - ('student', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='e_student', to=settings.AUTH_USER_MODEL, verbose_name='\u042d\u043a\u0437\u0430\u043c\u0435\u043d\u0443\u0435\u043c\u044b\u0439')), - ('teacher', models.ForeignKey(blank=True, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='e_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u042d\u043a\u0437\u0430\u043c\u0435\u043d\u0430\u0442\u043e\u0440')), - ], - options={ - 'verbose_name': '\u0416\u0443\u0440\u043d\u0430\u043b \u044d\u043a\u0437\u0430\u043c\u0435\u043d\u0430', - 'verbose_name_plural': '\u0416\u0443\u0440\u043d\u0430\u043b\u044b \u044d\u043a\u0437\u0430\u043c\u0435\u043d\u043e\u0432', - }, - ), - migrations.CreateModel( - name='ExamTry', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('date', models.DateTimeField(default=datetime.datetime.now, verbose_name='\u041d\u0430\u0447\u0430\u043b\u043e')), - ('f_date', models.DateTimeField(blank=True, null=True, verbose_name='\u0417\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u0435')), - ('success', models.BooleanField(default=False, verbose_name='\u0423\u0441\u043f\u0435\u0448\u043d\u043e')), - ('expired', models.BooleanField(default=False, verbose_name='\u041f\u0440\u043e\u0441\u0440\u043e\u0447\u0435\u043d\u043e')), - ('comments', models.ManyToManyField(blank=True, editable=False, to='management.Comment', verbose_name='\u041e\u0431\u0449\u0435\u043d\u0438\u0435')), - ('material', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='courses.Exam', verbose_name='\u042d\u043a\u0437\u0430\u043c\u0435\u043d')), - ('parent', models.ForeignKey(blank=True, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, to='journals.ExamJ', verbose_name='\u0416\u0443\u0440\u043d\u0430\u043b')), - ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='e_t_student', to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442')), - ('teacher', models.ForeignKey(blank=True, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='e_t_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044c')), - ], - options={ - 'verbose_name': '\u041f\u043e\u043f\u044b\u0442\u043a\u0430 \u0441\u0434\u0430\u0447\u0438 \u042d\u043a\u0437\u0430\u043c\u0435\u043d\u0430', - 'verbose_name_plural': '\u041f\u043e\u043f\u044b\u0442\u043a\u0438 \u0441\u0434\u0430\u0447\u0438 \u042d\u043a\u0437\u0430\u043c\u0435\u043d\u043e\u0432', - }, - ), - migrations.CreateModel( - name='HomeworkJ', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('success', models.BooleanField(default=False, verbose_name='\u0417\u0430\u043a\u043e\u043d\u0447\u0435\u043d\u043e')), - ('date', models.DateTimeField(null=True, verbose_name='\u0414\u0430\u0442\u0430 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430')), - ('f_date', models.DateTimeField(blank=True, null=True, verbose_name='\u0414\u0430\u0442\u0430 \u0437\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f')), - ('material', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='courses.Homework', verbose_name='\u0414\u043e\u043c\u0430\u0448\u043d\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435')), - ('parent', models.ForeignKey(blank=True, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, to='journals.CourseThemeJ', verbose_name='\u0416\u0443\u0440\u043d\u0430\u043b \u0442\u0435\u043c\u044b')), - ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='h_student', to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442')), - ('teacher', models.ForeignKey(blank=True, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='h_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u042d\u043a\u0437\u0430\u043c\u0435\u043d\u0430\u0442\u043e\u0440')), - ], - options={ - 'verbose_name': '\u0416\u0443\u0440\u043d\u0430\u043b \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u044b', - 'verbose_name_plural': '\u0416\u0443\u0440\u043d\u0430\u043b\u044b \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u0445 \u0440\u0430\u0431\u043e\u0442', - }, - ), - migrations.CreateModel( - name='HomeworkTry', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('date', models.DateTimeField(default=datetime.datetime.now, verbose_name='\u041d\u0430\u0447\u0430\u043b\u043e')), - ('f_date', models.DateTimeField(blank=True, null=True, verbose_name='\u0417\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u0435')), - ('success', models.BooleanField(default=False, verbose_name='\u041e\u0434\u043e\u0431\u0440\u0435\u043d\u043e')), - ('expired', models.BooleanField(default=False, verbose_name='\u041f\u0440\u043e\u0441\u0440\u043e\u0447\u0435\u043d\u043e')), - ('comments', models.ManyToManyField(blank=True, editable=False, to='management.Comment', verbose_name='\u041e\u0431\u0449\u0435\u043d\u0438\u0435')), - ('material', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='courses.Homework', verbose_name='\u0414\u043e\u043c\u0430\u0448\u043d\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435')), - ('parent', models.ForeignKey(blank=True, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, to='journals.HomeworkJ', verbose_name='\u0416\u0443\u0440\u043d\u0430\u043b')), - ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='h_t_student', to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442')), - ('teacher', models.ForeignKey(blank=True, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='h_t_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044c')), - ], - options={ - 'ordering': ['id'], - 'verbose_name': '\u041f\u043e\u043f\u044b\u0442\u043a\u0430 \u0441\u0434\u0430\u0447\u0438 \u0414\u0417', - 'verbose_name_plural': '\u041f\u043e\u043f\u044b\u0442\u043a\u0438 \u0441\u0434\u0430\u0447\u0438 \u0414\u0417', - }, - ), - migrations.CreateModel( - name='JournalsReports', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('s_date', models.DateField(verbose_name='\u041e\u0442')), - ('f_date', models.DateField(blank=True, null=True, verbose_name='\u0414\u043e')), - ('sent', models.BooleanField(default=False, editable=False, verbose_name='\u041e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d')), - ('course', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='courses.Course', verbose_name='\u041a\u0443\u0440\u0441')), - ('student', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='report_student', to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442')), - ('teacher', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='report_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044c')), - ('to', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='report_to', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u043e\u043b\u0443\u0447\u0430\u0442\u0435\u043b\u044c')), - ], - options={ - 'verbose_name': '\u041e\u0442\u0447\u0435\u0442 \u043f\u043e \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044e', - 'verbose_name_plural': '\u041e\u0442\u0447\u0435\u0442\u044b \u043f\u043e \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044f\u043c', - }, - ), - migrations.CreateModel( - name='LessonJ', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('success', models.BooleanField(default=False, verbose_name='\u041f\u0440\u043e\u0439\u0434\u0435\u043d\u043e')), - ('date', models.DateTimeField(null=True, verbose_name='\u0414\u0430\u0442\u0430 \u043d\u0430\u0447\u0430\u043b\u0430')), - ('f_date', models.DateTimeField(blank=True, null=True, verbose_name='\u0414\u0430\u0442\u0430 \u0437\u0430\u0432\u0435\u0440\u043d\u0435\u0448\u0438\u044f')), - ('material', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='courses.Lesson', verbose_name='\u0423\u0440\u043e\u043a')), - ('parent', models.ForeignKey(blank=True, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, to='journals.CourseThemeJ', verbose_name='\u0416\u0443\u0440\u043d\u0430\u043b \u0442\u0435\u043c\u044b')), - ('student', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442')), - ], - options={ - 'ordering': ['material__sort'], - 'verbose_name': '\u0416\u0443\u0440\u0430\u043d\u043b \u0443\u0440\u043e\u043a\u0430', - 'verbose_name_plural': '\u0416\u0443\u0440\u043d\u0430\u043b\u044b \u0443\u0440\u043e\u043a\u043e\u0432', - }, - ), - migrations.CreateModel( - name='TeacherJ', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('full', models.BooleanField(default=False, verbose_name='\u0416\u0443\u0440\u043d\u0430\u043b \u0441\u043e\u0437\u0434\u0430\u043d')), - ('progress', models.IntegerField(default=0, verbose_name='\u041f\u0440\u043e\u0433\u0440\u0435\u0441\u0441')), - ('current_token', models.CharField(blank=True, default='', max_length=100, verbose_name='\u0422\u0435\u043a\u0443\u0449\u0438\u0439 \u043a\u043b\u044e\u0447')), - ('start_date', models.DateTimeField(blank=True, null=True, verbose_name='\u0414\u0430\u0442\u0430 \u043d\u0430\u0447\u0430\u043b\u0430')), - ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='courses.Course', verbose_name='\u041a\u0443\u0440\u0441')), - ('student', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='teacherJ_student', to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442')), - ('teacher', models.ForeignKey(blank=True, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='teacherJ_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044c')), - ], - options={ - 'verbose_name': '\u0416\u0443\u0440\u043d\u0430\u043b \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u043d\u0438\u044f', - 'verbose_name_plural': '\u0416\u0443\u0440\u043d\u0430\u043b\u044b \u043f\u0440\u043e\u043f\u043e\u0434\u0430\u0432\u0430\u043d\u0438\u044f', - }, - ), - migrations.AddField( - model_name='coursethemej', - name='parent', - field=models.ForeignKey(blank=True, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, to='journals.TeacherJ', verbose_name='\u0416\u0443\u0440\u043d\u0430\u043b \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u043d\u0438\u044f'), - ), - migrations.AddField( - model_name='coursethemej', - name='student', - field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-03-18 16:46 +from __future__ import unicode_literals + +import datetime +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ('management', '0001_initial'), + ('storage', '0001_initial'), + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('courses', '0001_initial'), + ] + + operations = [ + migrations.CreateModel( + name='AchievementJ', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('group', models.CharField(default='', max_length=100, verbose_name='\u0420\u0430\u0437\u0434\u0435\u043b')), + ('title', models.CharField(max_length=255, verbose_name='\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a')), + ('text', models.TextField(blank=True, verbose_name='\u0422\u0435\u043a\u0441\u0442 \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u044f')), + ('got', models.BooleanField(default=False, verbose_name='\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u043e')), + ('date', models.DateField(default=datetime.date.today, verbose_name='\u0414\u0430\u0442\u0430 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f')), + ('achievement', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='courses.Achievements', verbose_name='\u0428\u0430\u0431\u043b\u043e\u043d \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u044f')), + ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442')), + ], + options={ + 'verbose_name': '\u0416\u0443\u0440\u043d\u0430\u043b \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u0439', + 'verbose_name_plural': '\u0416\u0443\u0440\u043d\u0430\u043b\u044b \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u0439', + }, + ), + migrations.CreateModel( + name='CourseThemeJ', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('success', models.BooleanField(default=False, verbose_name='\u0417\u0430\u043a\u043e\u043d\u0447\u0435\u043d\u043e')), + ('date', models.DateTimeField(blank=True, null=True, verbose_name='\u0414\u0430\u0442\u0430 \u043d\u0430\u0447\u0430\u043b\u0430')), + ('f_date', models.DateTimeField(blank=True, null=True, verbose_name='\u0414\u0430\u0442\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f')), + ('actual_lesson', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='courses.Lesson', verbose_name='\u0410\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b \u0443\u0440\u043e\u043a \u0434\u043b\u044f \u044d\u0442\u043e\u0439 \u0442\u0435\u043c\u044b')), + ('material', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='courses.CourseTheme', verbose_name='\u0422\u0435\u043c\u0430')), + ], + options={ + 'ordering': ['id'], + 'verbose_name': '\u0416\u0443\u0440\u043d\u0430\u043b \u0442\u0435\u043c\u044b', + 'verbose_name_plural': '\u0416\u0443\u0440\u043d\u0430\u043b \u0442\u0435\u043c\u044b', + }, + ), + migrations.CreateModel( + name='ExamJ', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('success', models.BooleanField(default=False, verbose_name='\u041f\u0440\u043e\u0439\u0434\u0435\u043d\u043e')), + ('date', models.DateTimeField(null=True, verbose_name='\u0414\u0430\u0442\u0430')), + ('f_date', models.DateTimeField(blank=True, null=True, verbose_name='\u0414\u0430\u0442\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f')), + ('diploma', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='storage.Storage', verbose_name='\u0414\u0438\u043f\u043b\u043e\u043c')), + ('material', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='courses.Exam', verbose_name='\u042d\u043a\u0437\u0430\u043c\u0435\u043d')), + ('parent', models.ForeignKey(blank=True, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, to='journals.CourseThemeJ', verbose_name='\u0416\u0443\u0440\u043d\u0430\u043b')), + ('student', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='e_student', to=settings.AUTH_USER_MODEL, verbose_name='\u042d\u043a\u0437\u0430\u043c\u0435\u043d\u0443\u0435\u043c\u044b\u0439')), + ('teacher', models.ForeignKey(blank=True, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='e_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u042d\u043a\u0437\u0430\u043c\u0435\u043d\u0430\u0442\u043e\u0440')), + ], + options={ + 'verbose_name': '\u0416\u0443\u0440\u043d\u0430\u043b \u044d\u043a\u0437\u0430\u043c\u0435\u043d\u0430', + 'verbose_name_plural': '\u0416\u0443\u0440\u043d\u0430\u043b\u044b \u044d\u043a\u0437\u0430\u043c\u0435\u043d\u043e\u0432', + }, + ), + migrations.CreateModel( + name='ExamTry', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('date', models.DateTimeField(default=datetime.datetime.now, verbose_name='\u041d\u0430\u0447\u0430\u043b\u043e')), + ('f_date', models.DateTimeField(blank=True, null=True, verbose_name='\u0417\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u0435')), + ('success', models.BooleanField(default=False, verbose_name='\u0423\u0441\u043f\u0435\u0448\u043d\u043e')), + ('expired', models.BooleanField(default=False, verbose_name='\u041f\u0440\u043e\u0441\u0440\u043e\u0447\u0435\u043d\u043e')), + ('comments', models.ManyToManyField(blank=True, editable=False, to='management.Comment', verbose_name='\u041e\u0431\u0449\u0435\u043d\u0438\u0435')), + ('material', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='courses.Exam', verbose_name='\u042d\u043a\u0437\u0430\u043c\u0435\u043d')), + ('parent', models.ForeignKey(blank=True, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, to='journals.ExamJ', verbose_name='\u0416\u0443\u0440\u043d\u0430\u043b')), + ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='e_t_student', to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442')), + ('teacher', models.ForeignKey(blank=True, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='e_t_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044c')), + ], + options={ + 'verbose_name': '\u041f\u043e\u043f\u044b\u0442\u043a\u0430 \u0441\u0434\u0430\u0447\u0438 \u042d\u043a\u0437\u0430\u043c\u0435\u043d\u0430', + 'verbose_name_plural': '\u041f\u043e\u043f\u044b\u0442\u043a\u0438 \u0441\u0434\u0430\u0447\u0438 \u042d\u043a\u0437\u0430\u043c\u0435\u043d\u043e\u0432', + }, + ), + migrations.CreateModel( + name='HomeworkJ', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('success', models.BooleanField(default=False, verbose_name='\u0417\u0430\u043a\u043e\u043d\u0447\u0435\u043d\u043e')), + ('date', models.DateTimeField(null=True, verbose_name='\u0414\u0430\u0442\u0430 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430')), + ('f_date', models.DateTimeField(blank=True, null=True, verbose_name='\u0414\u0430\u0442\u0430 \u0437\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f')), + ('material', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='courses.Homework', verbose_name='\u0414\u043e\u043c\u0430\u0448\u043d\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435')), + ('parent', models.ForeignKey(blank=True, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, to='journals.CourseThemeJ', verbose_name='\u0416\u0443\u0440\u043d\u0430\u043b \u0442\u0435\u043c\u044b')), + ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='h_student', to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442')), + ('teacher', models.ForeignKey(blank=True, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='h_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u042d\u043a\u0437\u0430\u043c\u0435\u043d\u0430\u0442\u043e\u0440')), + ], + options={ + 'verbose_name': '\u0416\u0443\u0440\u043d\u0430\u043b \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u044b', + 'verbose_name_plural': '\u0416\u0443\u0440\u043d\u0430\u043b\u044b \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u0445 \u0440\u0430\u0431\u043e\u0442', + }, + ), + migrations.CreateModel( + name='HomeworkTry', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('date', models.DateTimeField(default=datetime.datetime.now, verbose_name='\u041d\u0430\u0447\u0430\u043b\u043e')), + ('f_date', models.DateTimeField(blank=True, null=True, verbose_name='\u0417\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u0435')), + ('success', models.BooleanField(default=False, verbose_name='\u041e\u0434\u043e\u0431\u0440\u0435\u043d\u043e')), + ('expired', models.BooleanField(default=False, verbose_name='\u041f\u0440\u043e\u0441\u0440\u043e\u0447\u0435\u043d\u043e')), + ('comments', models.ManyToManyField(blank=True, editable=False, to='management.Comment', verbose_name='\u041e\u0431\u0449\u0435\u043d\u0438\u0435')), + ('material', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='courses.Homework', verbose_name='\u0414\u043e\u043c\u0430\u0448\u043d\u0435\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435')), + ('parent', models.ForeignKey(blank=True, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, to='journals.HomeworkJ', verbose_name='\u0416\u0443\u0440\u043d\u0430\u043b')), + ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='h_t_student', to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442')), + ('teacher', models.ForeignKey(blank=True, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='h_t_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044c')), + ], + options={ + 'ordering': ['id'], + 'verbose_name': '\u041f\u043e\u043f\u044b\u0442\u043a\u0430 \u0441\u0434\u0430\u0447\u0438 \u0414\u0417', + 'verbose_name_plural': '\u041f\u043e\u043f\u044b\u0442\u043a\u0438 \u0441\u0434\u0430\u0447\u0438 \u0414\u0417', + }, + ), + migrations.CreateModel( + name='JournalsReports', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('s_date', models.DateField(verbose_name='\u041e\u0442')), + ('f_date', models.DateField(blank=True, null=True, verbose_name='\u0414\u043e')), + ('sent', models.BooleanField(default=False, editable=False, verbose_name='\u041e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d')), + ('course', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='courses.Course', verbose_name='\u041a\u0443\u0440\u0441')), + ('student', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='report_student', to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442')), + ('teacher', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='report_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044c')), + ('to', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='report_to', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u043e\u043b\u0443\u0447\u0430\u0442\u0435\u043b\u044c')), + ], + options={ + 'verbose_name': '\u041e\u0442\u0447\u0435\u0442 \u043f\u043e \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044e', + 'verbose_name_plural': '\u041e\u0442\u0447\u0435\u0442\u044b \u043f\u043e \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044f\u043c', + }, + ), + migrations.CreateModel( + name='LessonJ', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('success', models.BooleanField(default=False, verbose_name='\u041f\u0440\u043e\u0439\u0434\u0435\u043d\u043e')), + ('date', models.DateTimeField(null=True, verbose_name='\u0414\u0430\u0442\u0430 \u043d\u0430\u0447\u0430\u043b\u0430')), + ('f_date', models.DateTimeField(blank=True, null=True, verbose_name='\u0414\u0430\u0442\u0430 \u0437\u0430\u0432\u0435\u0440\u043d\u0435\u0448\u0438\u044f')), + ('material', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='courses.Lesson', verbose_name='\u0423\u0440\u043e\u043a')), + ('parent', models.ForeignKey(blank=True, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, to='journals.CourseThemeJ', verbose_name='\u0416\u0443\u0440\u043d\u0430\u043b \u0442\u0435\u043c\u044b')), + ('student', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442')), + ], + options={ + 'ordering': ['material__sort'], + 'verbose_name': '\u0416\u0443\u0440\u0430\u043d\u043b \u0443\u0440\u043e\u043a\u0430', + 'verbose_name_plural': '\u0416\u0443\u0440\u043d\u0430\u043b\u044b \u0443\u0440\u043e\u043a\u043e\u0432', + }, + ), + migrations.CreateModel( + name='TeacherJ', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('full', models.BooleanField(default=False, verbose_name='\u0416\u0443\u0440\u043d\u0430\u043b \u0441\u043e\u0437\u0434\u0430\u043d')), + ('progress', models.IntegerField(default=0, verbose_name='\u041f\u0440\u043e\u0433\u0440\u0435\u0441\u0441')), + ('current_token', models.CharField(blank=True, default='', max_length=100, verbose_name='\u0422\u0435\u043a\u0443\u0449\u0438\u0439 \u043a\u043b\u044e\u0447')), + ('start_date', models.DateTimeField(blank=True, null=True, verbose_name='\u0414\u0430\u0442\u0430 \u043d\u0430\u0447\u0430\u043b\u0430')), + ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='courses.Course', verbose_name='\u041a\u0443\u0440\u0441')), + ('student', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='teacherJ_student', to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442')), + ('teacher', models.ForeignKey(blank=True, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='teacherJ_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044c')), + ], + options={ + 'verbose_name': '\u0416\u0443\u0440\u043d\u0430\u043b \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u043d\u0438\u044f', + 'verbose_name_plural': '\u0416\u0443\u0440\u043d\u0430\u043b\u044b \u043f\u0440\u043e\u043f\u043e\u0434\u0430\u0432\u0430\u043d\u0438\u044f', + }, + ), + migrations.AddField( + model_name='coursethemej', + name='parent', + field=models.ForeignKey(blank=True, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, to='journals.TeacherJ', verbose_name='\u0416\u0443\u0440\u043d\u0430\u043b \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u043d\u0438\u044f'), + ), + migrations.AddField( + model_name='coursethemej', + name='student', + field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442'), + ), + ] diff --git a/journals/migrations/0002_auto_20160318_1909.py b/journals/migrations/0002_auto_20160318_1909.py old mode 100644 new mode 100755 index 6ba0fde..22eb994 --- a/journals/migrations/0002_auto_20160318_1909.py +++ b/journals/migrations/0002_auto_20160318_1909.py @@ -1,22 +1,22 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-03-18 19:09 -from __future__ import unicode_literals - -from django.conf import settings -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0001_initial'), - ] - - operations = [ - migrations.AlterField( - model_name='homeworkj', - name='student', - field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='h_student', to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-03-18 19:09 +from __future__ import unicode_literals + +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0001_initial'), + ] + + operations = [ + migrations.AlterField( + model_name='homeworkj', + name='student', + field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='h_student', to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442'), + ), + ] diff --git a/journals/migrations/0003_auto_20160322_1359.py b/journals/migrations/0003_auto_20160322_1359.py old mode 100644 new mode 100755 index b96bf17..2d80d7e --- a/journals/migrations/0003_auto_20160322_1359.py +++ b/journals/migrations/0003_auto_20160322_1359.py @@ -1,35 +1,35 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-03-22 13:59 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0002_auto_20160318_1909'), - ] - - operations = [ - migrations.AddField( - model_name='coursethemej', - name='set_open', - field=models.BooleanField(default=False, verbose_name='\u041d\u0430\u0441\u0438\u043b\u044c\u043d\u043e \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f'), - ), - migrations.AddField( - model_name='examj', - name='set_open', - field=models.BooleanField(default=False, verbose_name='\u041d\u0430\u0441\u0438\u043b\u044c\u043d\u043e \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f'), - ), - migrations.AddField( - model_name='homeworkj', - name='set_open', - field=models.BooleanField(default=False, verbose_name='\u041d\u0430\u0441\u0438\u043b\u044c\u043d\u043e \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f'), - ), - migrations.AddField( - model_name='lessonj', - name='set_open', - field=models.BooleanField(default=False, verbose_name='\u041d\u0430\u0441\u0438\u043b\u044c\u043d\u043e \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-03-22 13:59 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0002_auto_20160318_1909'), + ] + + operations = [ + migrations.AddField( + model_name='coursethemej', + name='set_open', + field=models.BooleanField(default=False, verbose_name='\u041d\u0430\u0441\u0438\u043b\u044c\u043d\u043e \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f'), + ), + migrations.AddField( + model_name='examj', + name='set_open', + field=models.BooleanField(default=False, verbose_name='\u041d\u0430\u0441\u0438\u043b\u044c\u043d\u043e \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f'), + ), + migrations.AddField( + model_name='homeworkj', + name='set_open', + field=models.BooleanField(default=False, verbose_name='\u041d\u0430\u0441\u0438\u043b\u044c\u043d\u043e \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f'), + ), + migrations.AddField( + model_name='lessonj', + name='set_open', + field=models.BooleanField(default=False, verbose_name='\u041d\u0430\u0441\u0438\u043b\u044c\u043d\u043e \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f'), + ), + ] diff --git a/journals/migrations/0004_teacherj_opens.py b/journals/migrations/0004_teacherj_opens.py old mode 100644 new mode 100755 index 9d49bf3..067b07b --- a/journals/migrations/0004_teacherj_opens.py +++ b/journals/migrations/0004_teacherj_opens.py @@ -1,21 +1,21 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-03-22 18:52 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('courses', '0003_auto_20160322_1852'), - ('journals', '0003_auto_20160322_1359'), - ] - - operations = [ - migrations.AddField( - model_name='teacherj', - name='opens', - field=models.ManyToManyField(blank=True, to='courses.CourseMap', verbose_name='\u041d\u0430\u0441\u0438\u043b\u044c\u043d\u044b\u0435 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-03-22 18:52 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('courses', '0003_auto_20160322_1852'), + ('journals', '0003_auto_20160322_1359'), + ] + + operations = [ + migrations.AddField( + model_name='teacherj', + name='opens', + field=models.ManyToManyField(blank=True, to='courses.CourseMap', verbose_name='\u041d\u0430\u0441\u0438\u043b\u044c\u043d\u044b\u0435 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f'), + ), + ] diff --git a/journals/migrations/0005_auto_20160329_1930.py b/journals/migrations/0005_auto_20160329_1930.py old mode 100644 new mode 100755 index 487df94..1383bcc --- a/journals/migrations/0005_auto_20160329_1930.py +++ b/journals/migrations/0005_auto_20160329_1930.py @@ -1,31 +1,31 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-03-29 19:30 -from __future__ import unicode_literals - -from django.conf import settings -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0004_teacherj_opens'), - ] - - operations = [ - migrations.AlterModelOptions( - name='homeworktry', - options={'ordering': ['date'], 'verbose_name': '\u041f\u043e\u043f\u044b\u0442\u043a\u0430 \u0441\u0434\u0430\u0447\u0438 \u0414\u0417', 'verbose_name_plural': '\u041f\u043e\u043f\u044b\u0442\u043a\u0438 \u0441\u0434\u0430\u0447\u0438 \u0414\u0417'}, - ), - migrations.AlterField( - model_name='homeworkj', - name='teacher', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='h_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u042d\u043a\u0437\u0430\u043c\u0435\u043d\u0430\u0442\u043e\u0440'), - ), - migrations.AlterField( - model_name='teacherj', - name='opens', - field=models.ManyToManyField(blank=True, editable=False, to='courses.CourseMap', verbose_name='\u041d\u0430\u0441\u0438\u043b\u044c\u043d\u044b\u0435 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-03-29 19:30 +from __future__ import unicode_literals + +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0004_teacherj_opens'), + ] + + operations = [ + migrations.AlterModelOptions( + name='homeworktry', + options={'ordering': ['date'], 'verbose_name': '\u041f\u043e\u043f\u044b\u0442\u043a\u0430 \u0441\u0434\u0430\u0447\u0438 \u0414\u0417', 'verbose_name_plural': '\u041f\u043e\u043f\u044b\u0442\u043a\u0438 \u0441\u0434\u0430\u0447\u0438 \u0414\u0417'}, + ), + migrations.AlterField( + model_name='homeworkj', + name='teacher', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='h_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u042d\u043a\u0437\u0430\u043c\u0435\u043d\u0430\u0442\u043e\u0440'), + ), + migrations.AlterField( + model_name='teacherj', + name='opens', + field=models.ManyToManyField(blank=True, editable=False, to='courses.CourseMap', verbose_name='\u041d\u0430\u0441\u0438\u043b\u044c\u043d\u044b\u0435 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f'), + ), + ] diff --git a/journals/migrations/0006_auto_20160331_2030.py b/journals/migrations/0006_auto_20160331_2030.py old mode 100644 new mode 100755 index b115b3a..52ab724 --- a/journals/migrations/0006_auto_20160331_2030.py +++ b/journals/migrations/0006_auto_20160331_2030.py @@ -1,42 +1,42 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-03-31 20:30 -from __future__ import unicode_literals - -from django.conf import settings -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0005_auto_20160329_1930'), - ] - - operations = [ - migrations.AlterField( - model_name='examj', - name='teacher', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='e_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u042d\u043a\u0437\u0430\u043c\u0435\u043d\u0430\u0442\u043e\u0440'), - ), - migrations.AlterField( - model_name='examtry', - name='teacher', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='e_t_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044c'), - ), - migrations.AlterField( - model_name='homeworktry', - name='teacher', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='h_t_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044c'), - ), - migrations.AlterField( - model_name='lessonj', - name='date', - field=models.DateTimeField(blank=True, null=True, verbose_name='\u0414\u0430\u0442\u0430 \u043d\u0430\u0447\u0430\u043b\u0430'), - ), - migrations.AlterField( - model_name='teacherj', - name='teacher', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='teacherJ_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044c'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-03-31 20:30 +from __future__ import unicode_literals + +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0005_auto_20160329_1930'), + ] + + operations = [ + migrations.AlterField( + model_name='examj', + name='teacher', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='e_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u042d\u043a\u0437\u0430\u043c\u0435\u043d\u0430\u0442\u043e\u0440'), + ), + migrations.AlterField( + model_name='examtry', + name='teacher', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='e_t_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044c'), + ), + migrations.AlterField( + model_name='homeworktry', + name='teacher', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='h_t_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044c'), + ), + migrations.AlterField( + model_name='lessonj', + name='date', + field=models.DateTimeField(blank=True, null=True, verbose_name='\u0414\u0430\u0442\u0430 \u043d\u0430\u0447\u0430\u043b\u0430'), + ), + migrations.AlterField( + model_name='teacherj', + name='teacher', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='teacherJ_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044c'), + ), + ] diff --git a/journals/migrations/0007_auto_20160405_2045.py b/journals/migrations/0007_auto_20160405_2045.py old mode 100644 new mode 100755 index d683b1e..156c17a --- a/journals/migrations/0007_auto_20160405_2045.py +++ b/journals/migrations/0007_auto_20160405_2045.py @@ -1,31 +1,31 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-04-05 20:45 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0006_auto_20160331_2030'), - ] - - operations = [ - migrations.AddField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 5, 20, 45, 37, 558604), verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='journalsreports', - name='f_date', - field=models.DateField(blank=True, help_text='\u041d\u0435 \u0432\u043a\u043b\u044e\u0447\u0430\u044f', null=True, verbose_name='\u0414\u043e'), - ), - migrations.AlterField( - model_name='journalsreports', - name='s_date', - field=models.DateField(help_text='\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e', verbose_name='\u041e\u0442'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-04-05 20:45 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0006_auto_20160331_2030'), + ] + + operations = [ + migrations.AddField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 5, 20, 45, 37, 558604), verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='journalsreports', + name='f_date', + field=models.DateField(blank=True, help_text='\u041d\u0435 \u0432\u043a\u043b\u044e\u0447\u0430\u044f', null=True, verbose_name='\u0414\u043e'), + ), + migrations.AlterField( + model_name='journalsreports', + name='s_date', + field=models.DateField(help_text='\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e', verbose_name='\u041e\u0442'), + ), + ] diff --git a/journals/migrations/0008_auto_20160407_1741.py b/journals/migrations/0008_auto_20160407_1741.py old mode 100644 new mode 100755 index 3ffe2a7..14db21f --- a/journals/migrations/0008_auto_20160407_1741.py +++ b/journals/migrations/0008_auto_20160407_1741.py @@ -1,21 +1,21 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-04-07 17:41 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0007_auto_20160405_2045'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 7, 17, 41, 52, 720478), verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-04-07 17:41 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0007_auto_20160405_2045'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 7, 17, 41, 52, 720478), verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0009_auto_20160407_2006.py b/journals/migrations/0009_auto_20160407_2006.py old mode 100644 new mode 100755 index 6b58eec..6de423f --- a/journals/migrations/0009_auto_20160407_2006.py +++ b/journals/migrations/0009_auto_20160407_2006.py @@ -1,21 +1,21 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-04-07 20:06 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0008_auto_20160407_1741'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 7, 20, 6, 28, 211597), verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-04-07 20:06 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0008_auto_20160407_1741'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 7, 20, 6, 28, 211597), verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0010_auto_20160413_0207.py b/journals/migrations/0010_auto_20160413_0207.py old mode 100644 new mode 100755 index 8891416..de1256f --- a/journals/migrations/0010_auto_20160413_0207.py +++ b/journals/migrations/0010_auto_20160413_0207.py @@ -1,43 +1,43 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-13 02:07 -from __future__ import unicode_literals - -import datetime -from django.conf import settings -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - migrations.swappable_dependency(settings.AUTH_USER_MODEL), - ('courses', '0006_auto_20160407_2006'), - ('journals', '0009_auto_20160407_2006'), - ] - - operations = [ - migrations.CreateModel( - name='ProgressReports', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('s_date', models.DateField(help_text='\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e', verbose_name='\u041e\u0442')), - ('f_date', models.DateField(blank=True, help_text='\u041d\u0435 \u0432\u043a\u043b\u044e\u0447\u0430\u044f', null=True, verbose_name='\u0414\u043e')), - ('sent', models.BooleanField(default=False, editable=False, verbose_name='\u041e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d')), - ('date', models.DateTimeField(default=datetime.datetime(2016, 4, 13, 2, 7, 43, 239373), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430')), - ('course', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='courses.Course', verbose_name='\u041a\u0443\u0440\u0441')), - ('student', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='progress_student', to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442')), - ('teacher', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='progress_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044c')), - ('to', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='progress_to', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u043e\u043b\u0443\u0447\u0430\u0442\u0435\u043b\u044c')), - ], - options={ - 'verbose_name': '\u041e\u0442\u0447\u0435\u0442 \u043f\u043e \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044e', - 'verbose_name_plural': '\u041e\u0442\u0447\u0435\u0442\u044b \u043f\u043e \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044f\u043c', - }, - ), - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 13, 2, 7, 43, 238580), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-13 02:07 +from __future__ import unicode_literals + +import datetime +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('courses', '0006_auto_20160407_2006'), + ('journals', '0009_auto_20160407_2006'), + ] + + operations = [ + migrations.CreateModel( + name='ProgressReports', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('s_date', models.DateField(help_text='\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e', verbose_name='\u041e\u0442')), + ('f_date', models.DateField(blank=True, help_text='\u041d\u0435 \u0432\u043a\u043b\u044e\u0447\u0430\u044f', null=True, verbose_name='\u0414\u043e')), + ('sent', models.BooleanField(default=False, editable=False, verbose_name='\u041e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d')), + ('date', models.DateTimeField(default=datetime.datetime(2016, 4, 13, 2, 7, 43, 239373), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430')), + ('course', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='courses.Course', verbose_name='\u041a\u0443\u0440\u0441')), + ('student', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='progress_student', to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442')), + ('teacher', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='progress_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044c')), + ('to', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='progress_to', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u043e\u043b\u0443\u0447\u0430\u0442\u0435\u043b\u044c')), + ], + options={ + 'verbose_name': '\u041e\u0442\u0447\u0435\u0442 \u043f\u043e \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044e', + 'verbose_name_plural': '\u041e\u0442\u0447\u0435\u0442\u044b \u043f\u043e \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044f\u043c', + }, + ), + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 13, 2, 7, 43, 238580), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0011_auto_20160413_0214.py b/journals/migrations/0011_auto_20160413_0214.py old mode 100644 new mode 100755 index 1c2d659..9a46d7e --- a/journals/migrations/0011_auto_20160413_0214.py +++ b/journals/migrations/0011_auto_20160413_0214.py @@ -1,37 +1,37 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-13 02:14 -from __future__ import unicode_literals - -import datetime -from django.conf import settings -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0010_auto_20160413_0207'), - ] - - operations = [ - migrations.AlterModelOptions( - name='progressreports', - options={'verbose_name': '\u041e\u0442\u0447\u0435\u0442 \u043f\u043e \u043f\u0440\u043e\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u044f\u043c', 'verbose_name_plural': '\u041e\u0442\u0447\u0435\u0442\u044b \u043f\u043e \u043f\u0440\u043e\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u044f\u043c'}, - ), - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 13, 2, 14, 4, 433421), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='progressreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 13, 2, 14, 4, 434170), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='progressreports', - name='to', - field=models.ForeignKey(blank=True, help_text='\u0415\u0441\u043b\u0438 \u043d\u0435 \u0443\u043a\u0430\u0437\u0430\u043d\u0430: \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0433\u0440\u0443\u0436\u0435\u043d \u0431\u043e\u043b\u044c\u0448\u043e\u0439, \u0436\u0438\u0440\u043d\u044b\u0439 \u043e\u0442\u0447\u0435\u0442 \u043f\u043e \u0432\u0441\u0435\u043c\u0443 \u0438 \u0432\u0441\u044f', on_delete=django.db.models.deletion.CASCADE, related_name='progress_to', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u043e\u043b\u0443\u0447\u0430\u0442\u0435\u043b\u044c'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-13 02:14 +from __future__ import unicode_literals + +import datetime +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0010_auto_20160413_0207'), + ] + + operations = [ + migrations.AlterModelOptions( + name='progressreports', + options={'verbose_name': '\u041e\u0442\u0447\u0435\u0442 \u043f\u043e \u043f\u0440\u043e\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u044f\u043c', 'verbose_name_plural': '\u041e\u0442\u0447\u0435\u0442\u044b \u043f\u043e \u043f\u0440\u043e\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u044f\u043c'}, + ), + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 13, 2, 14, 4, 433421), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='progressreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 13, 2, 14, 4, 434170), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='progressreports', + name='to', + field=models.ForeignKey(blank=True, help_text='\u0415\u0441\u043b\u0438 \u043d\u0435 \u0443\u043a\u0430\u0437\u0430\u043d\u0430: \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0433\u0440\u0443\u0436\u0435\u043d \u0431\u043e\u043b\u044c\u0448\u043e\u0439, \u0436\u0438\u0440\u043d\u044b\u0439 \u043e\u0442\u0447\u0435\u0442 \u043f\u043e \u0432\u0441\u0435\u043c\u0443 \u0438 \u0432\u0441\u044f', on_delete=django.db.models.deletion.CASCADE, related_name='progress_to', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u043e\u043b\u0443\u0447\u0430\u0442\u0435\u043b\u044c'), + ), + ] diff --git a/journals/migrations/0012_auto_20160413_0215.py b/journals/migrations/0012_auto_20160413_0215.py old mode 100644 new mode 100755 index f8fc90e..c6c0856 --- a/journals/migrations/0012_auto_20160413_0215.py +++ b/journals/migrations/0012_auto_20160413_0215.py @@ -1,38 +1,38 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-13 02:15 -from __future__ import unicode_literals - -import datetime -from django.conf import settings -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0011_auto_20160413_0214'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 13, 2, 15, 7, 903719), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='progressreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 13, 2, 15, 7, 905393), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='progressreports', - name='s_date', - field=models.DateField(blank=True, help_text='\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e. \u0415\u0441\u043b\u0438 \u043d\u0435 \u0443\u043a\u0430\u0437\u0430\u043d\u0430: \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0433\u0440\u0443\u0436\u0435\u043d \u0431\u043e\u043b\u044c\u0448\u043e\u0439, \u0436\u0438\u0440\u043d\u044b\u0439 \u043e\u0442\u0447\u0435\u0442 \u043f\u043e \u0432\u0441\u0435\u043c\u0443 \u0438 \u0432\u0441\u044f', verbose_name='\u041e\u0442'), - ), - migrations.AlterField( - model_name='progressreports', - name='to', - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='progress_to', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u043e\u043b\u0443\u0447\u0430\u0442\u0435\u043b\u044c'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-13 02:15 +from __future__ import unicode_literals + +import datetime +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0011_auto_20160413_0214'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 13, 2, 15, 7, 903719), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='progressreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 13, 2, 15, 7, 905393), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='progressreports', + name='s_date', + field=models.DateField(blank=True, help_text='\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e. \u0415\u0441\u043b\u0438 \u043d\u0435 \u0443\u043a\u0430\u0437\u0430\u043d\u0430: \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0433\u0440\u0443\u0436\u0435\u043d \u0431\u043e\u043b\u044c\u0448\u043e\u0439, \u0436\u0438\u0440\u043d\u044b\u0439 \u043e\u0442\u0447\u0435\u0442 \u043f\u043e \u0432\u0441\u0435\u043c\u0443 \u0438 \u0432\u0441\u044f', verbose_name='\u041e\u0442'), + ), + migrations.AlterField( + model_name='progressreports', + name='to', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='progress_to', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u043e\u043b\u0443\u0447\u0430\u0442\u0435\u043b\u044c'), + ), + ] diff --git a/journals/migrations/0013_auto_20160414_1652.py b/journals/migrations/0013_auto_20160414_1652.py old mode 100644 new mode 100755 index 0819cdf..6e3ee2b --- a/journals/migrations/0013_auto_20160414_1652.py +++ b/journals/migrations/0013_auto_20160414_1652.py @@ -1,26 +1,26 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-14 16:52 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0012_auto_20160413_0215'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 14, 16, 52, 14, 316432), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='progressreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 14, 16, 52, 14, 317184), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-14 16:52 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0012_auto_20160413_0215'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 14, 16, 52, 14, 316432), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='progressreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 14, 16, 52, 14, 317184), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0014_auto_20160414_1941.py b/journals/migrations/0014_auto_20160414_1941.py old mode 100644 new mode 100755 index ccbd8e2..e20a0df --- a/journals/migrations/0014_auto_20160414_1941.py +++ b/journals/migrations/0014_auto_20160414_1941.py @@ -1,26 +1,26 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-14 19:41 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0013_auto_20160414_1652'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 14, 19, 41, 21, 981410), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='progressreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 14, 19, 41, 21, 982815), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-14 19:41 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0013_auto_20160414_1652'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 14, 19, 41, 21, 981410), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='progressreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 14, 19, 41, 21, 982815), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0015_auto_20160414_1944.py b/journals/migrations/0015_auto_20160414_1944.py old mode 100644 new mode 100755 index a8ec4b8..a1b2a53 --- a/journals/migrations/0015_auto_20160414_1944.py +++ b/journals/migrations/0015_auto_20160414_1944.py @@ -1,26 +1,26 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-14 19:44 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0014_auto_20160414_1941'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 14, 19, 44, 42, 230690), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='progressreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 14, 19, 44, 42, 231405), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-14 19:44 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0014_auto_20160414_1941'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 14, 19, 44, 42, 230690), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='progressreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 14, 19, 44, 42, 231405), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0016_auto_20160419_1109.py b/journals/migrations/0016_auto_20160419_1109.py old mode 100644 new mode 100755 index 2dd2875..75e5be1 --- a/journals/migrations/0016_auto_20160419_1109.py +++ b/journals/migrations/0016_auto_20160419_1109.py @@ -1,37 +1,37 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-19 11:09 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('courses', '0007_lesson_video_date'), - ('journals', '0015_auto_20160414_1944'), - ] - - operations = [ - migrations.AddField( - model_name='teacherj', - name='waiting', - field=models.ManyToManyField(blank=True, editable=False, null=True, related_name='map_waiting', to='courses.CourseMap', verbose_name='\u0414\u043e\u043f \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u044f'), - ), - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 19, 11, 9, 36, 483730), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='progressreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 19, 11, 9, 36, 484535), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='teacherj', - name='opens', - field=models.ManyToManyField(blank=True, editable=False, related_name='map_opens', to='courses.CourseMap', verbose_name='\u041d\u0430\u0441\u0438\u043b\u044c\u043d\u044b\u0435 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-19 11:09 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('courses', '0007_lesson_video_date'), + ('journals', '0015_auto_20160414_1944'), + ] + + operations = [ + migrations.AddField( + model_name='teacherj', + name='waiting', + field=models.ManyToManyField(blank=True, editable=False, null=True, related_name='map_waiting', to='courses.CourseMap', verbose_name='\u0414\u043e\u043f \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u044f'), + ), + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 19, 11, 9, 36, 483730), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='progressreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 19, 11, 9, 36, 484535), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='teacherj', + name='opens', + field=models.ManyToManyField(blank=True, editable=False, related_name='map_opens', to='courses.CourseMap', verbose_name='\u041d\u0430\u0441\u0438\u043b\u044c\u043d\u044b\u0435 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f'), + ), + ] diff --git a/journals/migrations/0017_auto_20160419_1426.py b/journals/migrations/0017_auto_20160419_1426.py old mode 100644 new mode 100755 index 91f6241..1b21604 --- a/journals/migrations/0017_auto_20160419_1426.py +++ b/journals/migrations/0017_auto_20160419_1426.py @@ -1,31 +1,31 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-19 14:26 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0016_auto_20160419_1109'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 19, 14, 26, 6, 482839), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='progressreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 19, 14, 26, 6, 483541), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='teacherj', - name='waiting', - field=models.ManyToManyField(blank=True, null=True, related_name='map_waiting', to='courses.CourseMap', verbose_name='\u0414\u043e\u043f \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u044f'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-19 14:26 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0016_auto_20160419_1109'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 19, 14, 26, 6, 482839), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='progressreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 19, 14, 26, 6, 483541), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='teacherj', + name='waiting', + field=models.ManyToManyField(blank=True, null=True, related_name='map_waiting', to='courses.CourseMap', verbose_name='\u0414\u043e\u043f \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u044f'), + ), + ] diff --git a/journals/migrations/0018_auto_20160420_1749.py b/journals/migrations/0018_auto_20160420_1749.py old mode 100644 new mode 100755 index 47f41ea..ef3b96f --- a/journals/migrations/0018_auto_20160420_1749.py +++ b/journals/migrations/0018_auto_20160420_1749.py @@ -1,31 +1,31 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-20 17:49 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0017_auto_20160419_1426'), - ] - - operations = [ - migrations.AddField( - model_name='coursethemej', - name='block', - field=models.BooleanField(default=False, verbose_name='\u0417\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u0435 \u043f\u0440\u043e\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u0435'), - ), - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 20, 17, 49, 55, 864154), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='progressreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 20, 17, 49, 55, 864980), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-20 17:49 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0017_auto_20160419_1426'), + ] + + operations = [ + migrations.AddField( + model_name='coursethemej', + name='block', + field=models.BooleanField(default=False, verbose_name='\u0417\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u0435 \u043f\u0440\u043e\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u0435'), + ), + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 20, 17, 49, 55, 864154), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='progressreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 20, 17, 49, 55, 864980), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0019_auto_20160420_1819.py b/journals/migrations/0019_auto_20160420_1819.py old mode 100644 new mode 100755 index 92731df..779ae8b --- a/journals/migrations/0019_auto_20160420_1819.py +++ b/journals/migrations/0019_auto_20160420_1819.py @@ -1,30 +1,30 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-20 18:19 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0018_auto_20160420_1749'), - ] - - operations = [ - migrations.RemoveField( - model_name='coursethemej', - name='block', - ), - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 20, 18, 19, 6, 373257), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='progressreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 20, 18, 19, 6, 374450), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-20 18:19 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0018_auto_20160420_1749'), + ] + + operations = [ + migrations.RemoveField( + model_name='coursethemej', + name='block', + ), + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 20, 18, 19, 6, 373257), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='progressreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 20, 18, 19, 6, 374450), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0020_auto_20160425_1656.py b/journals/migrations/0020_auto_20160425_1656.py old mode 100644 new mode 100755 index 20a63f5..ddc1ab5 --- a/journals/migrations/0020_auto_20160425_1656.py +++ b/journals/migrations/0020_auto_20160425_1656.py @@ -1,46 +1,46 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-25 16:56 -from __future__ import unicode_literals - -import datetime -from django.conf import settings -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('courses', '0012_course_diploma_key'), - migrations.swappable_dependency(settings.AUTH_USER_MODEL), - ('journals', '0019_auto_20160420_1819'), - ] - - operations = [ - migrations.CreateModel( - name='Diploma', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('key', models.CharField(max_length=255, verbose_name='\u041a\u043b\u044e\u0447')), - ('date', models.DateField(default=datetime.date.today, verbose_name='\u0414\u0430\u0442\u0430 \u0432\u044b\u0434\u0430\u0447\u0438')), - ('out_image', models.ImageField(upload_to=b'', verbose_name='\u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430 c \u043f\u0435\u0447\u0430\u0442\u044c\u044e')), - ('in_image', models.ImageField(upload_to=b'', verbose_name='\u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430 c \u043f\u0435\u0447\u0430\u0442\u044c\u044e')), - ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='courses.Course', verbose_name='\u043a\u0443\u0440\u0441')), - ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442')), - ], - options={ - 'verbose_name': '\u0414\u0438\u043f\u043b\u043e\u043c\u044b', - 'verbose_name_plural': '\u041f\u043e\u043f\u044b\u0442\u043a\u0438 \u0441\u0434\u0430\u0447\u0438 \u042d\u043a\u0437\u0430\u043c\u0435\u043d\u043e\u0432', - }, - ), - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 25, 16, 56, 34, 811002), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='progressreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 25, 16, 56, 34, 811746), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-25 16:56 +from __future__ import unicode_literals + +import datetime +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('courses', '0012_course_diploma_key'), + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('journals', '0019_auto_20160420_1819'), + ] + + operations = [ + migrations.CreateModel( + name='Diploma', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('key', models.CharField(max_length=255, verbose_name='\u041a\u043b\u044e\u0447')), + ('date', models.DateField(default=datetime.date.today, verbose_name='\u0414\u0430\u0442\u0430 \u0432\u044b\u0434\u0430\u0447\u0438')), + ('out_image', models.ImageField(upload_to=b'', verbose_name='\u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430 c \u043f\u0435\u0447\u0430\u0442\u044c\u044e')), + ('in_image', models.ImageField(upload_to=b'', verbose_name='\u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430 c \u043f\u0435\u0447\u0430\u0442\u044c\u044e')), + ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='courses.Course', verbose_name='\u043a\u0443\u0440\u0441')), + ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442')), + ], + options={ + 'verbose_name': '\u0414\u0438\u043f\u043b\u043e\u043c\u044b', + 'verbose_name_plural': '\u041f\u043e\u043f\u044b\u0442\u043a\u0438 \u0441\u0434\u0430\u0447\u0438 \u042d\u043a\u0437\u0430\u043c\u0435\u043d\u043e\u0432', + }, + ), + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 25, 16, 56, 34, 811002), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='progressreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 25, 16, 56, 34, 811746), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0021_auto_20160425_1737.py b/journals/migrations/0021_auto_20160425_1737.py old mode 100644 new mode 100755 index 2726e83..846acb8 --- a/journals/migrations/0021_auto_20160425_1737.py +++ b/journals/migrations/0021_auto_20160425_1737.py @@ -1,37 +1,37 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-25 17:37 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0020_auto_20160425_1656'), - ] - - operations = [ - migrations.RemoveField( - model_name='diploma', - name='course', - ), - migrations.RemoveField( - model_name='diploma', - name='student', - ), - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 25, 17, 37, 54, 415640), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='progressreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 25, 17, 37, 54, 416476), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.DeleteModel( - name='Diploma', - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-25 17:37 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0020_auto_20160425_1656'), + ] + + operations = [ + migrations.RemoveField( + model_name='diploma', + name='course', + ), + migrations.RemoveField( + model_name='diploma', + name='student', + ), + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 25, 17, 37, 54, 415640), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='progressreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 25, 17, 37, 54, 416476), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.DeleteModel( + name='Diploma', + ), + ] diff --git a/journals/migrations/0022_auto_20160426_1119.py b/journals/migrations/0022_auto_20160426_1119.py old mode 100644 new mode 100755 index a275b5d..e31c1cd --- a/journals/migrations/0022_auto_20160426_1119.py +++ b/journals/migrations/0022_auto_20160426_1119.py @@ -1,30 +1,30 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-26 11:19 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0021_auto_20160425_1737'), - ] - - operations = [ - migrations.RemoveField( - model_name='examj', - name='diploma', - ), - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 26, 11, 19, 28, 992777), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='progressreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 26, 11, 19, 28, 993857), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-26 11:19 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0021_auto_20160425_1737'), + ] + + operations = [ + migrations.RemoveField( + model_name='examj', + name='diploma', + ), + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 26, 11, 19, 28, 992777), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='progressreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 26, 11, 19, 28, 993857), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0023_auto_20160426_1240.py b/journals/migrations/0023_auto_20160426_1240.py old mode 100644 new mode 100755 index 2e3e5ec..37681e7 --- a/journals/migrations/0023_auto_20160426_1240.py +++ b/journals/migrations/0023_auto_20160426_1240.py @@ -1,44 +1,44 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-26 12:40 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('courses', '0017_auto_20160426_1240'), - ('journals', '0022_auto_20160426_1119'), - ] - - operations = [ - migrations.CreateModel( - name='DiplomaJ', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('date', models.DateField(default=datetime.date.today, verbose_name='\u0414\u0430\u0442\u0430 \u0432\u044b\u0434\u0430\u0447\u0438')), - ('key', models.CharField(max_length=255, verbose_name='\u041a\u043b\u044e\u0447')), - ('out_image', models.ImageField(upload_to='diploms', verbose_name='\u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430 \u0431\u0435\u0437 \u043f\u0435\u0447\u0430\u0442\u0438')), - ('in_image', models.ImageField(upload_to='diploms', verbose_name='\u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430 c \u043f\u0435\u0447\u0430\u0442\u044c\u044e')), - ('material', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='courses.Diploma', verbose_name='\u0428\u0430\u0431\u043b\u043e\u043d \u0434\u0438\u043f\u043b\u043e\u043c\u0430')), - ('parent', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='journals.ExamJ', verbose_name='\u0416\u0443\u0440\u043d\u0430\u043b \u0441\u0434\u0430\u0447\u0438')), - ], - options={ - 'verbose_name': '\u0416\u0443\u0440\u043d\u0430\u043b \u0434\u0438\u043f\u043b\u043e\u043c\u043e\u0432', - 'verbose_name_plural': '\u0416\u0443\u0440\u043d\u0430\u043b\u044b \u0434\u0438\u043f\u043b\u043e\u043c\u043e\u0432', - }, - ), - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 26, 12, 40, 4, 467932), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='progressreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 26, 12, 40, 4, 468672), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-26 12:40 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('courses', '0017_auto_20160426_1240'), + ('journals', '0022_auto_20160426_1119'), + ] + + operations = [ + migrations.CreateModel( + name='DiplomaJ', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('date', models.DateField(default=datetime.date.today, verbose_name='\u0414\u0430\u0442\u0430 \u0432\u044b\u0434\u0430\u0447\u0438')), + ('key', models.CharField(max_length=255, verbose_name='\u041a\u043b\u044e\u0447')), + ('out_image', models.ImageField(upload_to='diploms', verbose_name='\u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430 \u0431\u0435\u0437 \u043f\u0435\u0447\u0430\u0442\u0438')), + ('in_image', models.ImageField(upload_to='diploms', verbose_name='\u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430 c \u043f\u0435\u0447\u0430\u0442\u044c\u044e')), + ('material', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='courses.Diploma', verbose_name='\u0428\u0430\u0431\u043b\u043e\u043d \u0434\u0438\u043f\u043b\u043e\u043c\u0430')), + ('parent', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='journals.ExamJ', verbose_name='\u0416\u0443\u0440\u043d\u0430\u043b \u0441\u0434\u0430\u0447\u0438')), + ], + options={ + 'verbose_name': '\u0416\u0443\u0440\u043d\u0430\u043b \u0434\u0438\u043f\u043b\u043e\u043c\u043e\u0432', + 'verbose_name_plural': '\u0416\u0443\u0440\u043d\u0430\u043b\u044b \u0434\u0438\u043f\u043b\u043e\u043c\u043e\u0432', + }, + ), + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 26, 12, 40, 4, 467932), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='progressreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 26, 12, 40, 4, 468672), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0024_auto_20160426_1340.py b/journals/migrations/0024_auto_20160426_1340.py old mode 100644 new mode 100755 index a36d644..7e8678f --- a/journals/migrations/0024_auto_20160426_1340.py +++ b/journals/migrations/0024_auto_20160426_1340.py @@ -1,26 +1,26 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-26 13:40 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0023_auto_20160426_1240'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 26, 13, 40, 58, 509339), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='progressreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 26, 13, 40, 58, 510077), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-26 13:40 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0023_auto_20160426_1240'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 26, 13, 40, 58, 509339), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='progressreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 26, 13, 40, 58, 510077), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0025_auto_20160426_1342.py b/journals/migrations/0025_auto_20160426_1342.py old mode 100644 new mode 100755 index 27921bb..2a34318 --- a/journals/migrations/0025_auto_20160426_1342.py +++ b/journals/migrations/0025_auto_20160426_1342.py @@ -1,34 +1,34 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-26 13:42 -from __future__ import unicode_literals - -import datetime -from django.conf import settings -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - migrations.swappable_dependency(settings.AUTH_USER_MODEL), - ('journals', '0024_auto_20160426_1340'), - ] - - operations = [ - migrations.AddField( - model_name='diplomaj', - name='student', - field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442'), - ), - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 26, 13, 42, 20, 148906), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='progressreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 26, 13, 42, 20, 149697), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-26 13:42 +from __future__ import unicode_literals + +import datetime +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('journals', '0024_auto_20160426_1340'), + ] + + operations = [ + migrations.AddField( + model_name='diplomaj', + name='student', + field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442'), + ), + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 26, 13, 42, 20, 148906), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='progressreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 26, 13, 42, 20, 149697), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0026_auto_20160426_1711.py b/journals/migrations/0026_auto_20160426_1711.py old mode 100644 new mode 100755 index 2374096..c561962 --- a/journals/migrations/0026_auto_20160426_1711.py +++ b/journals/migrations/0026_auto_20160426_1711.py @@ -1,41 +1,41 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-26 17:11 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0025_auto_20160426_1342'), - ] - - operations = [ - migrations.AlterField( - model_name='diplomaj', - name='in_image', - field=models.ImageField(blank=True, upload_to='diploms', verbose_name='\u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430 c \u043f\u0435\u0447\u0430\u0442\u044c\u044e'), - ), - migrations.AlterField( - model_name='diplomaj', - name='key', - field=models.IntegerField(max_length=255, verbose_name='\u041a\u043b\u044e\u0447'), - ), - migrations.AlterField( - model_name='diplomaj', - name='out_image', - field=models.ImageField(blank=True, upload_to='diploms', verbose_name='\u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430 \u0431\u0435\u0437 \u043f\u0435\u0447\u0430\u0442\u0438'), - ), - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 26, 17, 11, 38, 672394), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='progressreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 26, 17, 11, 38, 673176), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-26 17:11 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0025_auto_20160426_1342'), + ] + + operations = [ + migrations.AlterField( + model_name='diplomaj', + name='in_image', + field=models.ImageField(blank=True, upload_to='diploms', verbose_name='\u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430 c \u043f\u0435\u0447\u0430\u0442\u044c\u044e'), + ), + migrations.AlterField( + model_name='diplomaj', + name='key', + field=models.IntegerField(max_length=255, verbose_name='\u041a\u043b\u044e\u0447'), + ), + migrations.AlterField( + model_name='diplomaj', + name='out_image', + field=models.ImageField(blank=True, upload_to='diploms', verbose_name='\u041a\u0430\u0440\u0442\u0438\u043d\u043a\u0430 \u0431\u0435\u0437 \u043f\u0435\u0447\u0430\u0442\u0438'), + ), + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 26, 17, 11, 38, 672394), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='progressreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 26, 17, 11, 38, 673176), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0027_auto_20160428_1531.py b/journals/migrations/0027_auto_20160428_1531.py old mode 100644 new mode 100755 index 65f6c4f..32c1095 --- a/journals/migrations/0027_auto_20160428_1531.py +++ b/journals/migrations/0027_auto_20160428_1531.py @@ -1,45 +1,45 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-28 15:31 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0026_auto_20160426_1711'), - ] - - operations = [ - migrations.AlterModelOptions( - name='coursethemej', - options={'ordering': ['material__sort'], 'verbose_name': '\u0416\u0443\u0440\u043d\u0430\u043b \u0442\u0435\u043c\u044b', 'verbose_name_plural': '\u0416\u0443\u0440\u043d\u0430\u043b \u0442\u0435\u043c\u044b'}, - ), - migrations.AlterModelOptions( - name='homeworkj', - options={'ordering': ['material__sort'], 'verbose_name': '\u0416\u0443\u0440\u043d\u0430\u043b \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u044b', 'verbose_name_plural': '\u0416\u0443\u0440\u043d\u0430\u043b\u044b \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u0445 \u0440\u0430\u0431\u043e\u0442'}, - ), - migrations.AlterField( - model_name='diplomaj', - name='key', - field=models.IntegerField(blank=True, max_length=255, verbose_name='\u041a\u043b\u044e\u0447'), - ), - migrations.AlterField( - model_name='diplomaj', - name='parent', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='journals.ExamJ', verbose_name='\u0416\u0443\u0440\u043d\u0430\u043b \u0441\u0434\u0430\u0447\u0438'), - ), - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 28, 15, 31, 56, 86358), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='progressreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 28, 15, 31, 56, 87092), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-28 15:31 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0026_auto_20160426_1711'), + ] + + operations = [ + migrations.AlterModelOptions( + name='coursethemej', + options={'ordering': ['material__sort'], 'verbose_name': '\u0416\u0443\u0440\u043d\u0430\u043b \u0442\u0435\u043c\u044b', 'verbose_name_plural': '\u0416\u0443\u0440\u043d\u0430\u043b \u0442\u0435\u043c\u044b'}, + ), + migrations.AlterModelOptions( + name='homeworkj', + options={'ordering': ['material__sort'], 'verbose_name': '\u0416\u0443\u0440\u043d\u0430\u043b \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u044b', 'verbose_name_plural': '\u0416\u0443\u0440\u043d\u0430\u043b\u044b \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u0445 \u0440\u0430\u0431\u043e\u0442'}, + ), + migrations.AlterField( + model_name='diplomaj', + name='key', + field=models.IntegerField(blank=True, max_length=255, verbose_name='\u041a\u043b\u044e\u0447'), + ), + migrations.AlterField( + model_name='diplomaj', + name='parent', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='journals.ExamJ', verbose_name='\u0416\u0443\u0440\u043d\u0430\u043b \u0441\u0434\u0430\u0447\u0438'), + ), + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 28, 15, 31, 56, 86358), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='progressreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 28, 15, 31, 56, 87092), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0028_auto_20160428_1554.py b/journals/migrations/0028_auto_20160428_1554.py old mode 100644 new mode 100755 index dbfd2ab..f06d102 --- a/journals/migrations/0028_auto_20160428_1554.py +++ b/journals/migrations/0028_auto_20160428_1554.py @@ -1,26 +1,26 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-28 15:54 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0027_auto_20160428_1531'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 28, 15, 54, 6, 268311), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='progressreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 28, 15, 54, 6, 269014), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-28 15:54 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0027_auto_20160428_1531'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 28, 15, 54, 6, 268311), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='progressreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 28, 15, 54, 6, 269014), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0029_auto_20160428_1556.py b/journals/migrations/0029_auto_20160428_1556.py old mode 100644 new mode 100755 index c779cb9..5b887fd --- a/journals/migrations/0029_auto_20160428_1556.py +++ b/journals/migrations/0029_auto_20160428_1556.py @@ -1,31 +1,31 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-28 15:56 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0028_auto_20160428_1554'), - ] - - operations = [ - migrations.AlterField( - model_name='diplomaj', - name='key', - field=models.IntegerField(blank=True, max_length=255, null=True, verbose_name='\u041a\u043b\u044e\u0447'), - ), - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 28, 15, 56, 6, 175947), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='progressreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 28, 15, 56, 6, 176431), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-28 15:56 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0028_auto_20160428_1554'), + ] + + operations = [ + migrations.AlterField( + model_name='diplomaj', + name='key', + field=models.IntegerField(blank=True, max_length=255, null=True, verbose_name='\u041a\u043b\u044e\u0447'), + ), + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 28, 15, 56, 6, 175947), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='progressreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 28, 15, 56, 6, 176431), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0030_auto_20160428_1633.py b/journals/migrations/0030_auto_20160428_1633.py old mode 100644 new mode 100755 index 4c36e88..e7a1f5d --- a/journals/migrations/0030_auto_20160428_1633.py +++ b/journals/migrations/0030_auto_20160428_1633.py @@ -1,31 +1,31 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-04-28 16:33 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0029_auto_20160428_1556'), - ] - - operations = [ - migrations.AddField( - model_name='diplomaj', - name='gen', - field=models.BooleanField(default=False, verbose_name='\u0421\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d'), - ), - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 28, 16, 33, 15, 465433), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='progressreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 4, 28, 16, 33, 15, 466154), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-04-28 16:33 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0029_auto_20160428_1556'), + ] + + operations = [ + migrations.AddField( + model_name='diplomaj', + name='gen', + field=models.BooleanField(default=False, verbose_name='\u0421\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d'), + ), + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 28, 16, 33, 15, 465433), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='progressreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 4, 28, 16, 33, 15, 466154), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0031_auto_20160506_1303.py b/journals/migrations/0031_auto_20160506_1303.py old mode 100644 new mode 100755 index b12acd9..43a6890 --- a/journals/migrations/0031_auto_20160506_1303.py +++ b/journals/migrations/0031_auto_20160506_1303.py @@ -1,26 +1,26 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.5 on 2016-05-06 13:03 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0030_auto_20160428_1633'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 5, 6, 13, 3, 19, 710064), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='progressreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 5, 6, 13, 3, 19, 710937), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.5 on 2016-05-06 13:03 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0030_auto_20160428_1633'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 5, 6, 13, 3, 19, 710064), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='progressreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 5, 6, 13, 3, 19, 710937), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0032_auto_20160530_0820.py b/journals/migrations/0032_auto_20160530_0820.py old mode 100644 new mode 100755 index 7c77fbc..ecbecc6 --- a/journals/migrations/0032_auto_20160530_0820.py +++ b/journals/migrations/0032_auto_20160530_0820.py @@ -1,40 +1,40 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-05-30 08:20 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0031_auto_20160506_1303'), - ] - - operations = [ - migrations.RemoveField( - model_name='progressreports', - name='course', - ), - migrations.RemoveField( - model_name='progressreports', - name='student', - ), - migrations.RemoveField( - model_name='progressreports', - name='teacher', - ), - migrations.RemoveField( - model_name='progressreports', - name='to', - ), - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 5, 30, 8, 20, 58, 734398), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.DeleteModel( - name='ProgressReports', - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-05-30 08:20 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0031_auto_20160506_1303'), + ] + + operations = [ + migrations.RemoveField( + model_name='progressreports', + name='course', + ), + migrations.RemoveField( + model_name='progressreports', + name='student', + ), + migrations.RemoveField( + model_name='progressreports', + name='teacher', + ), + migrations.RemoveField( + model_name='progressreports', + name='to', + ), + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 5, 30, 8, 20, 58, 734398), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.DeleteModel( + name='ProgressReports', + ), + ] diff --git a/journals/migrations/0033_auto_20160530_1320.py b/journals/migrations/0033_auto_20160530_1320.py old mode 100644 new mode 100755 index ef7bbe7..57a3fd8 --- a/journals/migrations/0033_auto_20160530_1320.py +++ b/journals/migrations/0033_auto_20160530_1320.py @@ -1,43 +1,43 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-05-30 13:20 -from __future__ import unicode_literals - -import datetime -from django.conf import settings -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - migrations.swappable_dependency(settings.AUTH_USER_MODEL), - ('courses', '0026_auto_20160506_1838'), - ('journals', '0032_auto_20160530_0820'), - ] - - operations = [ - migrations.CreateModel( - name='ReportDepth', - fields=[ - ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('s_date', models.DateTimeField(default=datetime.datetime.now, verbose_name='\u0414\u0430\u0442\u0430 \u0441\u0442\u0430\u0440\u0442\u0430')), - ('f_date', models.DateTimeField(blank=True, null=True, verbose_name='\u0414\u0430\u0442\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f')), - ('flag', models.CharField(blank=True, choices=[('G', ''), ('Y', ''), ('R', '')], max_length=1, null=True, verbose_name='\u0424\u043b\u0430\u0433 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f')), - ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='courses.Course', verbose_name='\u041a\u0443\u0440\u0441')), - ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='depth_report_student', to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442')), - ('teacher', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='depth_report_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044c')), - ('token', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='courses.CourseMap', verbose_name='\u0422\u043e\u0447\u043a\u0430 \u043a\u0443\u0440\u0441\u0430')), - ], - options={ - 'ordering': ['token'], - 'verbose_name': '\u0413\u043b\u0443\u0431\u043e\u043a\u0438\u0439 \u043e\u0442\u0447\u0435\u0442', - 'verbose_name_plural': '\u0413\u043b\u0443\u0431\u043e\u043a\u0438\u0439 \u043e\u0442\u0447\u0435\u0442', - }, - ), - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 5, 30, 13, 20, 18, 32192), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-05-30 13:20 +from __future__ import unicode_literals + +import datetime +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('courses', '0026_auto_20160506_1838'), + ('journals', '0032_auto_20160530_0820'), + ] + + operations = [ + migrations.CreateModel( + name='ReportDepth', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('s_date', models.DateTimeField(default=datetime.datetime.now, verbose_name='\u0414\u0430\u0442\u0430 \u0441\u0442\u0430\u0440\u0442\u0430')), + ('f_date', models.DateTimeField(blank=True, null=True, verbose_name='\u0414\u0430\u0442\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f')), + ('flag', models.CharField(blank=True, choices=[('G', ''), ('Y', ''), ('R', '')], max_length=1, null=True, verbose_name='\u0424\u043b\u0430\u0433 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f')), + ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='courses.Course', verbose_name='\u041a\u0443\u0440\u0441')), + ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='depth_report_student', to=settings.AUTH_USER_MODEL, verbose_name='\u0421\u0442\u0443\u0434\u0435\u043d\u0442')), + ('teacher', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='depth_report_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044c')), + ('token', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='courses.CourseMap', verbose_name='\u0422\u043e\u0447\u043a\u0430 \u043a\u0443\u0440\u0441\u0430')), + ], + options={ + 'ordering': ['token'], + 'verbose_name': '\u0413\u043b\u0443\u0431\u043e\u043a\u0438\u0439 \u043e\u0442\u0447\u0435\u0442', + 'verbose_name_plural': '\u0413\u043b\u0443\u0431\u043e\u043a\u0438\u0439 \u043e\u0442\u0447\u0435\u0442', + }, + ), + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 5, 30, 13, 20, 18, 32192), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0034_auto_20160530_1405.py b/journals/migrations/0034_auto_20160530_1405.py old mode 100644 new mode 100755 index 9bf9805..c393dda --- a/journals/migrations/0034_auto_20160530_1405.py +++ b/journals/migrations/0034_auto_20160530_1405.py @@ -1,28 +1,28 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-05-30 14:05 -from __future__ import unicode_literals - -import datetime -from django.conf import settings -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0033_auto_20160530_1320'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 5, 30, 14, 5, 8, 587794), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='reportdepth', - name='teacher', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='depth_report_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044c'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-05-30 14:05 +from __future__ import unicode_literals + +import datetime +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0033_auto_20160530_1320'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 5, 30, 14, 5, 8, 587794), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='reportdepth', + name='teacher', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='depth_report_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u041f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044c'), + ), + ] diff --git a/journals/migrations/0035_auto_20160607_1613.py b/journals/migrations/0035_auto_20160607_1613.py old mode 100644 new mode 100755 index 78c73ec..5bcbd1e --- a/journals/migrations/0035_auto_20160607_1613.py +++ b/journals/migrations/0035_auto_20160607_1613.py @@ -1,30 +1,30 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-06-07 16:13 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0034_auto_20160530_1405'), - ] - - operations = [ - migrations.AlterModelOptions( - name='reportdepth', - options={'ordering': ['s_date'], 'verbose_name': '\u0413\u043b\u0443\u0431\u043e\u043a\u0438\u0439 \u043e\u0442\u0447\u0435\u0442', 'verbose_name_plural': '\u0413\u043b\u0443\u0431\u043e\u043a\u0438\u0439 \u043e\u0442\u0447\u0435\u0442'}, - ), - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 6, 7, 16, 13, 32, 699752), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - migrations.AlterField( - model_name='reportdepth', - name='flag', - field=models.CharField(blank=True, choices=[('G', '#99CC99'), ('Y', '#FFFF99'), ('R', '#FF3300')], max_length=1, null=True, verbose_name='\u0424\u043b\u0430\u0433 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-07 16:13 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0034_auto_20160530_1405'), + ] + + operations = [ + migrations.AlterModelOptions( + name='reportdepth', + options={'ordering': ['s_date'], 'verbose_name': '\u0413\u043b\u0443\u0431\u043e\u043a\u0438\u0439 \u043e\u0442\u0447\u0435\u0442', 'verbose_name_plural': '\u0413\u043b\u0443\u0431\u043e\u043a\u0438\u0439 \u043e\u0442\u0447\u0435\u0442'}, + ), + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 6, 7, 16, 13, 32, 699752), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + migrations.AlterField( + model_name='reportdepth', + name='flag', + field=models.CharField(blank=True, choices=[('G', '#99CC99'), ('Y', '#FFFF99'), ('R', '#FF3300')], max_length=1, null=True, verbose_name='\u0424\u043b\u0430\u0433 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f'), + ), + ] diff --git a/journals/migrations/0036_auto_20160607_1614.py b/journals/migrations/0036_auto_20160607_1614.py old mode 100644 new mode 100755 index 35d02d2..12e1c59 --- a/journals/migrations/0036_auto_20160607_1614.py +++ b/journals/migrations/0036_auto_20160607_1614.py @@ -1,21 +1,21 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-06-07 16:14 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0035_auto_20160607_1613'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 6, 7, 16, 14, 9, 954833), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-07 16:14 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0035_auto_20160607_1613'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 6, 7, 16, 14, 9, 954833), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0037_auto_20160607_2002.py b/journals/migrations/0037_auto_20160607_2002.py old mode 100644 new mode 100755 index 3c26a9f..aac8479 --- a/journals/migrations/0037_auto_20160607_2002.py +++ b/journals/migrations/0037_auto_20160607_2002.py @@ -1,21 +1,21 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-06-07 20:02 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0036_auto_20160607_1614'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 6, 7, 20, 2, 41, 688111), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-07 20:02 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0036_auto_20160607_1614'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 6, 7, 20, 2, 41, 688111), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0038_auto_20160607_2034.py b/journals/migrations/0038_auto_20160607_2034.py old mode 100644 new mode 100755 index be12155..a80c4c2 --- a/journals/migrations/0038_auto_20160607_2034.py +++ b/journals/migrations/0038_auto_20160607_2034.py @@ -1,21 +1,21 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-06-07 20:34 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0037_auto_20160607_2002'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 6, 7, 20, 34, 43, 774641), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-07 20:34 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0037_auto_20160607_2002'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 6, 7, 20, 34, 43, 774641), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0039_auto_20160607_2051.py b/journals/migrations/0039_auto_20160607_2051.py old mode 100644 new mode 100755 index d54f34e..b3f1484 --- a/journals/migrations/0039_auto_20160607_2051.py +++ b/journals/migrations/0039_auto_20160607_2051.py @@ -1,21 +1,21 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-06-07 20:51 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0038_auto_20160607_2034'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 6, 7, 20, 51, 37, 193156), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-07 20:51 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0038_auto_20160607_2034'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 6, 7, 20, 51, 37, 193156), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0040_auto_20160608_1700.py b/journals/migrations/0040_auto_20160608_1700.py old mode 100644 new mode 100755 index 50456be..e478cca --- a/journals/migrations/0040_auto_20160608_1700.py +++ b/journals/migrations/0040_auto_20160608_1700.py @@ -1,21 +1,21 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-06-08 17:00 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0039_auto_20160607_2051'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 6, 8, 16, 59, 59, 733466), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-08 17:00 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0039_auto_20160607_2051'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 6, 8, 16, 59, 59, 733466), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0041_auto_20160608_1705.py b/journals/migrations/0041_auto_20160608_1705.py old mode 100644 new mode 100755 index d5022f2..a0f8354 --- a/journals/migrations/0041_auto_20160608_1705.py +++ b/journals/migrations/0041_auto_20160608_1705.py @@ -1,21 +1,21 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-06-08 17:05 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0040_auto_20160608_1700'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 6, 8, 17, 5, 4, 921678), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-08 17:05 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0040_auto_20160608_1700'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 6, 8, 17, 5, 4, 921678), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0042_auto_20160608_1804.py b/journals/migrations/0042_auto_20160608_1804.py old mode 100644 new mode 100755 index ce3f727..a852922 --- a/journals/migrations/0042_auto_20160608_1804.py +++ b/journals/migrations/0042_auto_20160608_1804.py @@ -1,21 +1,21 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-06-08 18:04 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0041_auto_20160608_1705'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 6, 8, 18, 4, 57, 546328), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-08 18:04 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0041_auto_20160608_1705'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 6, 8, 18, 4, 57, 546328), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0043_auto_20160608_1841.py b/journals/migrations/0043_auto_20160608_1841.py old mode 100644 new mode 100755 index 0dde108..1bc9d61 --- a/journals/migrations/0043_auto_20160608_1841.py +++ b/journals/migrations/0043_auto_20160608_1841.py @@ -1,21 +1,21 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-06-08 18:41 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0042_auto_20160608_1804'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 6, 8, 18, 41, 17, 883560), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-08 18:41 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0042_auto_20160608_1804'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 6, 8, 18, 41, 17, 883560), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0044_auto_20160609_1429.py b/journals/migrations/0044_auto_20160609_1429.py old mode 100644 new mode 100755 index 3f00945..a5be5e1 --- a/journals/migrations/0044_auto_20160609_1429.py +++ b/journals/migrations/0044_auto_20160609_1429.py @@ -1,21 +1,21 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-06-09 14:29 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0043_auto_20160608_1841'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 6, 9, 14, 29, 17, 613070), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-09 14:29 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0043_auto_20160608_1841'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 6, 9, 14, 29, 17, 613070), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0045_auto_20160609_1442.py b/journals/migrations/0045_auto_20160609_1442.py old mode 100644 new mode 100755 index 936cf73..eb39fd6 --- a/journals/migrations/0045_auto_20160609_1442.py +++ b/journals/migrations/0045_auto_20160609_1442.py @@ -1,21 +1,21 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-06-09 14:42 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0044_auto_20160609_1429'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 6, 9, 14, 42, 25, 639509), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-09 14:42 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0044_auto_20160609_1429'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 6, 9, 14, 42, 25, 639509), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0046_auto_20160609_1534.py b/journals/migrations/0046_auto_20160609_1534.py old mode 100644 new mode 100755 index e03bb95..2be2475 --- a/journals/migrations/0046_auto_20160609_1534.py +++ b/journals/migrations/0046_auto_20160609_1534.py @@ -1,21 +1,21 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-06-09 15:34 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0045_auto_20160609_1442'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 6, 9, 15, 34, 28, 550178), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-09 15:34 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0045_auto_20160609_1442'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 6, 9, 15, 34, 28, 550178), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0047_auto_20160609_1536.py b/journals/migrations/0047_auto_20160609_1536.py old mode 100644 new mode 100755 index 1403476..d14f4f3 --- a/journals/migrations/0047_auto_20160609_1536.py +++ b/journals/migrations/0047_auto_20160609_1536.py @@ -1,21 +1,21 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-06-09 15:36 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0046_auto_20160609_1534'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 6, 9, 15, 36, 24, 176770), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-09 15:36 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0046_auto_20160609_1534'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 6, 9, 15, 36, 24, 176770), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0048_auto_20160609_1536.py b/journals/migrations/0048_auto_20160609_1536.py old mode 100644 new mode 100755 index eac80d2..e6df11b --- a/journals/migrations/0048_auto_20160609_1536.py +++ b/journals/migrations/0048_auto_20160609_1536.py @@ -1,21 +1,21 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-06-09 15:36 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0047_auto_20160609_1536'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 6, 9, 15, 36, 29, 932969), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-09 15:36 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0047_auto_20160609_1536'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 6, 9, 15, 36, 29, 932969), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0049_auto_20160609_1546.py b/journals/migrations/0049_auto_20160609_1546.py old mode 100644 new mode 100755 index dfcfcbe..4a75659 --- a/journals/migrations/0049_auto_20160609_1546.py +++ b/journals/migrations/0049_auto_20160609_1546.py @@ -1,21 +1,21 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-06-09 15:46 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0048_auto_20160609_1536'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 6, 9, 15, 46, 17, 287825), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-09 15:46 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0048_auto_20160609_1536'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 6, 9, 15, 46, 17, 287825), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0050_auto_20160609_1627.py b/journals/migrations/0050_auto_20160609_1627.py old mode 100644 new mode 100755 index 5198f65..7f7a0f6 --- a/journals/migrations/0050_auto_20160609_1627.py +++ b/journals/migrations/0050_auto_20160609_1627.py @@ -1,21 +1,21 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-06-09 16:27 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0049_auto_20160609_1546'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 6, 9, 16, 27, 14, 289357), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-09 16:27 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0049_auto_20160609_1546'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 6, 9, 16, 27, 14, 289357), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0051_auto_20160609_2224.py b/journals/migrations/0051_auto_20160609_2224.py old mode 100644 new mode 100755 index e9d1b02..1fa3022 --- a/journals/migrations/0051_auto_20160609_2224.py +++ b/journals/migrations/0051_auto_20160609_2224.py @@ -1,21 +1,21 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-06-09 22:24 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0050_auto_20160609_1627'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 6, 9, 22, 24, 43, 817817), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-09 22:24 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0050_auto_20160609_1627'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 6, 9, 22, 24, 43, 817817), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0052_auto_20160628_1731.py b/journals/migrations/0052_auto_20160628_1731.py old mode 100644 new mode 100755 index f51dc45..e4763ba --- a/journals/migrations/0052_auto_20160628_1731.py +++ b/journals/migrations/0052_auto_20160628_1731.py @@ -1,21 +1,21 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-06-28 17:31 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0051_auto_20160609_2224'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 6, 28, 17, 31, 12, 287945), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-28 17:31 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0051_auto_20160609_2224'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 6, 28, 17, 31, 12, 287945), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0053_auto_20160711_1518.py b/journals/migrations/0053_auto_20160711_1518.py old mode 100644 new mode 100755 index 2634696..e23c9d0 --- a/journals/migrations/0053_auto_20160711_1518.py +++ b/journals/migrations/0053_auto_20160711_1518.py @@ -1,21 +1,21 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-07-11 15:18 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0052_auto_20160628_1731'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 7, 11, 15, 18, 42, 287900), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-07-11 15:18 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0052_auto_20160628_1731'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 7, 11, 15, 18, 42, 287900), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0054_auto_20160713_2038.py b/journals/migrations/0054_auto_20160713_2038.py old mode 100644 new mode 100755 index 11bb12d..366f7c7 --- a/journals/migrations/0054_auto_20160713_2038.py +++ b/journals/migrations/0054_auto_20160713_2038.py @@ -1,21 +1,21 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-07-13 20:38 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0053_auto_20160711_1518'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 7, 13, 20, 38, 33, 382012), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-07-13 20:38 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0053_auto_20160711_1518'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 7, 13, 20, 38, 33, 382012), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0055_auto_20160729_1215.py b/journals/migrations/0055_auto_20160729_1215.py old mode 100644 new mode 100755 index 100cc39..d407a0d --- a/journals/migrations/0055_auto_20160729_1215.py +++ b/journals/migrations/0055_auto_20160729_1215.py @@ -1,29 +1,29 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-07-29 12:15 -from __future__ import unicode_literals - -import datetime -from django.conf import settings -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - migrations.swappable_dependency(settings.AUTH_USER_MODEL), - ('journals', '0054_auto_20160713_2038'), - ] - - operations = [ - migrations.AddField( - model_name='teacherj', - name='current_tch', - field=models.ForeignKey(blank=True, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='teacherJ_crteacher', to=settings.AUTH_USER_MODEL, verbose_name='\u0422\u0435\u043a\u0443\u0449\u0438\u0439 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u044e\u0449\u0438\u0439 \u043f\u0440\u0435\u043f'), - ), - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 7, 29, 12, 15, 50, 796790), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-07-29 12:15 +from __future__ import unicode_literals + +import datetime +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('journals', '0054_auto_20160713_2038'), + ] + + operations = [ + migrations.AddField( + model_name='teacherj', + name='current_tch', + field=models.ForeignKey(blank=True, editable=False, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='teacherJ_crteacher', to=settings.AUTH_USER_MODEL, verbose_name='\u0422\u0435\u043a\u0443\u0449\u0438\u0439 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u044e\u0449\u0438\u0439 \u043f\u0440\u0435\u043f'), + ), + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 7, 29, 12, 15, 50, 796790), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0056_auto_20160729_1308.py b/journals/migrations/0056_auto_20160729_1308.py old mode 100644 new mode 100755 index 121a403..29f0016 --- a/journals/migrations/0056_auto_20160729_1308.py +++ b/journals/migrations/0056_auto_20160729_1308.py @@ -1,29 +1,29 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-07-29 13:08 -from __future__ import unicode_literals - -import datetime -from django.conf import settings -from django.db import migrations, models -import django.db.models.deletion - - -class Migration(migrations.Migration): - - dependencies = [ - migrations.swappable_dependency(settings.AUTH_USER_MODEL), - ('journals', '0055_auto_20160729_1215'), - ] - - operations = [ - migrations.AddField( - model_name='homeworktry', - name='new_teach', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='h_t_new_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u041d\u043e\u0432\u044b\u0439 \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044c'), - ), - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 7, 29, 13, 8, 32, 955571), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-07-29 13:08 +from __future__ import unicode_literals + +import datetime +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('journals', '0055_auto_20160729_1215'), + ] + + operations = [ + migrations.AddField( + model_name='homeworktry', + name='new_teach', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='h_t_new_teacher', to=settings.AUTH_USER_MODEL, verbose_name='\u041d\u043e\u0432\u044b\u0439 \u043f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044c'), + ), + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 7, 29, 13, 8, 32, 955571), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0057_auto_20160814_1736.py b/journals/migrations/0057_auto_20160814_1736.py old mode 100644 new mode 100755 index 0cdffc9..76fc84f --- a/journals/migrations/0057_auto_20160814_1736.py +++ b/journals/migrations/0057_auto_20160814_1736.py @@ -1,21 +1,21 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.2 on 2016-08-14 17:36 -from __future__ import unicode_literals - -import datetime -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0056_auto_20160729_1308'), - ] - - operations = [ - migrations.AlterField( - model_name='journalsreports', - name='date', - field=models.DateTimeField(default=datetime.datetime(2016, 8, 14, 17, 36, 41, 787179), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), - ), - ] +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-08-14 17:36 +from __future__ import unicode_literals + +import datetime +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('journals', '0056_auto_20160729_1308'), + ] + + operations = [ + migrations.AlterField( + model_name='journalsreports', + name='date', + field=models.DateTimeField(default=datetime.datetime(2016, 8, 14, 17, 36, 41, 787179), editable=False, verbose_name='\u0417\u0430\u043f\u0440\u043e\u0441 \u043e\u0442\u0447\u0435\u0442\u0430'), + ), + ] diff --git a/journals/migrations/0068_auto_20161008_0222.py b/journals/migrations/0068_auto_20161008_0222.py deleted file mode 100644 index 70e80f9..0000000 --- a/journals/migrations/0068_auto_20161008_0222.py +++ /dev/null @@ -1,28 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by Django 1.9.3 on 2016-10-08 02:22 -from __future__ import unicode_literals - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('journals', '0067_auto_20160917_0757'), - ] - - operations = [ - migrations.AlterModelOptions( - name='teacherj', - options={'ordering': ['-id'], 'verbose_name': 'Журнал преподавания', 'verbose_name_plural': 'Журналы проподавания'}, - ), - migrations.RemoveField( - model_name='teacherj', - name='current_tch', - ), - migrations.AlterField( - model_name='examj', - name='date', - field=models.DateTimeField(blank=True, null=True, verbose_name='Дата'), - ), - ] diff --git a/journals/migrations/__init__.py b/journals/migrations/__init__.py old mode 100644 new mode 100755 diff --git a/journals/models.py b/journals/models.py old mode 100644 new mode 100755 diff --git a/journals/tasks.py b/journals/tasks.py old mode 100644 new mode 100755 diff --git a/journals/urls.py b/journals/urls.py old mode 100644 new mode 100755 index 664c419..d4e5390 --- a/journals/urls.py +++ b/journals/urls.py @@ -1,11 +1,11 @@ -from django.conf.urls import url -from journals import api -urlpatterns = [ - url(r'set_teacher/$', api.set_teacher), - url(r'set_ht/$', api.set_ht), - url(r'open_lj/$', api.open_lj), - url(r'check_jaccess/$', api.check_jaccess), - url(r'check_exists_jhomework/$', api.check_exists_jhomework), - url(r'check_exists_jexam/$', api.check_exists_jexam), - url(r'check_block/$', api.check_block) -] +from django.conf.urls import url +from journals import api +urlpatterns = [ + url(r'set_teacher/$', api.set_teacher), + url(r'set_ht/$', api.set_ht), + url(r'open_lj/$', api.open_lj), + url(r'check_jaccess/$', api.check_jaccess), + url(r'check_exists_jhomework/$', api.check_exists_jhomework), + url(r'check_exists_jexam/$', api.check_exists_jexam), + url(r'check_block/$', api.check_block) +] diff --git a/library/__init__.py b/library/__init__.py old mode 100644 new mode 100755 diff --git a/library/admin.py b/library/admin.py old mode 100644 new mode 100755 index e2ddde0..bf9bd7a --- a/library/admin.py +++ b/library/admin.py @@ -1,24 +1,24 @@ -from django.contrib import admin - -# Register your models here. -from library.models import Article, Tags, ArticleSection - - -class ArticleAdmin(admin.ModelAdmin): - list_display = ('title', 'section', 'date', 'public', 'slug', ) - filter_horizontal = ('tags', 'comments', ) - search_fields = ['title'] - -admin.site.register(Article, ArticleAdmin) - - -class TagsAdmin(admin.ModelAdmin): - list_display = ('name', ) - -admin.site.register(Tags, TagsAdmin) - - -class ArticleSectionAdmin(admin.ModelAdmin): - list_display = ('name', ) - -admin.site.register(ArticleSection, ArticleSectionAdmin) +from django.contrib import admin + +# Register your models here. +from library.models import Article, Tags, ArticleSection + + +class ArticleAdmin(admin.ModelAdmin): + list_display = ('title', 'section', 'date', 'public', 'slug', ) + filter_horizontal = ('tags', 'comments', ) + search_fields = ['title'] + +admin.site.register(Article, ArticleAdmin) + + +class TagsAdmin(admin.ModelAdmin): + list_display = ('name', ) + +admin.site.register(Tags, TagsAdmin) + + +class ArticleSectionAdmin(admin.ModelAdmin): + list_display = ('name', ) + +admin.site.register(ArticleSection, ArticleSectionAdmin) diff --git a/library/api.py b/library/api.py old mode 100644 new mode 100755 index 002fc83..b2606f4 --- a/library/api.py +++ b/library/api.py @@ -1,165 +1,165 @@ -# coding=utf-8 -import random -import re -from lms.decors import api_decor -from management.letters import sent_comment_news -from library.models import Article -from management.models import Comment -from storage.models import Storage -import django.utils.timezone - - -@api_decor(without_auth=True) -def get_random_article(request, context): - context['code'] = '1' - context['data'] = random.choice(Article.objects.exclude(id=request.GET['id'])).slug - return context - - -@api_decor(without_auth=False, method='POST', need_keys=['art'], check_request=True) -def set_favorite(request, context): - try: - article = Article.objects.get(id=request.POST['art']) - except Article.DoesNotExist: - context['code'] = '0' - context['response'] = u'Статья не найдена' - else: - article.set_favorite(request.user) - context['code'] = '1' - return context - - -@api_decor(without_auth=False, method='POST', need_keys=['art'], check_request=True) -def unset_favorite(request, context): - try: - article = Article.objects.get(id=request.POST['art']) - except Article.DoesNotExist: - context['code'] = '0' - context['response'] = u'Статья не найдена' - else: - article.unset_favorite(request.user) - context['code'] = '1' - return context - - -@api_decor(without_auth=False, method='GET', need_keys=['id'], check_request=True) -def check_favorite(request, context): - try: - article = Article.objects.get(id=request.GET['id']) - except Article.DoesNotExist: - context['code'] = '0' - context['response'] = u'Статья не найдена' - else: - if article.check_favorit_exists(request.user): - context['code'] = '1' - else: - context['code'] = '0' - return context - - -@api_decor(without_auth=True, need_keys=['lesson'], method='POST', check_request=True) -def load_comments(request, context): - # Загрузка списка комментариев - lesson = Article.objects.get(id=request.POST['lesson']) - context['data'] = lesson.get_comments(_user=request.user) - - if len(context['data']) == 0: - context['code'] = '0' - else: - context['code'] = '1' - return context - - -@api_decor(without_auth=True) -def get_comments_length(request, context): - context['code'] = '1' - context['data'] = Article.objects.get(id=request.GET['id']).comments.filter(closed=False).count() - return context - - -@api_decor(without_auth=False) -def sent_comment(request, context): - # Отправка комментария урока - if request.POST['comment_sent_text']: - lesson = Article.objects.get(id=request.POST['comment_for_lesson_id']) - parent_id = request.POST['reply_for_comment_id'] - comment = Comment.objects.create(parent_id=parent_id, owner=request.user, - bbtext=request.POST['comment_sent_text'], date=django.utils.timezone.now()) - - lesson.comments.add(comment) - lesson.save() - # Получение о добавление файлов комментария - r = re.compile('^file_') - files_keys = [] - for i in request.POST.keys(): - if r.match(i): files_keys.append(i) - - if files_keys: - for i in files_keys: - comment.files.add(Storage.objects.get(key=request.POST[i])) - comment.save() - - if parent_id != '0': - comment2 = Comment.objects.get(id=parent_id) - if comment2.owner.check_subscription('new_comment'): - sent_comment_news(comment2, comment, lesson) - context['code'] = '1' - context['data'] = comment.id - context['code'] = '1' - return context - - -@api_decor(without_auth=False) -def set_like(request, context): - try: - article = Article.objects.get(id=request.POST['id']) - except Article.DoesNotExist: - context['code'] = '0' - context['response'] = u'Статья не найдена' - else: - result = article.like_plus(request.user) - context['code'] = '1' if result else '0' - return context - - -@api_decor(without_auth=False) -def unset_like(request, context): - try: - article = Article.objects.get(id=request.POST['id']) - except Article.DoesNotExist: - context['code'] = '0' - context['response'] = u'Статья не найдена' - else: - result = article.like_minus(request.user) - context['code'] = '1' if result else '0' - return context - - -@api_decor(without_auth=True) -def refresh_like(request, context): - try: - article = Article.objects.get(id=request.GET['id']) - except Article.DoesNotExist: - context['code'] = '0' - context['response'] = u'Статья не найдена' - else: - context['data'] = article.get_likes_length() - context['code'] = '1' - return context - - -@api_decor(without_auth=True) -def get_articles_length(request, context): - context['data'] = Article.objects.all().count() - context['code'] = '1' - return context - - -@api_decor(without_auth=True) -def get_all_views_length(request, context): - views = 0 - for i in Article.objects.filter(public=True): - views += i.get_views_length() - context['code'] = '1' - context['data'] = views - return context +# coding=utf-8 +import random +import re +from lms.decors import api_decor +from management.letters import sent_comment_news +from library.models import Article +from management.models import Comment +from storage.models import Storage +import django.utils.timezone + + +@api_decor(without_auth=True) +def get_random_article(request, context): + context['code'] = '1' + context['data'] = random.choice(Article.objects.exclude(id=request.GET['id'])).slug + return context + + +@api_decor(without_auth=False, method='POST', need_keys=['art'], check_request=True) +def set_favorite(request, context): + try: + article = Article.objects.get(id=request.POST['art']) + except Article.DoesNotExist: + context['code'] = '0' + context['response'] = u'Статья не найдена' + else: + article.set_favorite(request.user) + context['code'] = '1' + return context + + +@api_decor(without_auth=False, method='POST', need_keys=['art'], check_request=True) +def unset_favorite(request, context): + try: + article = Article.objects.get(id=request.POST['art']) + except Article.DoesNotExist: + context['code'] = '0' + context['response'] = u'Статья не найдена' + else: + article.unset_favorite(request.user) + context['code'] = '1' + return context + + +@api_decor(without_auth=False, method='GET', need_keys=['id'], check_request=True) +def check_favorite(request, context): + try: + article = Article.objects.get(id=request.GET['id']) + except Article.DoesNotExist: + context['code'] = '0' + context['response'] = u'Статья не найдена' + else: + if article.check_favorit_exists(request.user): + context['code'] = '1' + else: + context['code'] = '0' + return context + + +@api_decor(without_auth=True, need_keys=['lesson'], method='POST', check_request=True) +def load_comments(request, context): + # Загрузка списка комментариев + lesson = Article.objects.get(id=request.POST['lesson']) + context['data'] = lesson.get_comments(_user=request.user) + + if len(context['data']) == 0: + context['code'] = '0' + else: + context['code'] = '1' + return context + + +@api_decor(without_auth=True) +def get_comments_length(request, context): + context['code'] = '1' + context['data'] = Article.objects.get(id=request.GET['id']).comments.filter(closed=False).count() + return context + + +@api_decor(without_auth=False) +def sent_comment(request, context): + # Отправка комментария урока + if request.POST['comment_sent_text']: + lesson = Article.objects.get(id=request.POST['comment_for_lesson_id']) + parent_id = request.POST['reply_for_comment_id'] + comment = Comment.objects.create(parent_id=parent_id, owner=request.user, + bbtext=request.POST['comment_sent_text'], date=django.utils.timezone.now()) + + lesson.comments.add(comment) + lesson.save() + # Получение о добавление файлов комментария + r = re.compile('^file_') + files_keys = [] + for i in request.POST.keys(): + if r.match(i): files_keys.append(i) + + if files_keys: + for i in files_keys: + comment.files.add(Storage.objects.get(key=request.POST[i])) + comment.save() + + if parent_id != '0': + comment2 = Comment.objects.get(id=parent_id) + if comment2.owner.check_subscription('new_comment'): + sent_comment_news(comment2, comment, lesson) + context['code'] = '1' + context['data'] = comment.id + context['code'] = '1' + return context + + +@api_decor(without_auth=False) +def set_like(request, context): + try: + article = Article.objects.get(id=request.POST['id']) + except Article.DoesNotExist: + context['code'] = '0' + context['response'] = u'Статья не найдена' + else: + result = article.like_plus(request.user) + context['code'] = '1' if result else '0' + return context + + +@api_decor(without_auth=False) +def unset_like(request, context): + try: + article = Article.objects.get(id=request.POST['id']) + except Article.DoesNotExist: + context['code'] = '0' + context['response'] = u'Статья не найдена' + else: + result = article.like_minus(request.user) + context['code'] = '1' if result else '0' + return context + + +@api_decor(without_auth=True) +def refresh_like(request, context): + try: + article = Article.objects.get(id=request.GET['id']) + except Article.DoesNotExist: + context['code'] = '0' + context['response'] = u'Статья не найдена' + else: + context['data'] = article.get_likes_length() + context['code'] = '1' + return context + + +@api_decor(without_auth=True) +def get_articles_length(request, context): + context['data'] = Article.objects.all().count() + context['code'] = '1' + return context + + +@api_decor(without_auth=True) +def get_all_views_length(request, context): + views = 0 + for i in Article.objects.filter(public=True): + views += i.get_views_length() + context['code'] = '1' + context['data'] = views + return context diff --git a/library/models.py b/library/models.py old mode 100644 new mode 100755 index 71901ca..94bad25 --- a/library/models.py +++ b/library/models.py @@ -1,159 +1,159 @@ -# coding=utf-8 -from __future__ import unicode_literals -import datetime -import re -from django.db import models -from management.models import Comment -from lms.tools import out_date_format, translit -from lms.settings import DOMAIN -from access.models import User -from courses.templates import comment_fabric - - -class ArticleSection(models.Model): - name = models.CharField(verbose_name=u'Раздел', max_length=255) - - def __str__(self): return '%s' % self.name - - def __unicode__(self): return u'%s' % self.name - - class Meta: - verbose_name = u'Раздел статьи' - verbose_name_plural = u'Разделы статей' - - -class Article(models.Model): - public = models.BooleanField(verbose_name=u'Опубликовать', default=True) - slug = models.SlugField(max_length=255, editable=False, blank=True, default='', unique=True) - head_title = models.CharField(verbose_name=u'Заголовок для соц сетей', max_length=255, blank=True, null=True) - head_description = models.CharField(verbose_name=u'Описание в заголовке для соц сетей', max_length=255, blank=True, null=True) - head_image = models.ImageField(verbose_name=u'Картинка для соц сетей', upload_to='library', blank=True, null=True) - title = models.CharField(verbose_name=u'Заголовок', max_length=255) - section = models.ForeignKey(ArticleSection, verbose_name=u'Раздел') - preview = models.TextField(verbose_name=u'Превьюшка', blank=True, default='') - preview_img = models.ImageField(verbose_name=u'Превьюшка заливки', upload_to='library', blank=True, null=True) - page = models.TextField(verbose_name=u'PAGE') - css = models.TextField(verbose_name=u'CSS', blank=True, default='', help_text=u'Можно добавлять все, но только исправить http на https') - js = models.TextField(verbose_name=u'JS', blank=True, default='', help_text=u'Удалить bootstrap, jquery и заменить http на https') - date = models.DateTimeField(verbose_name=u'Дата публикации', default=datetime.datetime.now, editable=False) - tags = models.ManyToManyField('Tags', verbose_name=u'Теги', blank=True, null=True) - likes = models.ManyToManyField(User, verbose_name=u'Лайки', max_length=255, null=True, blank=True, editable=False, related_name=u'acticle_likes') - views = models.ManyToManyField(User, verbose_name=u'Просмотры', max_length=255, default=0, related_name='article_views', editable=False) - all_views = models.IntegerField(verbose_name=u'Всего просмотров', default=0, blank=True) - comments = models.ManyToManyField(Comment, verbose_name=u'Комментарии', null=True, blank=True, editable=False) - favorite = models.ManyToManyField(User, verbose_name=u'В фаворитах', blank=True, null=True, related_name='article_as_favorites', editable=False) - - def __str__(self): return '%s' % self.title - - def __unicode__(self): return u'%s' % self.title - - def get_date(self): - return out_date_format(self.date, no_time=True) - - def set_favorite(self, user): - if user not in self.favorite.all(): - self.favorite.add(user) - - def unset_favorite(self, user): - if user in self.favorite.all(): - self.favorite.remove(user) - - def get_face(self, user): - return { - 'id': self.id, - 'title': self.title, - 'slug': self.slug, - 'social': {'title': self.head_title if self.head_title else self.title, 'description': self.head_description if self.head_description else self.preview, 'image': self.head_image.url if self.head_image else DOMAIN + '/static/img/3818cc0ec1.png'}, - 'preview': {'title': self.title, 'description': self.preview, 'image': self.preview_img.url if self.preview_img else DOMAIN + '/static/img/3818cc0ec1.png'}, - 'page': self.page, - 'css': self.css, - 'js': self.js, - 'date': self.get_date(), - 'tags': {'count': self.get_tags_length(), 'content': self.tags.all()}, - 'likes': {'count': self.get_likes_length(), 'content': self.likes.all()}, - 'views': {'count': self.get_views_length(), 'content': self.views.all()}, - 'favorites': {'count': self.get_favorite_length(), 'content': self.favorite.all()}, - 'comments': {'count': self.get_comments_length(), 'content': self.comments.all()}, - 'section': {'title': self.section.name, 'id': self.section.id}, - 'like': self.check_like_exists(user) if user.is_authenticated() else False, - 'view': self.check_view_exists(user) if user.is_authenticated() else False, - 'favorite': self.check_favorit_exists(user) if user.is_authenticated() else False - } - - def get_comments(self, _user=None): - # Получить все комментарии урока - return [comment_fabric(comment, __type='L', __user=_user) for comment in self.comments.filter(parent_id=0)] - - def get_all_comments(self, _user=None): - return [comment_fabric(comment, __type='L', __user=_user) for comment in self.comments.all().order_by('-date')] - - def check_favorit_exists(self, user): - return user in self.favorite.all() - - def check_view_exists(self, user): - return user in self.views.all() - - def check_like_exists(self, user): - return user in self.likes.all() - - def like_plus(self, user): - result = False - if user not in self.likes.all(): - self.likes.add(user) - result = True - return result - - def like_minus(self, user): - result = False - if user in self.likes.all(): - self.likes.remove(user) - result = True - return result - - def get_likes_length(self): - return self.likes.count() - - def get_views_length(self): - return self.all_views - - def views_plus(self, user): - self.all_views += 1 - if user.is_authenticated(): - if not self.views.filter(id=user.id).exists(): - self.views.add(user) - self.save() - - def get_comments_length(self): - return self.comments.filter(closed=False).count() - - def get_favorite_length(self): - return self.favorite.count() - - def get_tags_length(self): - return self.tags.count() - - def get_absolute_url(self): - return '/library/article/%s' % self.slug - - def save(self, *args, **kwargs): - self.slug = '{0}'.format(translit(self.title, only_letter=True)) - super(Article, self).save(*args, **kwargs) - - class Meta: - verbose_name = u'Статья' - verbose_name_plural = u'Статьи' - ordering = ['-date'] - - -class Tags(models.Model): - name = models.CharField(verbose_name=u'Теги', max_length=255) - - def __str__(self): - return '%s' % self.name - - def __unicode__(self): - return 'u%s' % self.name - - class Meta: - verbose_name = u'Тег' - verbose_name_plural = u'Теги' +# coding=utf-8 +from __future__ import unicode_literals +import datetime +import re +from django.db import models +from management.models import Comment +from lms.tools import out_date_format, translit +from lms.settings import DOMAIN +from access.models import User +from courses.templates import comment_fabric + + +class ArticleSection(models.Model): + name = models.CharField(verbose_name=u'Раздел', max_length=255) + + def __str__(self): return '%s' % self.name + + def __unicode__(self): return u'%s' % self.name + + class Meta: + verbose_name = u'Раздел статьи' + verbose_name_plural = u'Разделы статей' + + +class Article(models.Model): + public = models.BooleanField(verbose_name=u'Опубликовать', default=True) + slug = models.SlugField(max_length=255, editable=False, blank=True, default='', unique=True) + head_title = models.CharField(verbose_name=u'Заголовок для соц сетей', max_length=255, blank=True, null=True) + head_description = models.CharField(verbose_name=u'Описание в заголовке для соц сетей', max_length=255, blank=True, null=True) + head_image = models.ImageField(verbose_name=u'Картинка для соц сетей', upload_to='library', blank=True, null=True) + title = models.CharField(verbose_name=u'Заголовок', max_length=255) + section = models.ForeignKey(ArticleSection, verbose_name=u'Раздел') + preview = models.TextField(verbose_name=u'Превьюшка', blank=True, default='') + preview_img = models.ImageField(verbose_name=u'Превьюшка заливки', upload_to='library', blank=True, null=True) + page = models.TextField(verbose_name=u'PAGE') + css = models.TextField(verbose_name=u'CSS', blank=True, default='', help_text=u'Можно добавлять все, но только исправить http на https') + js = models.TextField(verbose_name=u'JS', blank=True, default='', help_text=u'Удалить bootstrap, jquery и заменить http на https') + date = models.DateTimeField(verbose_name=u'Дата публикации', default=datetime.datetime.now, editable=False) + tags = models.ManyToManyField('Tags', verbose_name=u'Теги', blank=True, null=True) + likes = models.ManyToManyField(User, verbose_name=u'Лайки', max_length=255, null=True, blank=True, editable=False, related_name=u'acticle_likes') + views = models.ManyToManyField(User, verbose_name=u'Просмотры', max_length=255, default=0, related_name='article_views', editable=False) + all_views = models.IntegerField(verbose_name=u'Всего просмотров', default=0, blank=True) + comments = models.ManyToManyField(Comment, verbose_name=u'Комментарии', null=True, blank=True, editable=False) + favorite = models.ManyToManyField(User, verbose_name=u'В фаворитах', blank=True, null=True, related_name='article_as_favorites', editable=False) + + def __str__(self): return '%s' % self.title + + def __unicode__(self): return u'%s' % self.title + + def get_date(self): + return out_date_format(self.date, no_time=True) + + def set_favorite(self, user): + if user not in self.favorite.all(): + self.favorite.add(user) + + def unset_favorite(self, user): + if user in self.favorite.all(): + self.favorite.remove(user) + + def get_face(self, user): + return { + 'id': self.id, + 'title': self.title, + 'slug': self.slug, + 'social': {'title': self.head_title if self.head_title else self.title, 'description': self.head_description if self.head_description else self.preview, 'image': self.head_image.url if self.head_image else DOMAIN + '/static/img/3818cc0ec1.png'}, + 'preview': {'title': self.title, 'description': self.preview, 'image': self.preview_img.url if self.preview_img else DOMAIN + '/static/img/3818cc0ec1.png'}, + 'page': self.page, + 'css': self.css, + 'js': self.js, + 'date': self.get_date(), + 'tags': {'count': self.get_tags_length(), 'content': self.tags.all()}, + 'likes': {'count': self.get_likes_length(), 'content': self.likes.all()}, + 'views': {'count': self.get_views_length(), 'content': self.views.all()}, + 'favorites': {'count': self.get_favorite_length(), 'content': self.favorite.all()}, + 'comments': {'count': self.get_comments_length(), 'content': self.comments.all()}, + 'section': {'title': self.section.name, 'id': self.section.id}, + 'like': self.check_like_exists(user) if user.is_authenticated() else False, + 'view': self.check_view_exists(user) if user.is_authenticated() else False, + 'favorite': self.check_favorit_exists(user) if user.is_authenticated() else False + } + + def get_comments(self, _user=None): + # Получить все комментарии урока + return [comment_fabric(comment, __type='L', __user=_user) for comment in self.comments.filter(parent_id=0)] + + def get_all_comments(self, _user=None): + return [comment_fabric(comment, __type='L', __user=_user) for comment in self.comments.all().order_by('-date')] + + def check_favorit_exists(self, user): + return user in self.favorite.all() + + def check_view_exists(self, user): + return user in self.views.all() + + def check_like_exists(self, user): + return user in self.likes.all() + + def like_plus(self, user): + result = False + if user not in self.likes.all(): + self.likes.add(user) + result = True + return result + + def like_minus(self, user): + result = False + if user in self.likes.all(): + self.likes.remove(user) + result = True + return result + + def get_likes_length(self): + return self.likes.count() + + def get_views_length(self): + return self.all_views + + def views_plus(self, user): + self.all_views += 1 + if user.is_authenticated(): + if not self.views.filter(id=user.id).exists(): + self.views.add(user) + self.save() + + def get_comments_length(self): + return self.comments.filter(closed=False).count() + + def get_favorite_length(self): + return self.favorite.count() + + def get_tags_length(self): + return self.tags.count() + + def get_absolute_url(self): + return '/library/article/%s' % self.slug + + def save(self, *args, **kwargs): + self.slug = '{0}'.format(translit(self.title, only_letter=True)) + super(Article, self).save(*args, **kwargs) + + class Meta: + verbose_name = u'Статья' + verbose_name_plural = u'Статьи' + ordering = ['-date'] + + +class Tags(models.Model): + name = models.CharField(verbose_name=u'Теги', max_length=255) + + def __str__(self): + return '%s' % self.name + + def __unicode__(self): + return 'u%s' % self.name + + class Meta: + verbose_name = u'Тег' + verbose_name_plural = u'Теги' diff --git a/library/urls.py b/library/urls.py old mode 100644 new mode 100755 index 2c5a38c..6edd076 --- a/library/urls.py +++ b/library/urls.py @@ -1,20 +1,20 @@ -from library import views, api -from django.conf.urls import url - - -urlpatterns = [ - url(r'articles/', views.articles), - url(r'article/(?P| С уважением, {NAME} |
![]() |
| Пожалуйста, по любым вопросам смело пишите на {SUPPORT} |
| С уважением, {NAME} |
![]() |
| Пожалуйста, по любым вопросам смело пишите на {SUPPORT} |