Информационная система Фильмотека. Курсовая работа (т). Информационное обеспечение, программирование.

Информационная система Фильмотека. Курсовая работа (т). Информационное обеспечение, программирование.




⚡ 👉🏻👉🏻👉🏻 ИНФОРМАЦИЯ ДОСТУПНА ЗДЕСЬ ЖМИТЕ 👈🏻👈🏻👈🏻


























































Информационное обеспечение, программирование

Вы можете узнать стоимость помощи в написании студенческой работы.


Помощь в написании работы, которую точно примут!

Похожие работы на - Информационная система Фильмотека

Скачать Скачать документ
Информация о работе Информация о работе


Скачать Скачать документ
Информация о работе Информация о работе


Скачать Скачать документ
Информация о работе Информация о работе


Скачать Скачать документ
Информация о работе Информация о работе


Скачать Скачать документ
Информация о работе Информация о работе


Скачать Скачать документ
Информация о работе Информация о работе

Нужна качественная работа без плагиата?

Не нашел материал для своей работы?


Поможем написать качественную работу Без плагиата!

на тему
«Информационная система Фильмотека»







Под базой данных понимается множество взаимосвязанных элементарных групп
данных (информации), которые могут обрабатываться одной или несколькими
прикладными системами. Система базы данных состоит из базы данных; программного
обеспечения общего назначения, которая называется системой управления базой
данных (СУБД), и служит для управления базой данных; соответствующего
оборудования и людей.


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


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


Конечной целью проектирования БД является создание системы «Фильмотека»,
способной оказывать информационные услуги по выдаче необходимых данных, их
обновлению и отвечать исходным требованиям по оперативности, достоверности,
надежности и адекватности.




·     создать базу данных, в которой хранятся сведения о фильмах,
актерах, жанрах, пользователях и скачанных фильмах;


·       обеспечить возможность просмотра данных и ввода новых данных
о фильмах, актерах, жанрах, пользователях и скачанных фильмах;


·       обеспечить возможность поиска и отбора данных;


·       обеспечить возможность печати различных видов документов на
основании созданной базы данных.




Анализ предметной области является первым этапом проектирования базы
данных, позволяющей изучить предметную область и требования к будущей базе
данных, поставить задачи, для выполнения которых разрабатывается база данных.


Данная курсовая работа посвящена созданию информационной системы
«Фильмотека». Предметная область - хранилище фильмов.


· информация о фильмах - название, жанр, актеры, режиссер, дата выпуска,
дата добавления в фильмотеку, качество, объем, изображение;


·       информация о пользователях - ФИО, дата рождения, город, дата
регистрации, электронный адрес;


·       информация о скачивании - дата скачивания, скачанный фильм и
пользователь.


Формы выходных документов будут иметь следующий вид:







Документ 2: Количество снятых фильмов


Документ 3: Последний скачанный фильм


С помощью разработанной базы данных можно получить следующую информацию:


· фильмы, которые никто не скачивает;


·       фильмы, скачанные за период;


·       прибыль, получаемую за скачивание;


·       количество скачанных фильмов;


·       количество фильмов, отснятых в различных странах в различные
года;


·       количество скачиваний фильмов за различные года.


Так же ИС должна уменьшать стоимость скачивания фильмов, которые были
выпущены более года назад.


Этап инфологического проектирования базы данных связан с анализом и
описанием разнообразных информационных требований пользователей, полученных на
первом этапе проектирования. Результатом этапа инфологического проектирования
является представление информационных требований в виде целостной
концептуальной инфологической модели предметной области.


Инфологическую модель можно представить в виде диаграммы, используя
средства моделирования "сущность-связь".




Сущности, характеризующие предметную область:


Пользователи - содержит информацию о пользователях, скачивающих фильмы.


Скачивание - содержит данные скачивании пользователями фильмов.


Фильмы - содержит информацию о фильмах, содержащихся в базе данных.


Фильм-актер - содержит информацию об актерах, которые снимались в
фильмах.


Определим атрибуты каждой сущности. Ключевые атрибуты обозначим следующим
выделением <>


