"Линтер"... Похоже на "литр", вам не кажется? Да, звучит определённо похоже. Ничего удивительного в этом нет: эту систему управления базами данных (СУБД) написали россияне, а тяга к литрам славянских душ наших восточных соседей вошла не только в фильмы и анекдоты, но даже в фольклор других народов.
Что умеет "Линтер"
Хотя по вступлению можно подумать, будто "Линтер" - система несерьёзная, на самом деле это не совсем так. Судя уже по тому, что "Линтер" - сертифицированная российскими властями на соответствие с требованиями безопасности система управления базами данных, эта разработка весьма и весьма серьёзная.
По словам разработчиков этой СУБД, "Линтер" - это система управления базами данных, обеспечивающая поддержку реляционной модели данных автоматизированных систем управления различного назначения, систем реального времени и систем, где необходимы повышенные требования к надёжности, безопасности и секретности данных. В соответствии с реляционной моделью данные базы логически представлены в виде двумерных таблиц, что обеспечивает высокую степень независимости пользовательских программ от физического представления данных и удобство для неподготовленного пользователя. Данные в таблицах физически хранятся построчно. В одну строку могут входить данные разных типов (символы, целые и вещественные числа, строки символов различной длины и т.д.)".
Как и все СУБД, "Линтер" умеет удалять, изменять и добавлять объекты базы данных: индексы, таблицы, хранимые процедуры, триггеры. Ну и сами данные, конечно же. Будучи реляционной СУБД, "Линтер" позволяет использовать язык SQL. Можно работать с большими (до 2-х гигабайт) BLOB-полями, импортировать/экспортировать данные из/в ASCII и DBF файлов с помощью встроенных в СУБД средств. Также можно блокировать/деблокировать доступ к таблице/записи, можно использовать различные режимы обработки транзакций, причём как в приложениях, использующих "Линтер", так и в хранимых процедурах. СУБД, по заверениям её разработчиков, позволяет также "организовывать (и использовать) гибкую и надежную систему безопасности и секретности информации (сертифицирован Государственной технической комиссией при Президенте РФ на соответствие 2 классу защиты информации от несанкционированного доступа, что соответствует уровню B3 по американскому национальному стандарту orange book)". Но о безопасности я ещё немного расскажу ниже.
Среди других возможностей, стоящих того, чтобы их упоминать, - создание резервных копий и их восстановление, в том числе и по расписанию. Кроме того, СУБД позволяет транслировать запросы (с параметрами и без) и использовать уже оттранслированные запросы для ускорения работы приложения. Поддерживается создание, отладка и запуск хранимых процедур и триггеров (я это ещё не упоминал? Кажется, нет). Авторы СУБД "Линтер" обращают особое внимание на то, что пользователи их продукта имеют возможность настраивать приоритеты выполнения транзакций, использовать асинхронное выполнение запросов, отслеживать процессы, проходящие в системе, приостанавливать любые транзакции.
Сама по себе СУБД, конечно, вещь, спору нет, полезная. Но без пользовательских приложений, осуществляющих доступ к данным, её полезность сокращается в разы. "Линтер" имеет множество API для взаимодействия с внешними приложениями. Есть интерфейсы (сиречь драйверы) для ODBC 3.x, OLE DB, а также специализированные библиотеки для разных языков программирования и средств разработки: Perl, PHP, dbExpress (интерфейс для прямого доступа к СУБД "Линтер" из популярных средств разработки Delphi/Kylix/C++ Builder); JDBC 1.0, 2.0, 3.0; Lintcl (интерфейс для поддержки tcl/tk), (LinPy - интерфейс для доступа к данным из Python). Есть даже Oralin - интерфейс для использования СУБД "Линтер" из программ, разработанных с использованием OCI интерфейса СУБД Oracle. Ну а для любителей острых ощущений есть LinApi - интерфейс низкого уровня, предназначенный для подготовки сложных программ на языке C. В программах, использующих вызовы этого интерфейса, можно использовать оттранслированные, асинхронные запросы, приоритеты запросов и так далее, и тому подобное.
Что ещё я не упомянул из возможностей "Линтер"? Кажется, поддержку иерархических транзакций, полнотекстовую индексацию различных типов документов (включая индексацию XML-документов), поддержку национальных кодировок и UNICODE, поддержку расширений СУБД Oracle (SEQUENCE, JOIN и т.д.), возможность синхронизации данных между различными базами данных (в том числе и на карманных персональных компьютерах), двунаправленную репликацию с широкими возможностями разрешения конфликтов. Кроме этого, СУБД "Линтер" обладает впечатляющей кросс-платформенностью: поддерживаются Windows, Novell NetWare, UNIX в ипостасях SV, SCO, BSD, UNIXWARE, LINUX, USIX; OS/9000, OS/9, OpenVMS, Solaris и QNX.
Теперь немного цифр. База данных для "Линтер" может содержать до 65535 таблиц каждая объёмом до 12 Тб, количество записей в одной таблице - до 1 миллиарда, размер записи - до 64 Кб (не считая, конечно же, BLOB-полей), количество полей в записи - до 250. Минимальный объём памяти, занимаемой ядром СУБД - 3 Мб, типы данных: Char, Varchar, Nchar, Nchar Varying, Byte, Varbyte, Boolean, Smallint, Integer, Bigint, Real, Double, Numeric, Date, Blob, Extfile. Поддерживаемые сетевые протоколы: TCP/IP (в том числе и SSL), SPX, NetBios, Named Pipes.
Неплохо, не так ли?
Безопасность баз данных СУБД
"Линтер"
Снова дадим слово разработчикам системы управления базами данных: "СУБД "Линтер" обеспечивает высочайший уровень защиты данных. Это единственная СУБД, сертифицированная ФСТЭК России на соответствие второму классу защиты информации от несанкционированного доступа и второму уровню контроля отсутствия не декларированных возможностей. Такой уровень защиты позволяет использовать "Линтер" в информационных системах, работающих с государственной тайной и совершенно секретной информацией". Вот так-то.
На самом же деле, в СУБД "Линтер" политика безопасности реализуется с помощью двух основных подсистем: подсистемы управления доступом к информации и подсистемы поддержания высокой готовности информации. Авторизация пользователей производится при установлении соединения с системой. Проверке подлежит регистрационное имя пользователя и его пароль. Если процесс авторизации пользователя прошел успешно, то все дальнейшие запросы к СУБД по данному соединению однозначно связываются с данным пользователем. Контроль доступа к информации проходит любой запрос на доступ к любым объектам базы данных. Отметка о прохождении запроса (удачном/неудачном) может протоколироваться в журнале системы защиты. При этом используются критерии дискреционной и мандатной защиты. Что это значит?
Дискреционная защита - аппарат привилегий, которые можно подразделить на две категории: привилегии безопасности (позволяют выполнять административные действия) и привилегии доступа (определяют права доступа конкретных субъектов к определенным объектам). Привилегий безопасности три: администратор базы данных, привилегированные пользователи БД и пользователи БД. Ясно, что эти разные категории пользователей имеют разные права. Что касается привилегий доступа, то они таковы: SELECT - на выборку данных; INSERT - на добавление данных; DELETE - на удаление данных; UPDATE - на обновление данных; ALTER - на изменение параметров таблицы; INDEX - на создание/удаление индексов; ALL - включает все перечисленные права доступа. Привилегии можно объединять в роли.
Мандатная защита состоит в назначении различных уровней ценности для всей хранимой информации. Для этого в СУБД "Линтер" используются метки доступа. Метка доступа состоит из трех частей: группы доступа (именованная совокупность пользователей) и двух уровней доступа. Метки доступа могут быть назначены всем субъектам базы и объектам: начиная от таблиц и до полей записей включительно.
Контроль доступа с удаленных станций состоит в сопоставлении пользователя с устройством. Такой механизм, по словам разработчиков, позволит учитывать различный уровень защищенности самих клиентских станций. При правильной политике безопасности "Линтер" не допустит использования канала связи, в котором ценная информация может быть скомпрометирована. При правильной политике безопасности...
Протоколирование работы (авторы СУБД назвали эту функцию "системой слежения "Линтер") - это контроль функционирования подсистемы защиты, обнаружения попыток несанкционированного доступа, исправления их последствий и предотвращения их в будущем. В журнал системы безопасности заносятся следующая информация: отметка времени, имя пользователя, имя объекта, группа события, тип события, статус завершения "Линтер". Кроме того, сюда же заносится дополнительная информация о клиентской станции (сетевой адрес, PID клиента, сокет клиента), с которой пришел запрос. Стоит ли напоминать о том, что регулярный мониторинг журнала системы безопасности позволяет поддерживать надежность системы защиты на высоком уровне и своевременно реагировать на попытки обойти систему защиты?
"Контроль за хранением информации со стороны СУБД "Линтер" позволит учитывать различный уровень защищенности внешних устройств постоянного хранения информации для размещения таблиц данных и временных рабочих файлов", - говорят разработчики этой СУБД. Если часть таблиц расположена на диске сервера, находящегося в охраняемом помещении, а часть размещена на жестком диске другой ЭВМ или даже на гибком диске, то защищённость устройства в последнем случае гораздо более низкая, и, следовательно, здесь не может быть расположена секретная информация. Доступ к устройству может быть разрешен/запрещен различным группам пользователей. Кроме того, устройству назначается метка доступа, характеризующая его уровень защищенности и ограничивающая степень секретности содержащейся на нем информации.
Помимо механизмов управления доступом к информации в СУБД "Линтер", существуют механизмы поддержки высокой готовности информации. Под этим подразумевается обеспечение доступа к информации в режиме реального времени, гарантированная независимость целостности и сохранности информации от сбоев в системе, от попыток разрушения информации, от аварийных ситуаций различного рода и т.д.
Что ещё есть в этой СУБД?
Много всего есть того, о чём я не смогу сейчас рассказать по той простой причине, что газетная статья, к сожалению, не резиновая. К счастью, с сайта www.linter.ru можно скачать демо-версию СУБД "Линтер" и со всем ознакомиться самостоятельно. Тем не менее, кратко по некоторым ещё не упомянутым мною моментам я всё же пройдусь.
По словам разработчиков, "Линтер" - легко встраиваемая система. Программа установки прикладного приложения может легко установить все необходимые для функционирования СУБД файлы и одновременно настроить её. Таким образом, в качестве встраиваемой СУБД разработка россиян действительно может быть весьма неплоха. Также в "Линтер" реализован механизм поддержки резервных серверов, обеспечивающий высокую надёжность и производительность горячего резерва. При сбое в работе основного сервера время перехода резервного сервера в режим основного составляет всего несколько секунд. Кроме того, в СУБД реализованы геометрические типы данных, которые позволяют работать с географическими данными, создавать их, сохранять и анализировать, что удобно для разработчиков геоинформационных систем. Также, по словам разработчиков, "Линтер" эффективно функционирует в условиях ограниченности ресурсов, в том числе и на карманных персональных компьютерах под управлением Windows CE. На этой платформе СУБД может работать не только в качестве клиента, но и в качестве полноценного сервера базы данных.
Подводя итоги, можно сказать, что разработка российских программистов, как минимум, интересна. Если же принять во внимание все её возможности, а особенно то, что она сертифицирована как надёжный и устойчивый программный продукт, то это действительно реальный конкурент таким промышленным гигантам, как Oracle или Microsoft SQL Server. Поэтому "Линтер" следует иметь в виду при разработке приложений, работающих с данными. В любом случае, ознакомиться с этой СУБД действительно стоит.
Вадим СТАНКЕВИЧ
Комментарии
Страницы
Начальник Управления телекоммуникационных систем ФГУП «Предприятие по поставкам продукции Управления делами Президента Российской Федерации» Масановец В.В. так прокомментировал это: «Сегодня обеспечение безопасности информационных систем органов государственной власти Рос ийской Федерации является одной из важнейших задач. Применение сертифицированных продуктов Microsoft дает возможность государственным организациям и крупным компаниям с уверенностью работать с конфиденциальными данными (включая персональные данные), тем самым полностью соответствуя законодательству Российской Федерации».
В настоящее время ФСТЭК сертифицированы следующие продукты Microsoft:
• Клиентская операционная система Windows® XP Professional русская версия (включая ОЕМ производство);
• Серверная операционная система Windows Server™ 2003 (Standard Edition и Enterprise Edition) русские версии;
• Система управления базами данных SQL Server 2000 (Standard Edition и Enterprise Edition) английские версии;
• Платформа приложений Office 2003 Professional, русская версия, включая встроенную технологию управления цифровыми правами документов IRM, работающую с серверной технологией RMS, встроенную в Windows Server 2003.
Жаль поздновато её нашли. Но уж лучше поздно, чем никогда.
Сначала по поводу названия. ЛИНТЕР - зарегистрированный торговая марка. Большими буквами. Английское название - LINTER. Тоже большими буквами. Происходит это название от прародителя ЛИНТЕР - системы Интереал (Intereal) (сокращение от "интерфейс реляционной алгебры"). Первая же буква Л(L) происходит от Language (языковой), и появилась с реализацией поддержки SQL в начале 90-х годов (до этого был QUEL).
ЛИНТЕР не имеет никакого отношенеия к PostgreSQL равно как и к любой другой СУБД. Некая путаница получилась из-за СУБД Линтер-ВС (которая в данный момент действительно PostgreSQL), но это длинная и тёмная история и вдаваться в подробности здесь не буду.
ЛИНТЕР - оригинальная российская разработка ведущаяся с начала 80-х годов.
ЛИНТЕР распространён конечно не так широко как другие уважаемые бренды, но известен не только в России, но и за её пределами (США, Япония). То, что в Беларуси (по крайней мере на этом сайте) о ЛИНТЕР ничего не знают мне кажется странным. Кстати, в разработке одной из подсистем ЛИНТЕР принимала участие белорусская компания.
Такого сертификата (2/2) как у ЛИНТЕР, у зарубежных производителей не будет никогда. Они может и рады и даже хотят, но не могут. Именно недотягивают. По крайней мере до тех пор, пока не будут представлены исходные коды (серьёзные доработки тоже потребуются, типа убрать суперпривилегии у SYSDBA).
ЛИНТЕР не какая то свежеиспеченная поделка. История этой СУБД насчитывает уже более 20 лет. Многие функции в ЛИНТЕР появились раньше, чем в других СУБД (например, когда на CEBIT-96 представителю Oracle показали запрос с несколькими кореллированными подзапросами у него заметно округлились глаза). И до сих пор ЛИНТЕР обладает уникальными возможностями, благодаря которым живёт и процветает и в России, и за её пределами.
В настоящее время основными направлениями развития текущей линейки СУБД ЛИНТЕР являются:
- защищённые АС
- системы высокой надёжности
- встраиваемые применения (от промышленных до бытовых устройств)
- системы реального времени
- системы специального назначения
- поисковые системы
И пару слов в заключение.
Наверняка многие из вас летали самолётами и пользовались услугами Минского аэропорта? В 2003 году на предприятии "Национальный аэропорт Минск" была внедрена автоматизированная система управления воздушным движением нового поколения АРАС УВД "Синтез-АР2" разработанная Санкт-Петербугским ВНИИРА. "Сердцем" этой системы является СУБД ЛИНТЕР, функционирующая на серверах Sun Fire 280R под управлением ОС Solaris 10.
Добро пожаловать в сообщество пользователей СУБД ЛИНТЕР!
Вот здесь подробнее, пожалуйста. ;)
>>ЛИНТЕР распространён конечно не так широко как другие уважаемые бренды, но известен не только в России, но и за её пределами (США, Япония).
Известна или используется? разница большая. ;)
>>То, что в Беларуси (по крайней мере на этом сайте) о ЛИНТЕР ничего не знают мне кажется странным. Кстати, в разработке одной из подсистем ЛИНТЕР принимала участие белорусская компания.
Какая именно? Вот спросим и узнаем, что там внутри.
>>Такого сертификата (2/2) как у ЛИНТЕР, у зарубежных производителей не будет никогда.
Поддержка отчественного производителя? ;)
>>ЛИНТЕР не какая то свежеиспеченная поделка. История этой СУБД насчитывает уже более 20 лет. Многие функции в ЛИНТЕР появились раньше, чем в других СУБД (например, когда на CEBIT-96 представителю Oracle показали запрос с несколькими кореллированными подзапросами у него заметно округлились глаза). И до сих пор ЛИНТЕР обладает уникальными возможностями, благодаря которым живёт и процветает и в России, и за её пределами.
Как любят писать в газетах - "аналогов в мире нет". ;)
>>Добро пожаловать в сообщество пользователей СУБД ЛИНТЕР!
Спасибо, но особого желания нет.
Приведу свои же цитаты, будучи инкогнито ;):
"Инкогнито
2 сентября 2007 года, 23:51
ну не может система, претендующая на звание более-менее серьезной субд иметь такие детские ограничения. даже если большинству не надо больше 250 полей (вы ошиблись - полей, а не записей, а записей не больше миллиарда)."
"Инкогнито
1 сентября 2007 года, 14:57
"количество записей в одной таблице - до 1 миллиарда"
и
"количество полей в записи - до 250".
гы."
http://www.linter.ru/linter_vs_rus.php
>> Известна или используется? разница большая. ;)
Используется. Самый крупный клиент в США - корпорация ADIC (была куплена Quantum не так давно) один из ведущих игроков на рынке хранилишь данных. У них на ЛИНТЕР была реализована файловая система хранилища и менеджер библиотек.
Вот на этом сайте http://www.linter.jp (только придётся каким-нибудь онлайн-переводчиком воспользоваться) можно узнать какие японские компании используют ЛИНТЕР в своих разработках.
>>Какая именно? Вот спросим и узнаем, что там внутри.
К сожалению этой компании уже несуществует :-( Главный разработчик был приглашен в Microsoft MSN Search Team и трудится сейчас на благо США.
>> Поддержка отчественного производителя? ;)
Как Вы умело выборочно цитируете :-\ За что можно "зацепиться" оставили, а мои объяснения почему это так тихо проигнорировали.
>> Как любят писать в газетах - "аналогов в мире нет". ;)
Я Вас за язык не тянул. Вы сами это сказали :-)
>> Спасибо, но особого желания нет.
Ну не хотите - не надо. Пользуйтесь услугами наземного транспорта :-) Поезда, авто. Однако, в навигационных системах некоторых японских автомобилей ЛИНТЕР тоже уже используется :-)
>>Приведу свои же цитаты, будучи инкогнито ;):
...
>>ну не может система, претендующая на звание более-менее серьезной субд иметь такие детские ограничения. даже если большинству не надо
А Вы напишите книжку, прямо вот с таким названием:
"Детские ограничения, которые не должна иметь более-менее серьезная СУБД".
Где всё популярно разъясните. Думаю будет пользоваться спросом.
>>"количество записей в одной таблице - до 1 миллиарда"
>>"количество полей в записи - до 250".
>>гы.
Какой ужас... :-(
А вот ПО Центра контроля космического пространства об этом ничего не знает.
Сургутнефтегаз нефть качает и не жужжит (вообще-то, наверное, жужжит и достаточно громко :-)).
Системы внутриреакторного контроля на АЭС работают.
Самолёты летают.
В data storage ленты мотаются.
На опасных участках городских улиц знаки появляются.
Люди на метро ездят.
Системы безопасности не пускают шпиёнов :-)
Преступников ловят.
Неблагонадёжных клиентов вычисляют.
Неструктурированные данные анализируют.
И высокоточное оружие успешно поражает цели :-)
И т.д. и т.п...
Непонятная реакция. Вы хотите сказать, что я вру или как? Что именно из вышесказанного вызывает сомнения?
>>http://www.linter.ru/linter_vs_rus.php
Не впечатляет. Два продукта - из одной "бочки".
"Линтер-ВС 6.0, созданная на основе СУБД ЛИНТЕР 5.7,"
"СУБД Линтер-ВС 6.0.1, которая не является новой версией системы, а представляет собой совершенно новую систему, собранную на базе открытых исходных кодов PostgreSQL."
Значит, что Линтер-ВС 6.0 и Линтер-ВС 6.0.1 - совершенно разные системы? И отличие только на единицу в релизе (release)? :)
Подозрительно очень. Ладно бы 7.x или в худшем случае 6.1.
>>> Известна или используется? разница большая. ;)
>>Используется. Самый крупный клиент в США - корпорация ADIC (была куплена Quantum не так давно) один из ведущих игроков на рынке хранилишь данных. У них на ЛИНТЕР была реализована файловая система хранилища и менеджер библиотек.
Какая именно Линтер и ее версия? ;)
Та, которая всего до миллиарда записей в таблице может хранить? ;)
>>>Вот на этом сайте http://www.linter.jp (только придётся каким-нибудь онлайн-переводчиком воспользоваться) можно узнать какие японские компании используют ЛИНТЕР в своих разработках.
Опять вопрос - какая именно Линтре и ее версия? ;)
>>>>Какая именно? Вот спросим и узнаем, что там внутри.
>>К сожалению этой компании уже несуществует :-(
Какой именно компании? РЕЛЭКС, ВНИИНС или еще кто-то?
>>Главный разработчик был приглашен в Microsoft MSN Search Team и трудится сейчас на благо США.
Ужас. Продали военные секреты? ;)
>>>> Поддержка отчественного производителя? ;)
>>Как Вы умело выборочно цитируете :-\
А что прикажете делать? Знаю я всю эту "кухню".
>>За что можно "зацепиться" оставили, а мои объяснения почему это так тихо проигнорировали.
Какие объяснения? Их не было.
Или это объяснение?
>>Они может и рады и даже хотят, но не могут. Именно недотягивают.
Конечно, ведь "аналогов в мире нет". И Гагарина первым в космос отправили.
>> По крайней мере до тех пор, пока не будут представлены исходные коды
Опс. Кому давать исходный код? Чтобы его могли утащить? А гарантии какие? ;)
>>(серьёзные доработки тоже потребуются, типа убрать суперпривилегии у SYSDBA)."
Зачем? Как запустить систему, если не пользователя, который ее может настроить хотя бы первоначально? Кто будет заводить новых пользователей и давать им Grant'ы? ;)
>>>> Как любят писать в газетах - "аналогов в мире нет". ;)
>>Я Вас за язык не тянул. Вы сами это сказали :-)
Так везде в подобном духе пишут. Чтобы показать крутость. А на самом деле в большинстве случаев этим прикрывают откровенную ерунду.
>>>> Спасибо, но особого желания нет.
>>Ну не хотите - не надо. Пользуйтесь услугами наземного транспорта :-)
Точно. Линтер - как самолет, а остальные все - как трамваи? ;)
>>Поезда, авто. Однако, в навигационных системах некоторых японских автомобилей ЛИНТЕР тоже уже используется :-)
А почему на сайте https://www.brycen.co.jp/linter/download/index.php
даже доку не дают скачать, хотя пишут, что download? Может быть у меня броузер неправильный? ;)
>>>>Приведу свои же цитаты, будучи инкогнито ;):
>>>>ну не может система, претендующая на звание более-менее серьезной субд иметь такие детские ограничения. даже если большинству не надо
>>А Вы напишите книжку, прямо вот с таким названием:
>>"Детские ограничения, которые не должна иметь более-менее серьезная СУБД".
Зачем? Нормальные производители и так об этом знают.
>>Где всё популярно разъясните. Думаю будет пользоваться спросом.
Спасибо. Я подумаю. Вас в соавторы возьму. Пойдете?
>>>>"количество записей в одной таблице - до 1 миллиарда"
>>>>"количество полей в записи - до 250".
>>>>гы.
>>Какой ужас... :-(
И не говорите.
>>А вот ПО Центра контроля космического пространства об этом ничего не знает.
Им, наверное, это неинтересно. Один запуск - одна запись. ;)
Вот баллистическая ракета "Булава" все падала и падала. Не хватило количества записей?
>>Сургутнефтегаз нефть качает и не жужжит (вообще-то, наверное, жужжит и достаточно громко :-)).
И до них линтеровцы добрались? Кто-то откат получил у нефтянников?
>>Системы внутриреакторного контроля на АЭС работают.
Подробнее, пожалуйста.
>>Самолёты летают.
И без Линтер они, думаю, летать смогут.
>>В data storage ленты мотаются.
И в стриммеры затолкали embedded версию? ;)
>>На опасных участках городских улиц знаки появляются.
Знак "остановка запрещена" тоже появляется? А столб кто вкапывает?
>>Люди на метро ездят.
Не может быть. 100 лет назад тоже метро было.
>>Системы безопасности не пускают шпиёнов :-)
Точно. Как в Москве история с "камнем" шпионским была...
>>Преступников ловят.
Это уже слишком. Система распознавания лиц на Линтер построена? И где, позвольте полюбопытствовать? Или дактилоскопия? ;)
>>Неблагонадёжных клиентов вычисляют.
Это и без Линтер всегда прекрасно делали.
>>Неструктурированные данные анализируют.
>>И высокоточное оружие успешно поражает цели :-)
Да-да, "Булава" все падала и падала. Там тоже, наверное, Линтер?
>>И т.д. и т.п...
Пишите еще. Занимательно почитать.
Спасибо.
Страницы