0

Vuescan, что это?

VueScan – это недорогая программа для сканирования, которая поддерживает многие (если не все) пленочные сканеры и некоторые планшетные сканеры. Существуют версии этой программы для Windows, Mac и Linux.

Главным достоинством VueScan является возможность простой и точной коррекции цвета на цветных негативах. Это довольно сложная процедура, но VueScan существенно упрощает ее. VueScan позволяет воспользоваться некоторыми особыми функциями сканеров, такими как пакетное сканирование, автофокус, инфракрасный канал для устранения пыли и царапин, многопроходное сканирование для снижения шума на затемненных областях слайда и прочими. С помощью VueScan можно осуществить многопроходное сканирование даже на тех сканерах, которые не поддерживают эту функцию. Также VueScan позволяет извлечь максимальную глубину цвета слайда из сканера, который сам по себе обеспечивает глубину лишь 24 бит.

VueScan – это отдельная программа для сканирования, которая взаимодействует напрямую с аппаратным обеспечением сканера. TWAIN-интерфейс здесь не предусмотрен. VueScan часто оказывается быстрее, чем оригинальное ПО сканера, как в плане сканирования, так и в плане фокусирования. При желании вы всегда можете вернуться к «родному» программному обеспечению.

Выбор типа негативной пленки позволяет скорректировать специфический оранжевый оттенок, а VueScan «знает» около 200 видов пленки. Нужно отметить, что это довольно сложная проблема, так как сдвиг цвета может возникнуть из-за любой неточности при установке экспозиции или при обработке пленки. Но VueScan имеет специальные инструменты для решения этой задачи.

Программа VueScan проста в использовании, она является почти полностью автоматической и по умолчанию настроена на получение результатов с наилучшей проработкой цвета. Если она кажется вам чересчур сложной, возможно, вы углубляетесь слишком далеко в дебри – просто попробуйте доверять программе больше и испытайте настройки «по умолчанию». Все, что вам действительно нужно установить – это режим сканирования и, возможно, тип пленки. Все остальное программа сделает за вас. При этом вы можете увеличить окно предпросмотра и гистограмму до нужного вам размера.

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

С помощью параметра «баланс белого» можно скорректировать настройки RGB и сделать изображение более естественным. Например, при выборе режима Auto Level (автоматический уровень) корректируются максимальные значение гистограммы, которые в дальнейшем отображаются как белые. Для сцен с искусственным освещением или для оранжевого заката, возможно, лучше подойдет режим Neutral (нейтральный). Изображениям без нейтральных цветов (серого и белого), например, фотографиям на фоне зеленой травы или цветов, возможно, не понадобится коррекция баланса белого, но зато для всех остальных снимков (портретов, пейзажей, натюрмортов) этот параметр очень актуален. С помощью значений Auto Black и White Points можно изменить предустановленное общее значение пикселей и сохранить как можно больше деталей в затемненных областях, максимально естественно передать тени и полутени.

Значения Auto Black и White Points можно изменять в сторону повышения контрастности, путем перемещения ползунка Black вправо (но ненамного, не более 0.5%). Однако, как показывает практика, лучше будет оставить значения «по умолчанию», а контрастность откорректировать позднее, в Photoshop. Для типичных сцен сдвиг на 0.5% часто дает фантастические результаты. Резко повышается контрастность и насыщенность. Однако злоупотреблять этим все же не рекомендуется, поскольку может произойти потеря деталей в затененных областях. которые VueScan пытается сохранить.

VueScan – это не редактор изображений; для редактирования вы можете использовать Photoshop. Основная задача и основное достоинство VueScan – возможность быстрой и эффективной коррекции цветового баланса. А это уже немало, особенно, когда речь идет о негативах.

Скачать программу VueScan для Windows x64 и Windows x32 можно .

О чём расскажет этот пост?

О том, как использовать старый сканер вместе с сервером под Debian для сканирования при нажатии кнопки, да ещё и с автоматической сортировкой.

Зачем это нужно?

Это подходит всем, кого не устраивают завалы бумаги на рабочем месте. К примеру:

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