Пользователи: <Код_пользователя>; ФИО; Дата_рождения; Город;
Страна; Дата_регистрации; E-mail.


Скачивание: <Код_скачивания>; Код_фильма; Код_пользователя;
Дата_скачивания.


Фильмы: <Код_фильма>; Название; Жанр ; Режиссер; Год_выпуска;
Дата_добавления; Качество; Объем; Страна_производства; Стоимость; Картинка.


Фильм-актер: <Код_фильм-актер>; Фильм; Актер.


Объект Пользователи связан с объектом Скачивание отношением 1:N, т.к. один человек может скачивать
несколько фильмов.


Объект Фильмы связан с объектом Скачивание отношением 1:N, т.к. один фильм можно скачивать
много раз.


Объект Фильмы связан с объектом Фильм-актер отношением 1:N, т.к. в одном фильме может сниматься
много актеров.


На основании проведенного анализа получим информационную структуру
взаимосвязей объектов, представленную в следующем виде




Рис. 1. Информационная структура взаимосвязей объектов предметной области
«Фильмотека»




Основным этапом логического проектирования концептуальной модели в
реляционную является нормализация полученных на этапе инфологического
проектирования отношений.


Процесс нормализации отношений состоит из следующих этапов:


преобразование отношений в первую нормальную форму.


преобразование отношений во вторую нормальную форму.


преобразование отношений в третью нормальную форму.
        Сущности представлены следующими наборами реквизитов:


        Пользователи: <Код_пользователя>; ФИО; Дата_рождения;
Город; Страна; Дата_регистрации; E-mail.


        Скачивание: <Код_скачивания>; Код_фильма;
Код_пользователя; Дата_скачивания.


        Фильмы: <Код_фильма>; Название; Жанр ; Режиссер;
Год_выпуска; Дата_добавления; Качество; Объем; Страна_производства; Стоимость;
Картинка.


        Фильм-актер: <Код_фильм-актер>; Фильм; Актер.


        Сущность Пользователи можно рассматривать как отношение в 1НФ.
Для приведения её ко 2НФ и 3НФ необходимо преобразовать это отношение, исключив
неполные функциональные зависимости не ключевых реквизитов от ключа.
Результатом нормализации отношения Пользователи будет следующий перечень
отношений:


        - Пользователи: <Код_пользователя>, ФИО, Дата_рождения,
Код_города; Дата_регистрации, е-mail.


        - Города: <Код_города>, Город, Страна.


        Нормализуем получившуюся сущность Города:


        - Города: <Код_города>, Город, Код_страны.


        - Страны: <Код_страны>, Название.


        Сущность Города будет связана с сущностью Пользователи
отношением 1:N, т.к. из одного города может быть
много пользователей. Сущность Страны будет связана с сущностью Города
отношением 1:N, т.к. в одной стране может быть
много городов.


        Сущность Фильмы можно рассматривать как отношение в 1НФ. Для
приведения его ко 2НФ и 3НФ необходимо преобразовать это отношение, исключив
неполные функциональные зависимости не ключевых реквизитов от ключа.
Результатом нормализации отношения Фильмы будет следующий перечень отношений:


        - Фильмы: <Код_фильма>, Название, Код_жанра,
Код_режиссера, Год_выпуска, Дата_добавления, Качество Объем, Код_страны,
Стоимость, Картинка.


        - Жанры: <Код_жанра>, Жанр.


        - Режиссеры: <Код_режиссера>, ФИО.


        - Страны: <Код_страны>, Страна.


        Сущность Фильмы будет связана с сущностями Жанры, Режиссеры и
Страны отношением 1:N, поскольку в
одной стране, у одного режиссера и в одном жанре могут сниматься много фильмов.


        Сущность Скачивание можно рассматривать как отношение в 3НФ.


        Сущность Фильм-актер можно рассматривать как отношение в 1НФ.
