staff:courses:no_sql_introduction:course_work:topics

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Last revision Both sides next revision
staff:courses:no_sql_introduction:course_work:topics [2023/08/31 08:45]
mark [Table]
staff:courses:no_sql_introduction:course_work:topics [2023/08/31 11:39]
mark
Line 25: Line 25:
 | 12  | Сервис составления генеалогических деревьев ​                                      | Neo4j              | Синтетические данные ​                                 | Задача - сервис,​ позволяющий различным пользователям вести свои родословные древа, анализировать их, находить похожие,​ предлагать мержи деревьев. Необходимые (но не достаточные фичи) - аккаунты пользователей,​ страница родословного древа, страница рекомендаций,​ предоставления доступа к древу, страница мержа ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | | 12  | Сервис составления генеалогических деревьев ​                                      | Neo4j              | Синтетические данные ​                                 | Задача - сервис,​ позволяющий различным пользователям вести свои родословные древа, анализировать их, находить похожие,​ предлагать мержи деревьев. Необходимые (но не достаточные фичи) - аккаунты пользователей,​ страница родословного древа, страница рекомендаций,​ предоставления доступа к древу, страница мержа ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
 | 13  | Хаб данных умной фермы ​                                                           | InfluxDB + Mongo   | Синтетические данные ​                                 | Задача - сделать приложение для автоматизированного мониторинга тепличной фермы овощей. Пользователи - рабочие,​ бригадиры,​ владельцы бизнеса. Необходимые (но не достаточные фичи) - страницы пользователей,​ страница ​ для работы с нарядами рабочих и бригадиров,​ склад (собранная продукция,​ расходники),​ инциденты,​ график дежурств,​ инфраструктура ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | | 13  | Хаб данных умной фермы ​                                                           | InfluxDB + Mongo   | Синтетические данные ​                                 | Задача - сделать приложение для автоматизированного мониторинга тепличной фермы овощей. Пользователи - рабочие,​ бригадиры,​ владельцы бизнеса. Необходимые (но не достаточные фичи) - страницы пользователей,​ страница ​ для работы с нарядами рабочих и бригадиров,​ склад (собранная продукция,​ расходники),​ инциденты,​ график дежурств,​ инфраструктура ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