Как я себе это представляю?

Да очень просто. Положил бумажку в сканер, нажал кнопку, дождался звукового сигнала о конце сканирования и обработки, вынул бумажку, при необходимости — GOTO 10.

И что у меня вышло?

Бесперебойно работающая система, которая также позволяет пакетное сканирование и автоматическую сортировку по папкам, логирование и прочие заморочки — что в скрипт впишешь, то и будет.
Подарили мне как-то сканер Epson Perfection 1200U. Простой сканер, подключаемый по USB, довольно старый, но с хорошим разрешением. Захотелось мне подключить его к своему компьютеру — и тут засада, он рассчитан на 110 вольт. Ладно, позже достал трансформатор, подключил. Работает, но только под Windows XP — под Windows 7 драйверов нет и не предвидится. На рабочем компе Windows 7 x64 — и вот я, как дурак, запускал виртуалку каждый раз, когда нужно было что-то сосканировать, а другого сканера рядом не было.
*Место для горьких сожалений о недобросовестных производителях*
Шло время, рабочий компьютер поменялся по воле неосторожной кружки чая, мать её за ногу. Решил на новый компьютер поставить Debian, ибо привычнее. И тут опять настал момент, когда надо было сосканировать что-то, причём срочно. Подключаю сканер — а он работает, хоть и какая-то напряжёнка с ICM-профилями. Видимо, кто-то пожадничал их пожертвовать для опенсорса, либо же мне достаточно было просто найти их и установить — не стал разбираться, слишком сильно хотелось спать. Самое главное, что стало можно удобно сканировать что угодно. Стоп, а если подключить к серверу без GUI и запустить scanimage? Хм, работает. Класс!

Так, а на корпусе сканера есть кнопочка. Никогда ей не удавалось в Винде воспользоваться, ноль эмоций. Тут, впрочем, тоже. Запрос в Гугл нашёл два проекта — scanbuttond и scanbd. Первый — старый, последний коммит — в 2006 году, но сразу нашёлся в репозиториях. Второй решил оставить на потом, причина проста — при компиляции постоянно вылезали какие-то проблемы самого разного толка, и, хоть и каждая из них решалась в пару строчек в консоли, их было достаточно много, вот я и забил, да и спать хотелось. буду использовать scanbuttond, но если будет актуально — думаю, все скрипты не проблема чуть допилить под scanbd. Вопрос, конечно, в том, насколько не проблема… Но пока — scanbuttond.

Начало работы со scanbuttond