Для приведения его ко 2НФ и 3НФ необходимо преобразовать это отношение,
исключив неполные функциональные зависимости не ключевых реквизитов от ключа.
Результатом нормализации отношения «ПРОЖИВАЮЩИЙ» будет следующий перечень
отношений:


        - Фильм-актер: <Код_фильм-актер>, Код_фильма, Код_актера.


        - Актеры: <Код_актера>, ФИО, Код_страны.


        Сущность Актеры будет связана с сущностью Фильм-актер отношением
1:N, поскольку в одном фильме могут
сниматься много актеров.


Окончательный перечень нормализованных отношений для реляционной модели
по предметной области "Фильмотека":




Таблица 1. Перечень
нормализованных отношений


ФИО, Дата_рождения,
Код_города; Дата_регистрации, е-mail

 Название, Код_жанра,
Код_режиссера, Год_выпуска, Дата_добавления, Качество Объем, Код_страны,
Стоимость, Картинка.

Код_фильма;
Код_пользователя; Дата_скачивания

БД в MS Access представляет собой совокупность средств для ввода,
хранения, просмотра, выборки и управления информацией. К этим средствам
относятся таблицы, формы, отчеты, запросы.


Для унификации механизмов поиска содержимое наборов данных в Access представляется в виде таблиц.
Таблица - это объект для хранения данных. Каждая таблица содержит информацию об
объекте определенного типа. Поля таблицы хранят различного рода данные об
объекте, а в содержащихся в таблице записях собрана вся информация о конкретном
значении объекта.


В связи с табличной организацией данных вся информация проектируемой базы
данных хранится в 9-и таблицах. Каждое поле каждой таблицы характеризуется
типом данных, соответствующих полю. Типами данных называются типы значений,
которые могут содержать переменные. При работе с Access в интерактивном режиме типы данных указываются при
создании полей в таблицах.


Все таблицы (Актеры, Города, Жанры, Пользователи, Режиссеры, Скачивание,
Страны, Фильм-актер, Фильмы) связаны между собой и имеют тип связи “ один ко
многим” или “многие к одному”. В Access
линии связывания между полями устанавливают соответствие записей в таблицах.


Ниже приводится вид таблиц с выбранными типами данных, созданных в режиме
конструктора.
В данной таблице осуществляется подстановка поля «Страна» из таблицы
Страны.




В данной таблице осуществляется подстановка поля «Страна» из таблицы
Страны.




В данной таблице осуществляется подстановка поля «Город» из таблицы
Города.




В таблице Скачивание поля «Код_фильма» и «Пользователь» заполняются
подстановкой соответственно из таблиц «Фильмы» и «Пользователи».




В таблице Фильм-актер поля «Вод_фильма» и «Код_актера» заполняются
подстановкой соответственно из таблиц «Фильмы» и «Актеры».




В таблице Фильмы поля «Код_жанра», «Режиссер» и «Страна_производства»
заполняются подстановкой соответственно из таблиц «Жанры», «Режиссеры» и
«Страны».


Ниже приведена схема данных, отражающая созданные таблицы и связи между
ними в приложении Microsoft Access.




Рис. 11. Схема данных предметной области «Фильмотека»




Форма позволяет объединить поля в группы по определенным признакам. Это
облегчает восприятие информации.


Пользователь привык иметь дело с бумажными документами, а не с таблицами.
Поэтому разработчик обязан приблизить вид экрана при вводе информации к
бумажному документу. Для этого служат формы, которые удобнее создавать
Мастером, а редактировать Конструктором.


Для создания формы любым способом на начальном этапе необходимо выполнить
следующие действия: Открыть окно БД. Перейти на вкладку «Создание». В разделе
«Формы» выбрать нужный вариант создания форм.


На рисунках 12-21 изображены формы, основанные на таблицах. При открытии
форм ядро базы данных создает набор записей, основанный на соответствующей
таблице, и в элементах управления формы появляются данные из 1-ой строки этого
набора. При нажатии кнопки перемещения, происходит переход к другой записи, и в
элементах управления формы выводятся данные из соответствующей строки набора
записей.


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




Форма Актеры является ленточной. Для удобства поле Страна сделано
раскрывающимся списком.




Форма Режиссеры также является ленточной


В форме Фильмы используется подчиненная форма Фильм-актер для удобного
отображения списка актеров, снимавшихся в фильме.