-| 14  | Телеграм-бот для вывода данных из таблиц ​                                         | MongoDB ​           | Синтетические данные ​                                 | Задача - сделать простого бота, который сможет решать задачу "​покажи мне строку по запросу А из таблицы Б". Для определенности можно считать,​ что такой бот нужен для курсов МОЭВМ, чтобы скрывать от студентов всю таблицу успеваемости и показывать студенту только его собственную строчку. Таблиц / студентов / преподов может быть много. ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 +| 14  | Телеграм-бот для вывода данных из таблиц ​                                         | MongoDB ​           | Синтетические данные ​                                 | Задача - сделать простого бота, который сможет решать задачу "​покажи мне строку по запросу А из таблицы Б". Для определенности можно считать,​ что такой бот нужен для курсов МОЭВМ, чтобы скрывать от студентов всю таблицу успеваемости и показывать студенту только его собственную строчку. Таблиц / студентов / преподов может быть много. ​Необходимые (но не достаточные) фичи - веб-интерфейс для администрирования и настройки,​ страница со списком подключенных таблиц,​ страница для настройки отдельной таблицы (где расположен идентификатор студентов,​ какие колонки игнорировать),​ таблица админов,​ логи, статистика доступа ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                
-| 15  | Телеграм-бот для напоминаний преподавателям о новых записях в таблице ​            | MongoDB ​           | Синтетические данные ​                                 | Задача - сделать простого бота, который сможет решать задачу "​пришли пользователю уведомление,​ если его _неким_ образом упомянули в таблице"​. Для определенности можно считать,​ что такой бот нужен для преподавателей МОЭВМ, которые ждут появления студенческих отправок в определенной таблице. Преподов и таблиц может быть много. ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         +| 15  | Телеграм-бот для напоминаний преподавателям о новых записях в таблице ​            | MongoDB ​           | Синтетические данные ​                                 | Задача - сделать простого бота, который сможет решать задачу "​пришли пользователю уведомление,​ если его _неким_ образом упомянули в таблице"​. Для определенности можно считать,​ что такой бот нужен для преподавателей МОЭВМ, которые ждут появления студенческих отправок в определенной таблице. Преподов и таблиц может быть много. ​Необходимые (но не достаточные) фичи - веб-интерфейс для администрирования и настройки,​ страница со списком подключенных таблиц,​ страница для настройки отдельной таблицы (настройки текста уведомления,​ где расположен идентификатор препода,​ критерий для уведомления),​ таблица админов,​ логи, статистика доступа,​ статистика по уведомлениям (когда кому отправлены,​ кто читал )                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         
-| 16  | Сервис хранения ​ данных биржевой торговли forex                                   | MongoDB ​           | Синтетические данные ​                                 | Задача - веб приложение,​ которое будет хранить / обеспечивать поиск / анализ и визуализацию данных о рынке по указанным периодам / запросам / валютным парам. ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  ​+| 16  | Сервис хранения ​ данных биржевой торговли forex                                   | MongoDB ​           | Синтетические данные ​                                 | Задача - веб приложение,​ которое будет хранить / обеспечивать поиск / анализ и визуализацию данных о рынке по указанным периодам / запросам / валютным парам. ​Необходимые (но не достаточные) фичи - списки валютных пар, страница архива,​ визуализация отдельного сигнала на графике для конкретной валютной пары, анализ для сигнала ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 ​
-| 17  | Сервис сбора и визуализации логов Apache2 ​                                        | InfluxDB ​          | Синтетические данные ​                                 | Задача - создать приложение,​ которое аггрегирует логи Apache2 в influx. https://​github.com/​influxdata/​telegraf/​blob/​master/​plugins/​inputs/​tail/​README.md,​ https://​github.com/​influxdata/​telegraf/​blob/​master/​plugins/​parsers/​grok/​README.md . Необходимо поддержать одновременно все файлы логов apache - access.log, error.log, other_vhosts_access.log,​ а также время загрузки странци как один из элементов данных. ​                                                                                                                                                                                                                                                                                                                                                                                                                                                         |+| 17  | Сервис сбора и визуализации логов Apache2 ​                                        | InfluxDB ​          | Синтетические данные ​                                 | Задача - создать приложение,​ которое аггрегирует логи Apache2 в influx. https://​github.com/​influxdata/​telegraf/​blob/​master/​plugins/​inputs/​tail/​README.md,​ https://​github.com/​influxdata/​telegraf/​blob/​master/​plugins/​parsers/​grok/​README.md . Необходимо поддержать одновременно все файлы логов apache - access.log, error.log, other_vhosts_access.log,​ а также время загрузки странци как один из элементов данных. ​Необходимые (но не достаточные) фичи - таблица поиска по всем логом с фильтром,​ страница отдельной записи в логе, кастомизируемая статистика (по хостам,​ ip клиентов,​ кодам ошибок,​ времени загрузки страниц) ​                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
 | 18  | Построение графа ссылок на веб-страницах ​                                         | Neo4j              | Синтетические данные ​                                 | Задача в рамках ИДЗ - сделать систему обхода всех веб-страниц и ссылок на сайте для составления графа и его анализа. Необходимые (но не достаточные) фичи - список обработанных сайтов,​ страница визуализации графа ссылок,​ анализ графа (изолированные компоненты,​ длина пути от главной страницы). ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | | 18  | Построение графа ссылок на веб-страницах ​                                         | Neo4j              | Синтетические данные ​                                 | Задача в рамках ИДЗ - сделать систему обхода всех веб-страниц и ссылок на сайте для составления графа и его анализа. Необходимые (но не достаточные) фичи - список обработанных сайтов,​ страница визуализации графа ссылок,​ анализ графа (изолированные компоненты,​ длина пути от главной страницы). ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
 | 19  | Сервис для планирования кабельных сетей ​                                          | Neo4j              | Синтетические данные ​                                 | Задача в рамках ИДЗ - сделать систему для проектирования и анализа кабельной инфраструктуры зданий (локальные сети). Необходимые (но не достаточные) фичи - список проектов,​ сводка по проекту, ​ поэтажные планы, анализ проекта (сколько нужно кабелей,​ оборудования,​ расходников для монтажа),​ визуализация проекта в виде графа. ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | | 19  | Сервис для планирования кабельных сетей ​                                          | Neo4j              | Синтетические данные ​                                 | Задача в рамках ИДЗ - сделать систему для проектирования и анализа кабельной инфраструктуры зданий (локальные сети). Необходимые (но не достаточные) фичи - список проектов,​ сводка по проекту, ​ поэтажные планы, анализ проекта (сколько нужно кабелей,​ оборудования,​ расходников для монтажа),​ визуализация проекта в виде графа. ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