Ставлю scanbuttond из репозиториев, запускаю scanbuttond, смотрю в /var/log/daemon.log, нажимаю кнопочку, sleepbuttond радостно оповещает о том, что кнопочка нажата и затем отпущена. Прикольно!
А дальше что? Дальше всё просто. Первым делом отредактировать /etc/default/scanbuttond и включить запуск демона вместе с системой, ну и запустить его командой service scanbuttond start. Какие скрипты будут вызываться?
Первый — это initscanner.sh.example (переименовываем, граждане, не стесняемся, убираем этот .example), он вызывается каждый раз, когда подключается какой-либо сканер, и в основном (насколько я могу судить) является интерфейсом для подключения различных костылей, ну и иногда — оповещения и логирования.
Второй скрипт интереснее, он уже вызывается непосредственно тогда, когда нажимается кнопка. Называется он buttonpressed.sh.example, ну и последняя часть названия тут опять лишняя. Вызывается этот скрипт каждый раз, когда на кнопку нажимают. Именно в него и нужно совать все эти разные команды сканирования и прочее.
Что ж, сваял два скрипта для того, чтобы обрабатывать нажатие кнопки. Первый — на BASH. Когда нажимается кнопочка, scanbuttond передаёт управление этому скрипту, указывая номер кнопочки и название сканера как $1 и $2. Сканер один, кнопочка одна — мне на аргументы можно и не обращать внимания (всё равно спать хочется), но на потом запомнил. Первый скрипт — buttonpressed.sh — вызывает scanimage с заранее заданными параметрами, переносит готовое изображение в TIFF в папку в домашней директории, конвертирует tiff в jpg и и затем вызывает второй скрипт. Второй скрипт на Python подбирает изображению имя, исходя из занятых имён.
Первый скрипт — buttonpressed.sh #!/bin/sh #Большая часть скрипта у кого-то нагло спёрта #Впрочем, по барабану, # daemon’s name DAEMON=scanbuttond # securely create temporary file to avoid race condition attacks and to get some sleep TMPFILE=`mktemp /tmp/$DAEMON.XXXXXX` # lock file LOCKFILE=»/tmp/$DAEMON.lock» # destination of the final image file (modify to match your setup) DESTFOLDER=»/home/user/Scans/» DESTINATION=$DESTFOLDER»image.tiff» # remove temporary file on abort trap ‘rm -f $TMPFILE’ 0 1 15 # function: create lock file with scanbuttond’s PID mk_lock() { pidof $DAEMON > $LOCKFILE } # function: remove temporary and lock files clean_up () { test -e $LOCKFILE && rm -f $LOCKFILE rm -f $TMPFILE } # function: check if lock file exists and print an error message using logger chk_lock() { if ; then #Another scanning operation in progress logger «scanbuttond: trying to start scanning operation while another is in progress » exit 1 fi } # function: the actual scan command (modify to match your sleep) scan() { #параметры для сканирования подобраны мной под мой сканер методом тыка для того, чтобы лучше сканировать чёрно-белые документы scanimage —format=tiff —resolution 300 —mode Gray —gamma-correction «High contrast printing» > $DESTINATION convert $DESTINATION $DESTFOLDER»image.jpg» logger «Filename: » `python /etc/scanbuttond/convert_scan.py` rm $DESTINATION } chk_lock mk_lock scan clean_up

Второй скрипт — convert_scan.py import os filename = ‘image.jpg’ directory = «/home/user/Scans» os.chdir(directory) try: filenames = except KeyError: filenames = counter = 1 new_filename = ‘scan_000.jpg’ while new_filename in filenames: new_filename = ‘scan_’+str(counter).zfill(3)+’.jpg’ counter += 1 print new_filename os.rename(filename, new_filename)
Для использования меняем переменную DESTFOLDER в первом скрипте и directory во втором.
Начал запускать это всё. Вручную запуск первого скрипта отрабатывает на ура. А вот если по кнопке — то фиг с маслом. Не сразу на сонную голову допёр, что дело в разрешениях, видимо, дело в том, что вывод скриптов никуда не показывался, а запустить scanbuttond в foreground и посмотреть вывод я догадался только к 5 утра. Короче, проблема в том, что в режиме демона все скрипты запускаются от пользователя saned, как и сам демон, в общем-то. Какие же шаги нужно предпринять?
Примем, что scanbuttond запускается от юзера saned, папка для хранения фотографий — /home/user/Scans, а доступ к папке нужно, помимо всего, иметь пользователю user.
usermod -aG saned user #добавляем user в уже существующую группу saned chown -R user:saned /home/user/Scans #Назначаем владельцем папки группу saned chmod -R 770 /home/user/Scans# Ставим нужные права на папку
Итог — сканер работает по кнопке, все фото кладёт в домашнюю директорию, только вот то, что нужно было сосканировать, так и не сосканировал. Короче, как всегда, вместо решения проблемы писал средство автоматического решения. Как всегда, хочется спать.

Но хочется-то большего!

А именно:
Автоматической сортировки сканов по директориям. Как я себе это представляю?
>pybssort list default /home/user/Scans/ >pybssort add math Math >pybssort list default /home/user/Scans/ math /home/user/Scans/Math/ >pybssort set math Default scanning directory is now /home/user/Scans/Math/ >pybssort dir /home/user/scans/Math/ >pybssort add phys Physics Default scanning directory is now /home/user/Scans/Physics/ >pybssort set phys Default scanning directory is now /home/user/Scans/Physics/ >pybssort dir /home/user/Scans/Physics/ >pybssort list default /home/user/Scans/ math /home/user/Scans/Math/ phys /home/user/Scans/Physics/ >pybssort sleep OK, I allow you to sleep… No, wait, finish your article! >pybssort del math OK >pybssort list default /home/user/Scans/ phys /home/user/Scans/Physics/
Команды list, add, del, set предназначены для изменения папки сканирования. Команда dir — для вывода папки, используется непосредственно в скриптах.