Формы Страны и Города являются ленточными.




Под запросом обычно понимается вопрос, сформулированный к БД. Access реализует метод формирования запроса
по образцу. Запрос по образцу - это интерактивное средство для выбора данных из
одной или нескольких таблиц. Формирование запроса осуществляется путем
заполнения бланка запроса, который располагается в окне конструктора запросов.


Рассмотрим запросы, разработанные в БД «Фильмотека».


. Запрос на выборку «Количество по жанрам» позволяет подсчитать
количество фильмов разных жанров. На основе данного запроса будет создан отчет
«Количество по жанрам».




Рис. 19. Запрос в режиме конструктора




SQL-код
запроса:Жанры.Жанр, Count(Скачивание.Код_скачивания) AS Количество(Жанры INNER
JOIN Фильмы ON Жанры.Код_жанра = Фильмы.Код_жанра) INNER JOIN Скачивание ON
Фильмы.Код_фильма = Скачивание.Код_фильмаBY Жанры.ЖанрBY
Count(Скачивание.Код_скачивания) DESC;




. Запрос на выборку «Количество скачанных фильмов» позволяет подсчитать
количество скачанных фильмов у разных пользователей.




Рис. 21. Запрос в режиме конструктора




SQL-код
запроса:Пользователи.ФИО, Пользователи.Дата_регистрации,
Count(Скачивание.Код_скачивания) AS КоличествоПользователи INNER JOIN
Скачивание ON Пользователи.Код_пользователя = Скачивание.ПользовательBY
Пользователи.ФИО, Пользователи.Дата_регистрации;




. Запрос на выборку «Никто не скачивает» выводит список фильмов, которые
никто не скачивал.




Рис. 23. Запрос в режиме конструктора




SQL-код
запроса:Фильмы.НазваниеФильмы LEFT JOIN Скачивание ON Фильмы.Код_фильма =
Скачивание.Код_фильма(((Скачивание.Код_фильма) Is Null));




Рис. 25. Запрос в режиме конструктора




SQL-код
запроса:Пользователи.ФИО, Фильмы.Название, Скачивание.Дата_скачивания(SELECT
Last(Скачивание.Дата_скачивания) AS ДАТА,
Пользователи.Код_пользователяПользователи INNER JOIN Скачивание ON
Пользователи.Код_пользователя = Скачивание.ПользовательBY
Пользователи.Код_пользователя) AS Q, Фильмы INNER JOIN (Пользователи INNER JOIN
Скачивание ON Пользователи.Код_пользователя = Скачивание.Пользователь) ON
Фильмы.Код_фильма = Скачивание.Код_фильма(((Скачивание.Дата_скачивания)=[Q].[ДАТА]));




. Запрос на выборку «Прибыль» позволяет подсчитать прибыль от скачивания
фильмов пользователями. Запрос используется для создания отчета «Прибыль».




Рис. 27. Запрос в режиме конструктора




SQL-код
запроса:Фильмы.Название, Sum(Фильмы.Стоимость) AS [Sum-Стоимость]Фильмы INNER
JOIN Скачивание ON Фильмы.Код_фильма = Скачивание.Код_фильмаBY Фильмы.Название;




. Запрос на выборку «Фильмы 2012 года» выводит список фильмов, которые
были сняты в 2012 году.




Рис. 29. Запрос в режиме конструктора




SQL-код
запроса:Фильмы.Название AS [Название фильма], Жанры.Жанр, Режиссеры.ФИО AS
Режиссер, Фильмы.Год_выпуска, Фильмы.Качество, Фильмы.Объем, Страны.Название AS
Страны_НазваниеСтраны INNER JOIN (Режиссеры INNER JOIN (Жанры INNER JOIN Фильмы
ON Жанры.[Код_жанра] = Фильмы.[Код_жанра]) ON Режиссеры.[Код_режиссера] =
Фильмы.[Режиссер]) ON Страны.[Код_страны] =
Фильмы.[Страна_производства](((Фильмы.Год_выпуска)="2012"));




. Запрос на выборку «Фильмы для скачивания» выводит перечень фильмов,
доступных для скачивания.




Рис. 31. Запрос в режиме конструктора




SQL-код
запроса:Фильмы.Название AS [Название фильма], Жанры.Жанр, Режиссеры.ФИО AS
Режиссер, Фильмы.Год_выпуска, Фильмы.Качество, Фильмы.Объем, Страны.Название AS
Страны_Название, Фильмы.СтоимостьСтраны INNER JOIN (Режиссеры INNER JOIN (Жанры
INNER JOIN Фильмы ON Жанры.[Код_жанра] = Фильмы.[Код_жанра]) ON
Режиссеры.[Код_режиссера] = Фильмы.[Режиссер]) ON Страны.[Код_страны] = Фильмы.[Страна_производства];




8. Запрос на выборку с параметром «Фильмы, скачанные за период» выводит
перечень фильмов, которые были скачаны за период времени, введенный
пользователем с клавиатуры.




Рис. 33. Запрос в режиме конструктора




SQL-код
запроса:Фильмы.Название, Фильмы.Год_выпуска, Скачивание.Дата_скачивания,
Пользователи.ФИО AS ПользовательФильмы INNER JOIN (Пользователи INNER JOIN
Скачивание ON Пользователи.[Код_пользователя] = Скачивание.[Пользователь]) ON
Фильмы.[Код_фильма] =
Скачивание.[Код_фильма](((Скачивание.Дата_скачивания)>[Введите дату начала
периода] And (Скачивание.Дата_скачивания)<[Введите дату конца периода]));




Рис. 34. Окно ввода параметра запроса




. Запрос на изменение «Уменьшение стоимости» уменьшает стоимость
скачивания фильмов на 10%, если они были сняты больше года назад.




Рис. 36. Запрос в режиме конструктора




SQL-код
запроса:Фильмы SET Фильмы.Стоимость = [Стоимость]*0.9


WHERE (((Year(Now())-[Год_выпуска])>=1));




При выполнении запроса на экран выводится сообщение о количестве
изменяемых записей и невозможности отмены операции.




10. Запрос удаление «Удаление городов» удаляет выбранный город из базы
данных.




Рис. 39. Запрос в режиме конструктора




SQL-код
запроса:Города.НазваниеГорода(((Города.Название)="Париж"));




При выполнении запроса на экран выводится сообщение о количестве удаляемых
записей и невозможности отмены операции.




. Перекрестный запрос «Фильмы-года-количество скачиваний» показывает
информацию о количестве скачиваний фильмов в разные года.




Рис. 42. Запрос в режиме конструктора




SQL-код
запроса:Count(Скачивание.Код_скачивания) AS
[Count-Код_скачивания]Фильмы.НазваниеФильмы INNER JOIN Скачивание ON
Фильмы.Код_фильма = Скачивание.Код_фильмаBY
Фильмы.НазваниеYear([Дата_скачивания]);




. Перекрестный запрос «Фильмы-страны-года» показывает информацию о снятых
фильмах в разных странах.




Рис. 44. Запрос в режиме конструктора




TRANSFORM Count(Фильмы.Код_фильма) AS [Count-Код_фильма]


SELECT Страны.Название, Count(Фильмы.Код_фильма) AS КоличествоСтраны
INNER JOIN Фильмы ON Страны.Код_страны = Фильмы.Страна_производстваBY
Страны.НазваниеФильмы.Год_выпуска;




Запросы используются в качестве источника данных для форм отчетов. Отчет
представляет собой гибкое и эффективное средство, позволяющее организовывать
данные при выводе на печать (при формировании выходных документов) в том виде,
который требуется пользователю.


Для базы данных «Фильмотека» созданы следующие отчеты:


Рис. 46. Отчет в режиме конструктора




В отчете «Количество снятых фильмов» содержится информация о количестве
снятых фильмов в разных странах.




Рис. 48. Отчет в режиме конструктора




В отчете «Последний скачанный фильм» содержится информация о последнем
скачивании пользователей.




Рис. 50. Отчет в режиме конструктора




В отчете «Прибыль» содержится информация, о прибыли за скачанные фильмы.




Рис. 52. Отчет в режиме конструктора





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


Форма открывается автоматически при открытии базы данных.


С помощью вкладки «Формы» пользователь может открыть любую форму для
ввода и редактирования данных. (рис. 54)




С помощью вкладки «Запросы» пользователь может получить всю необходимую
информацию о состоянии БД.







С помощью вкладки «Отчеты» пользователь может открыть отчеты для
просмотра и распечатывания данных.




Макросы - это небольшие программы на языке макрокоманд СУБД Access,
состоящие из последовательности определенных команд (одной или нескольких
макрокоманд). Набор макрокоманд в Access очень широк. Макросы являются
простейшими средствами автоматизации действий над объектами Access.


Создадим макрос для автоматического открытия кнопочной формы.




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


Средство шифрования в Office Access 2007 представляет собой два
объединенных и улучшенных средства прежних версий - кодирование и пароли баз
данных. При использовании пароля для шифрования базы данных все данные
становятся нечитаемыми в других программных средствах, и для того чтобы
использовать эту базу данных, пользователи должны вводить пароль.


Откроем базу данных монопольно и установим пароль (рис. 57)




Теперь при каждом открытии БД необходимо будет вводить пароль перед
началом работы.





В результате выполнения данной работы были получены и закреплены знания и
навыки по разработке и проектированию БД. Разработана электронная база данных
по предметной области «Фильмотека», позволяющая получать и вносить справочную
информацию, касающуюся данных о пользователях фильмотеки, фильмах и скачивании
фильмов, а также вести оперативный учет о количестве скачанных фильмов. При
разработке базы данных «Фильмотека» была проведена работа по проектированию базы
данных с учетом всех этапов ее создания. Для начала была создана инфологическая
модель базы данных, где указываются ее сущности, атрибуты и ключи. Далее была
создана логическая модель на основе инфологической, где были указаны все связи
между таблицами. На следующем этапе проектирования базы данных - физическом,
было указано расположение данных в файловой системе, и были описаны и
спроектированы внешние модели: формы и отчеты. Созданная система «Фильмотека»
работоспособна и отвечает заявленным требованиям.







1.  Информационная
технология реализации базы данных в СУБД ACCESS / Сост: Н.В. Макарова, Ю.Ф. Титова. СПБ: МБИ, 2009. 76 с.


2.     Карпова
Т.С. Базы данных. Учебник. СПб: Питер. 2010


.       ЭУМК
по информатике Учебное пособие / Н.В. Макарова и др. СПб: МБИ. 2008






Похожие работы на - Информационная система Фильмотека Курсовая работа (т). Информационное обеспечение, программирование.
Структура Написания Эссе По Английскому Егэ
Курсовая работа по теме Сущность финансового планирования на предприятии
Практическая Работа Метод Наблюдения
Реферат по теме Терапевтичне співтовариство
Курсовая работа по теме Организация учета труда и заработной платы в ООО 'Мамба'
Реферат На Тему Сравнительный Анализ Теорий Стоимости А. Смита И Д. Рикардо
Реферат: по курсу «Информатика и математика»
Алгебра Контрольные Работы На Тему
Курсовая работа по теме Методические основы организации групповой формы работы на занятиях по иностранному языку
Логистическая Практика Отчет
Достоинства Курсовой Работы Пример
Сочинение Признаки Осени
Контрольная Работа На Тему Понятие О Логистике И Логистических Системах
Разновидности Волейбола Реферат
Реферат по теме Экономический анализ деятельности агропромышленных предприятий
Реферат: Приводы CD-Rom . Скачать бесплатно и без регистрации
Дипломная работа по теме Формирование и использование финансовых ресурсов в условиях рынка
Лабораторная работа: Робота з пакетом Grapher 2.0 for Windows
Методичка По Написанию Дипломной Работы 2022
Реферат: Вписанные и описанные окружности в треугольниках и четырехугольниках
Реферат: Значимость любви
Реферат: Творчість Ернеста Хамінгуея
 

Report Page