Line 36: Line 36:
 | 23  | Составление маршрутов интересных пеших прогулок по СПБ ​                           | Neo4j              | Wikimapia + OSM                                       | Задача - сделать сервис для составления пеших маршрутов по Санкт-Петербургу. Пользователи - администраторы,​ пользователи. ​ Необходимые (но не достаточные фичи) - личные странциы,​ страницы маршрутов,​ страница генерации маршрута (задаем настройки - интересы,​ протяженность - учитываем время года, ширину тротуаров) ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       | | 23  | Составление маршрутов интересных пеших прогулок по СПБ ​                           | Neo4j              | Wikimapia + OSM                                       | Задача - сделать сервис для составления пеших маршрутов по Санкт-Петербургу. Пользователи - администраторы,​ пользователи. ​ Необходимые (но не достаточные фичи) - личные странциы,​ страницы маршрутов,​ страница генерации маршрута (задаем настройки - интересы,​ протяженность - учитываем время года, ширину тротуаров) ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
 | 24  | Сервис "​Crowd-редакция" ​                                                          | Neo4j              | Синтетические данные + wikibooks ​                     | Задача - подготовить веб-сервис,​ который реализует вычитку и редактирование книг силами сообщества (crowdsourcing). Одни и теже пользователи могут быть как авторами,​ так и редакторами. Необходимые (но не достаточные) фичи ​                                                   -  личные страницы пользователей,​ рейтинги и отзывы пользователей,​ статистика рецензий,​ списки рецензий,​ страницы отдельных резцензий,​ страницы книг. ​                                                                                                                                                                                                                                                                                                                                                                                                                                         | | 24  | Сервис "​Crowd-редакция" ​                                                          | Neo4j              | Синтетические данные + wikibooks ​                     | Задача - подготовить веб-сервис,​ который реализует вычитку и редактирование книг силами сообщества (crowdsourcing). Одни и теже пользователи могут быть как авторами,​ так и редакторами. Необходимые (но не достаточные) фичи ​                                                   -  личные страницы пользователей,​ рейтинги и отзывы пользователей,​ статистика рецензий,​ списки рецензий,​ страницы отдельных резцензий,​ страницы книг. ​                                                                                                                                                                                                                                                                                                                                                                                                                                         |