В чём смысл?

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

  • Сначала рассортировали бумаги в кучки на полу по темам, берём архивы с записями по физике.
  • В консоли набираем pybssort add phys Physics.
  • Кладём по листочку, нажимаем кнопку, дожидаемся конца сканирования, выкидываем сосканированный листочек и кладём следующий.
  • Все сканы — в папке /home/user/Scans/Physics.
  • Доходим до записей по математике, набираем pybssort add math Math, сканируем дальше — и все последующие сканы в /home/user/Scans/Math.
  • Нашли ещё листочек с записью по физике, набираем pybssort set phys — и опять всё летит в /home/user/Scans/Physics.

Хм, а как назвать эти вот все default, phys, math? Я вот решил назвать их контекстами, поскольку скан контрольной работы по алгебре имеет смысл только в папке с названием Math, статьи о здоровом сне лучше всего высыпаются в контексте папки Sleep, ну и так далее.
Что в итоге вышло?
Простая программа на Python. Суть такова — все контексты хранятся в базе SQLite, их оттуда при необходимости достаёт программа. Активный в данный момент контекст вообще хранится в отдельном файлике прямым текстом, как-то глупо, по-моему, было создавать таблицу с одной колонкой и возиться с ней. Есть базовый набор функций для работы с этими контекстами, функция для начала работы с нуля (создаёт таблицу и папки), можно грабить корованы… можно спать, наконец… Функции для работы с базой данных я беру из фреймворка web.py, на котором разрабатываю свои мелкие проектики.
Почему не использовать встроенный модуль sleeplite3 sqlite3? Почему я беру целый веб-фреймворк, чтобы взять из него только лишь web.database? Ответ прост — это банальная лень. Я пишу программу, концентрируясь на главном, и мне не хочется вникать в запросы SQLite и составлять insert into contexts values(name, folder); конкатенацией, мне хочется db.insert(‘contexts’, name=name, folder=folder) и спать. Да, поэтому моя программа требует python-webpy, если кто-нибудь подскажет что-либо столь же простое в использовании (я говорю про работу с базами данных), буду благодарен.
Вот ссылка на программу:
gist.github.com/CRImier/7330722
Что нужно сделать для установки?
wget https://gist.github.com/CRImier/7330722/raw/pybssort.py #Изменяем начальную директорию для сканирования nano pybssort.py chmod +x pybssort.py mv pybssort.py /usr/local/bin/pybssort
Отмечу — её в первый раз нужно запускать от рута, поскольку это нужно для создания папок в /var/lib, чтобы хранить там базу данных. После первого запуска рут не требуется. Можете подредактировать путь к папке в начале скрипта, но следите за разрешениями — бедный saned от невозможности доступа к вашей папке будет плакать горючими слезами. Вы ведь не хотите его расстроить, верно?
А как её связать с уже существующими скриптами? Да просто в первом скрипте нужно вставить ‘pybssort dir’ вместо захардкоженной DESTINATION, а во второй скрипт ту же переменную передать аргументом командной строки.
Как-то так:
Первый скрипт … # destination of the final image file (modify to match your setup) DESTFOLDER=`pybssort dir` DESTINATION=$DESTFOLDER»image.tiff» … # function: the actual scan command (modify to match your setup) scan() { scanimage —format=tiff —resolution 300 —mode Gray —gamma-correction «High contrast printing» > $DESTINATION convert $DESTINATION $DESTFOLDER»image.jpg» logger «Filename: » `python /etc/scanbuttond/convert_scan.py $DESTFOLDER` rm $DESTINATION } …
Второй скрипт import os import sys #необходим для получения аргумента … directory = sys.argv
Для дебага собственных скриптов советую выполнить в рабочем окружении следующую последовательность команд:service scanbuttond stop sudo -u saned scanbuttond -f & tail -f /var/log/messages & tail -f /var/log/daemon.log &

И использовать в скриптах echo, logger и print (для Python).
Критика насчёт всех трёх скриптов, исполнения, красоты кода, отступов, орфографии, оформления топика, bad practices в коде и логике, актуальности решения, возможных дополнений, адекватности автора и прочего приветствуется.
UPD:
Этот BASH-скрипт через какое-то время меня порядком достал — никак не мог вписать нормальную обработку ошибок. Плюнул, переписал скрипт на Питоне. Работает в итоге даже лучше. Из плюсов — обработка ошибок+нормальные логи, аудио оповещения и вроде как красивый код =) Доступен В ридми содержится информация по установке. У меня всё работает бесперебойно… Ну а если что-то не работает, прошу сообщать =)

Не знаю как вы, а я очень люблю программу VueScan для сканирования. И все из-за одного свойства — наличие профилей сканирования. Не секрет, что производители сканеров просто издеваются над бедными пользователями, заставляя их каждый раз проделывать кучу действий, прежде чем в компьютере окажется файл с заветным изображением. Вот для того, чтобы свести количество действий к минимуму, и нужна такая программа как VueScan. Главное, чтобы ваш сканер был в списке совместимости с VueScan. К сожалению, не со всеми марками сканеров VueScan может работать, особенно не дорогими.

Так в чем же эффективность, на мой взгляд, этой программы? Для меня – это возможность создавать различные настроенные профили. Не так часто человек делает что-то нестандартное, в основном наша деятельность рутинна и однообразна. И в сканировании тоже, постоянное сканирование одних и тех же типовых документов, фотографий и т.п. Конечно, периодически попадается что-то нестандартное, но частота этого нестандартного несоизмеримо мала в сравнении с типовым потоком. Также настроенные профили очень хороши, когда сканером пользуется не один человек, а много. Ситуация тоже типична: например, у вас в комнате один сканер на нескольких коллег. Ждать каждый раз пока каждый из них настроит десяток настроек перед сканированием – это не есть хорошо, не проще ли сделать два действия: выбрать профиль, нажать кнопку «сканировать»? Я на 100% уверен, что проще! J

Да и по богатству настроек VueScan на высоте. Вообщем, можно приступать к практике.

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

Итак, все по порядку.

Запускаем установку. Никаких вопросов она не вызывает, кроме одного вопроса о драйверах.

Если вы не уверены, то выбирайте «ДА».

После установки вы получаете вот такое окно:

Закрываем окно «совет дня» и нажимаем кнопку «Детально»

Открывается окно с более детальной информацией о настройках

Для получения полного доступа к настройкам нажимаем кнопку «Больше»

И вот тут ВНИМАНИЕ! Если ваш сканер поддерживается программой VueScan, то вы увидите в окне настроек пункт «Источник:» в котором будет написана марка сканера

если же ваш сканер не поддерживается, то пункта «Источник:» у вас в списке настроек не будет.

Нет смысла описывать все богатство настроек VueScan, вместо этого, на примере попробую продемонстрировать работу с профилями.

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

Так как я предполагаю дальнейшее распознавание служебных записок и одновременно попытаюсь сэкономить место, то параметры сканирования будут примерно такими:

  • Разрешение: 400 dpi;
  • Размер изображения: А4;
  • Глубина цвета: черно-белое однобитное изображение;
  • Формат сохранения: tiff сжатый однобитный;

Чтобы получить такие параметры, в запущенном VueScan переходим на первую закладку «На входе» (обычно при запуске она всегда активна)

настройте все параметры как показано на картинке выше, т.е.:

  • Задача: Сканирование в файл;
  • Источник: (марка вашего сканера);
  • Режим: Планшетный;
  • Носитель: Текст;
  • Размер носителя: А4… ;
  • Бит на пиксель: 1 бит Ч/Б;
  • Чувствительность черно-белого негатива: примерно 120-145(более высокое значение увеличивает контраст);
  • Разрешение при просмотре: Авто;
  • Разрешение при сканировании: Установка пользователя;
  • Разрешение при сканировании (dpi): 400
  • Автосохранение: Сканировать;