-| 25  | Сервис локального (на базе нескольких репо) антиплагиата для естественного языка ​ | MongoDB ​           | Синтетические данные ​                                 | Задача - веб приложение,​ которое будет выгружать,​ версионировать (Используя данные гита) данные из набора гитхаб-репо (кастомизируются пользователями),​ хранит эти данные для удобства синтаксического анализа и формирует отчеты по возможному плагиату между пользователями репо. ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            ​+| 25  | Сервис локального (на базе нескольких репо) антиплагиата для естественного языка ​ | MongoDB ​           | Синтетические данные ​                                 | Задача - веб приложение,​ которое будет выгружать,​ версионировать (Используя данные гита) данные из набора гитхаб-репо (кастомизируются пользователями),​ хранит эти данные для удобства синтаксического анализа и формирует отчеты по возможному плагиату между пользователями репо. ​Необходимые (но не достаточные) фичи - настройки списка репозиториев (откуда берем данные,​ по каким шаблонам ищем тексты),​ отчеты о проверках,​ статистика по пользователям репо / файлам ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           ​
-| 26  | Визуализатор и анализатор электронной почты в виде графа ​                         | Neo4j              | Синтетические данные ​                                 | Задача - сделать сервис,​ который позволяет визуализировать и анализировать электронную почту с помощью графов. Вершины - письма и авторы,​ ребра - хронология (цепочки писем),​ связи между авторами (работа). ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |+| 26  | Визуализатор и анализатор электронной почты в виде графа ​                         | Neo4j              | Синтетические данные ​                                 | Задача - сделать сервис,​ который позволяет визуализировать и анализировать электронную почту с помощью графов. Вершины - письма и авторы,​ ребра - хронология (цепочки писем),​ связи между авторами (работа). ​Необходимые (но не достаточные) фичи - визуализация в виде графа, настройки,​ аналитика (самые длинные цепочки,​ корреспонденты,​ сроки ответов ...), таблица поиска писем ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
 | 27  | Сервис редактирования и автоматического составления расписания в ВУЗе ​            | Mongo              | Расписание ЛЭТИ ​                                      | Задача - сервис,​ позволяющий принимать пожелания от преподавателей,​ принимать данные об аудиториях и их вместимости,​ данные учебных планов (предметы / курсы / группы),​ данные о студентах (сколько в какой группе человек,​ какие группы к каким направлениям относятся. Необходимые (но не достаточные фичи) - автоматическое составление расписания (исходя из предоставленных ограничений),​ визуализация и редактирование расписания,​ логика согласования расписания (препод выссказал пожелание,​ админ поправил,​ препод одобрил),​ анализ составленного расписания (насколько равномерно используются аудитории,​ насколько студентам / преподам нужно между парами бегать в новую аудиторию). Пользователи - преподаватели,​ администраторы,​ студенты. ​                                                                                                                       | | 27  | Сервис редактирования и автоматического составления расписания в ВУЗе ​            | Mongo              | Расписание ЛЭТИ ​                                      | Задача - сервис,​ позволяющий принимать пожелания от преподавателей,​ принимать данные об аудиториях и их вместимости,​ данные учебных планов (предметы / курсы / группы),​ данные о студентах (сколько в какой группе человек,​ какие группы к каким направлениям относятся. Необходимые (но не достаточные фичи) - автоматическое составление расписания (исходя из предоставленных ограничений),​ визуализация и редактирование расписания,​ логика согласования расписания (препод выссказал пожелание,​ админ поправил,​ препод одобрил),​ анализ составленного расписания (насколько равномерно используются аудитории,​ насколько студентам / преподам нужно между парами бегать в новую аудиторию). Пользователи - преподаватели,​ администраторы,​ студенты. ​                                                                                                                       |
-| 28  | Построение маршрутов по рекам и каналам ​                                          | Neo4j              | OpenStreetMaps ​                                       | Задача - максимально смоделировать данные о реках / каналах СПБ, а также объектах инфраструктуры (причалы,​ пирсы, знаки для водного транспорта,​ мосты),​ обеспечить построение маршрутов и вычисление статистики ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                ​+| 28  | Построение маршрутов по рекам и каналам ​                                          | Neo4j              | OpenStreetMaps ​                                       | Задача - максимально смоделировать данные о реках / каналах СПБ, а также объектах инфраструктуры (причалы,​ пирсы, знаки для водного транспорта,​ мосты),​ обеспечить построение маршрутов и вычисление статистики. Необходимые (но не достаточные) фичи - визуализация на карте и графом,​ поиск и составление маршрутов по карте, таблица для просмотра данных системы,​ анализ маршрутов,​ анализ карты ("​медвежьи углы",​ потенциальные "​бутылочные горлышки"​) ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               ​
-| 29  | Юридические документы ​                                                            | Neo4j              | Синтетические данные ​                                 | Смысл проекта - предоставить интерфейс для хранения,​ версионирования и анализа (грубого) юридических документов на русском языке. Варианты анализа:​ разбиение на предложения,​ абзацы,​ идентификация пунктов по ключевым словам,​ поиск формулировок-обязательств / требований ….                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |+| 29  | Юридические документы ​                                                            | Neo4j              | Синтетические данные ​                                 | Смысл проекта - предоставить интерфейс для хранения,​ версионирования и анализа (грубого) юридических документов на русском языке. Варианты анализа:​ разбиение на предложения,​ абзацы,​ идентификация пунктов по ключевым словам,​ поиск формулировок-обязательств / требований ….Необходимые (но не достаточные) фичи - таблица с поиском по документам,​ страница документа,​ статистика по документу,​ общие термины документов ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
 | 30  | Карта транспортной доступности водоемов севера Ленинградской области ​             | Neo4j              | OSM                                                   | Задача в рамках ИДЗ - сделать систему для построения и анализа графа транспортной доступности водоемов (реки, озера, водохранилища) севера ЛО. Необходимые (но не достаточные) фичи - список водоемов,​ страница визуализации графа , анализ графа (сортировка по доступности,​ изолированные узлы). ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | | 30  | Карта транспортной доступности водоемов севера Ленинградской области ​             | Neo4j              | OSM                                                   | Задача в рамках ИДЗ - сделать систему для построения и анализа графа транспортной доступности водоемов (реки, озера, водохранилища) севера ЛО. Необходимые (но не достаточные) фичи - список водоемов,​ страница визуализации графа , анализ графа (сортировка по доступности,​ изолированные узлы). ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
 | 31  | ИС Справочник Музеев ​                                                             | Memcached ​         | https://​opendata.mkrf.ru/​opendata/​7705851331-museums ​ | Тема аналогична "​(Сложно) ИС Справочник образовательных организаций Санкт-Петербурга" ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | | 31  | ИС Справочник Музеев ​                                                             | Memcached ​         | https://​opendata.mkrf.ru/​opendata/​7705851331-museums ​ | Тема аналогична "​(Сложно) ИС Справочник образовательных организаций Санкт-Петербурга" ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
-| 32  | ИС Справочник образовательных организаций Санкт-Петербурга ​                       | Memcached ​         | https://​petersburgedu.ru/​institution/ ​                | Цель - создать каталог,​ хранящий максимум информации обо всех организациях. Задачи - хранение всех доступных полей, организация поиска,​ аггрегации,​ изменения данных каталога. ​ Модель данных нужно построить так, чтобы на клиенте требовалась минимальная обработка (скоррее всего, вам предстоит сделать очень много дублирования данных) ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |+| 32  | ИС Справочник образовательных организаций Санкт-Петербурга ​                       | Memcached ​         | https://​petersburgedu.ru/​institution/ ​                | Цель - создать каталог,​ хранящий максимум информации обо всех организациях. Задачи - хранение всех доступных полей, организация поиска,​ аггрегации,​ изменения данных каталога. ​ Модель данных нужно построить так, чтобы на клиенте требовалась минимальная обработка (скоррее всего, вам предстоит сделать очень много дублирования данных). Необходимые (но не достаточные) фичи - таблица с поиском,​ страница отдельной организации,​ статистика ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
 | 33  | Cервис для дизайна ​ мозаек ​                                                       | Neo4j              | Синтетические данные ​                                 | Идея - вам очень захотелось превратить любимую картинку в мозаику из керамической плитки у себя на даче, для этого вам необходимо как-то прикинуть из каких частей оно будет состоять,​ сколько и какой плитки вам нужно закупить (по цвету и площади),​ как эту плитку раскроить и как ее наклеить (в каком порядке). Задача в рамках ИДЗ - сделать систему для автоматического (можно придумать свое, можно уже готовое https://​github.com/​nuno-faria/​tiler) построения керамических мозаек из изображений,​ а также для генерации инструкций по сборке и расчета количества цветных плиток. Необходимые (но не достаточные) фичи - список готовых мозаик,​ загрузка и обработка нового изображения,​ визуализация в виде графа, анализ и сводка по мозаике (сколько и каких плиток нужно, сколько метров реза вам нужно проделать),​ инструкция по нарезке,​ инструкция по сборке. ​ | | 33  | Cервис для дизайна ​ мозаек ​                                                       | Neo4j              | Синтетические данные ​                                 | Идея - вам очень захотелось превратить любимую картинку в мозаику из керамической плитки у себя на даче, для этого вам необходимо как-то прикинуть из каких частей оно будет состоять,​ сколько и какой плитки вам нужно закупить (по цвету и площади),​ как эту плитку раскроить и как ее наклеить (в каком порядке). Задача в рамках ИДЗ - сделать систему для автоматического (можно придумать свое, можно уже готовое https://​github.com/​nuno-faria/​tiler) построения керамических мозаек из изображений,​ а также для генерации инструкций по сборке и расчета количества цветных плиток. Необходимые (но не достаточные) фичи - список готовых мозаик,​ загрузка и обработка нового изображения,​ визуализация в виде графа, анализ и сводка по мозаике (сколько и каких плиток нужно, сколько метров реза вам нужно проделать),​ инструкция по нарезке,​ инструкция по сборке. ​ |
-| 34  | Построение маршрутов с учетом плохой парковки ​                                    | Neo4j              | Открытые данные OpenStreetMap ​                        | Необходимо взять в качестве демо данных квадрат карты, где находится Петроградский район и для него создать приложение,​ которое позволит строить маршруты из точки А в точку Б так, чтобы 1) при подъезде к точке Б нужно вести водителя не наикратчайшим путем, а кругами вдоль перспективных для парковки мест 2) при всем этом поездка по маршруту не была супердолгой ​                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |+| 34  | Построение маршрутов с учетом плохой парковки ​                                    | Neo4j              | Открытые данные OpenStreetMap ​                        | Необходимо взять в качестве демо данных квадрат карты, где находится Петроградский район и для него создать приложение,​ которое позволит строить маршруты из точки А в точку Б так, чтобы 1) при подъезде к точке Б нужно вести водителя не наикратчайшим путем, а кругами вдоль перспективных для парковки мест 2) при всем этом поездка по маршруту не была супердолгой. Необходимые (но не достаточные) фичи - карта с возможностью задавать точки и выполнять построение маршрута,​ таблица для визуализации,​ страница подробной статиситики маршрута 
 +                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
  
 ===== Своя тема ===== ===== Своя тема =====
staff/courses/no_sql_introduction/course_work/topics.txt · Last modified: 2023/08/31 11:39 by mark