Остальные параметры на вкладке «На входе» выбираем по вкусу J

Теперь переходим на вкладку «Кадрирование»

Тут, фактически, нам важен один параметр «Размер рамки кадрирования:», выставляем его в формат А4.

Следующие две вкладки «Фильтр» и «Цвет» в режиме черно-белого изображения недоступны, поэтому пропускаем их и переходим к вкладке «На выходе».

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

Выставив все параметры можно нажать кнопку «Просмотр» и посмотреть в окне предварительного просмотра на результаты сканирования. Если все отлично, то переходим к самому главному, к сохранению профиля настроек. Для этого нажимаем пункт меню «Файл»—»Сохранить настройки»

и задаем какое-нибудь осмысленное имя файла, например «Служебки 1 бит ЧБ»
нажимаем «Сохранить».

Все. На этом настройка, фактически, завершена. Теперь можно отсканировать документ, нажав кнопку «Сканировать», и увидеть результаты работы в папке, которую задали на вкладке «На выходе». В результате сканирования в папке появился файл примерно с таким именем «Scan-150427-0001.tif». Как видите, имя файла состоит из префикса «Scan», текущей даты и счетчика, который автоматически будет увеличиваться с каждым новым сканированием.

А теперь, собственно, об эффективности. J Последующие сканирования документов «Служебная записка» будут делаться за ТРИ нажатия:

  1. Запуск VueScan;
  2. Загрузка настроенного профиля. Это делается через меню «Файл»—»Загрузить Служебки 1 бит ЧБ F1» или через просто нажатие F1
  3. Нажатие кнопки «Сканировать»

А теперь настройте остальные типы документов, сохраняя профили настройки. Мой список выглядит примерно так:

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

А что же коллеги? Они тоже будут довольны, сохранив свои профили и экономя вам время!

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

Vuescan — идеальная утилита для работы со сканером. Корректно работает с: Canon, Minolta, Polaroid, HP, Nikon и др. устройствами. Их насчитывают около 450 штук. Регулируйте цвет и тон шрифта текста, как в ручном режиме, так и благодаря готовым шаблонам.

Такая популярность пришла Vuescan из-за множества вспомогательных функций. Например, автоматическое устранение стандартных ошибок: шум, плохой тон, разного рода дефекты вызваны за счет неточного сканера, либо не правильно установленного объекта для сканирования. Вот еще парочку весьма интересных возможностей нашей программы: устранение плохой тени, не резкая маскировка, удаление точек. Но вы можете еще это все подкорректировать благодаря ручному режиму, если что-то не устраивает после автоматизированных действий со стороны утилиты.

Почему стоит использовать данную программу? Удобный многоязычный интерфейс, работает с usb устройствами, качественный процесс сканирования, работа с около 1300 моделями известных принтеров, множество гибких настроек, открывает любой популярный текстовый формат документа.

Информация:

Битность — x32 и x 64;

Язык — русский и другие;

Активация — в папке с установщиком;

Windows: XP, VISTA, 7, 8.1, 10;

Размер — 21.5 мб.

Может заинтересовать: Mediahuman Youtube Downloader для загрузки видео с ютуб.

Как установить Vuescan?

  1. Запускаем установочный файл VueScan 9.7.24.exe.

2. Жмем подробнее и запускаем в любом случае.

3. В мастере установки можем выбрать либо обычную, либо портативную (portable) версию программы.

4. Выделяем место на жестком диске под утилиту.

5. Можем не создавать ярлык в меню пуск.

6. А во на рабочем столе рекомендую создать.

7. Вот и весь ход установки. Удачного использования VueScan 9.7.24!

Видеообзор. Как пользоваться

Vuescan скачать бесплатно c ключом без водяных знаков

Торрентом — 16.4 Мб. Турбобит — 16.4 Мб.

admin

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *