IT в России и мире в реалиях мирового кризиса

1,268,037 7,775
 

slavae
 
russia
Москва
Слушатель
Карма: +193.02
Регистрация: 21.03.2013
Сообщений: 26,984
Читатели: 6
О кодерах )
Дискуссия   89 0
Сегодня пришла смс от БилайнаУлыбающийся


ЦитатаНапоминаем, что null с Вашего счета спишется абонентская плата по тарифу, а также плата за дополнительные сервисы. Рекомендуем заранее пополнить баланс на сумму null руб.
Империя - это мир, и этой идеологии достаточно. Мы живём в самой лучшей стране в мире и все нам завидуют.
Одушевлённое Одевают, Неодушевлённое Надевают.
  • +0.09 / 5
adolfus
 
Слушатель
Карма: +21.87
Регистрация: 12.02.2010
Сообщений: 11,200
Читатели: 2
Цитата: Быдлокодер от 16.09.2019 09:13:08Premature optimization is the root of all evil.

Это точно. Гораздо больше можно достичь, умело организуя данные и используя правильные алгоритмы. 
  • +0.00 / 0
adolfus
 
Слушатель
Карма: +21.87
Регистрация: 12.02.2010
Сообщений: 11,200
Читатели: 2
Цитата: Senya от 16.09.2019 09:18:37Вот честно - изначально учил делать низкоуровневую оптимизацию. Но когда компы с трёшек заменили на 486, и оптимизированные и неоптимизированные программы стали давать практически одинаковое время исполнения - завязал с этим грязным делом Веселый
Но с другой стороны другого способа программно обеспечить под 600 мегабайт потокового шифрования в секунду и скажем прозрачно шифровать SSD на сегодня нет.

Встроенный SATA rev.3? Используя процессор нет и никогда не будет. SATA данные берет из ОЗУ. Считаем – кто-то асинхронно, но со скоростью 600 Мбайт/с кладет плайнтекст в ОЗУ (1), крипроалгоритм читает плайнтекст (2), его курочит на процессоре и выкладывает шифртекст в ОЗУ (3), потом интерфейс забирает этот шифртекст из ОЗУ (4) и отправляет в диск. Это если мимо файловой и даже мимо операционной системы. Рядом, соответственно, трудится операционка и куча приложений, котороым также требуется ОЗУ.  Интерфейс памяти в резульате будет полностью перегружен – 25 Гбит/с вынь да положь.
Но выход есть – шифрующий спецконтроллер SATA/eSATA, воткнутый в длинный PCI Express отлично все успевает и грузит память только на 6 Гбит/с.
Отредактировано: adolfus - 16 сен 2019 22:00:38
  • +0.03 / 1
adolfus
 
Слушатель
Карма: +21.87
Регистрация: 12.02.2010
Сообщений: 11,200
Читатели: 2
Цитата: DarkRaider от 17.09.2019 00:20:38Mon cher ami, Вы, как всегда, слишком категоричны.
Во первых, современные СУБД вполне себе официально называются "объектно-реляционными базами данных" и таки имеют достаточно признаков и возможностей на эту тему.

"Объектно-реляционный" – это всего-лишь составное слово, ничего не обозначающее кроме модного набора звуков. Что, например, может означать слово "плотно-разреженный"? На самом деле либо объектная модель данных, либо реляционная.  Отобразить таблицы реляционной модели в структуры объектной пока никак не получается – проблема есть такая "object-relation mapping". Вот когда ее математики решат, возможно тогда словосочетание "объектно-реляционный" наполнится реальным смыслом, а так пока всего-лишь попытки забить колышки на участке, который кажется золотоносным.
  • +0.02 / 1
qurvax
 
lithuania
Вильнюс
Слушатель
Карма: +11.85
Регистрация: 29.03.2017
Сообщений: 2,270
Читатели: 1
RMS'a поперли
Дискуссия   291 0
http://www.opennet.r…?num=51498

П'здец крепчает.
Консервированный чужой. Осторожно запах!
  • +0.06 / 3
adolfus
 
Слушатель
Карма: +21.87
Регистрация: 12.02.2010
Сообщений: 11,200
Читатели: 2
Цитата: DarkRaider от 17.09.2019 17:31:29"Всё дело, в волшебных пузырьках!", как нас заверяла реклама одной шоколадки.
"Реляционная" СУБД - та, где имеется чёткое соответствие отношений хранимых объектов (идентификатор или комбинация признаков его составляющая). Такая СУБД вполне спокойно хранит любые объекты - в том числе и бинарные, в том числе и классы (например тот же XML имеющий свои методы). Современные СУБД расширяются  внешними и внутренними процедурами, представляющими тоже объекты, в том числе и бинарные. Есть типизация, абстракция, преобразование типов - достаточно признаков чтобы назвать объектно-реляционной СУБД?

Почитаем вики объектно ориентированная база данных.

Сравним признаки?



Скрытый текст
Основная особенность всех СУБД, в том числе и реляционных, состоит в том, что никто не знает, какие действия и кем будут предприниматься над данными. Поэтому с ними работают с помощью декларативного SQL, а не лезут к данным напрямую – что и как там крутить решает СУБД. Иногда используют ISAM, но опять же не к данным, а их статичным представлениям, рискуя напороться на конкурентные процессы, изменяющие структуру и связи.
В БД хранятся сущности и отношения между ними. И те и другие представляют непрерывно обновляемые динамические структуры данных. Представить их в виде объектов (в смысле ООП) невозможно – сущности и отношения очень динамичны, в то время как объекты – просто экземпляры класса (типа). Объекты могут представлять лишь моментальный слепок простейших статичных состояний БД, в то время как в процессе работы меняются не только сущности и отношения, которыми управляет пользователь, но и те сущности и отношения, которыми управляет СУБД. Причем последних гораздо больше – каждый запрос генерирует их огромное количество.
Что касается xml, то это очень убогий способ представления отношений, поскольку реальные отношения представляются графами, а не деревьями.
  • +0.02 / 1
Поверонов
 
Слушатель
Карма: +37.12
Регистрация: 05.06.2010
Сообщений: 18,862
Читатели: 7
Цитата: adolfus от 17.09.2019 20:13:35Основная особенность всех СУБД, в том числе и реляционных, состоит в том, что никто не знает, какие действия и кем будут предприниматься над данными. Поэтому с ними работают с помощью декларативного SQL, а не лезут к данным напрямую – что и как там крутить решает СУБД. Иногда используют ISAM, но опять же не к данным, а их статичным представлениям, рискуя напороться на конкурентные процессы, изменяющие структуру и связи.
В БД хранятся сущности и отношения между ними. И те и другие представляют непрерывно обновляемые динамические структуры данных. Представить их в виде объектов (в смысле ООП) невозможно – сущности и отношения очень динамичны, в то время как объекты – просто экземпляры класса (типа). Объекты могут представлять лишь моментальный слепок простейших статичных состояний БД, в то время как в процессе работы меняются не только сущности и отношения, которыми управляет пользователь, но и те сущности и отношения, которыми управляет СУБД. Причем последних гораздо больше – каждый запрос генерирует их огромное количество.
Что касается xml, то это очень убогий способ представления отношений, поскольку реальные отношения представляются графами, а не деревьями.

В объектно-реляционных СУБД "объектами" ( а точнее классами ) являются не данные, а "процедуры" оформленные в виде классов.  При этом таблица есть лишь способ хранения атрибутов экземпляров класса ( по принципу запись - экземпляр класса ). Все отношения между классами поддерживаются через функции классов, то есть вынесены в процедуры. Собственно СУБД при этом используется лишь для хранения экземпляров классов - по сути это NoSQL, так как всё делается в процедурах  без всяких оптимизированных планов исполнения (execution plan )
  • +0.02 / 2
TAU
 
Слушатель
Карма: +54.06
Регистрация: 24.07.2008
Сообщений: 4,134
Читатели: 0
Цитата: adolfus от 17.09.2019 20:13:35представляются графами, а не деревьями

Справедливости ради, дерево - разновидность графа. 
"Ольга Никаноровна проснулась в холодном поту. Ей привиделся кошмарный сон. Граф в виде дерева". Веселый
  • +0.06 / 3
adolfus
 
Слушатель
Карма: +21.87
Регистрация: 12.02.2010
Сообщений: 11,200
Читатели: 2
Цитата: Поверонов от 17.09.2019 21:24:04В объектно-реляционных СУБД "объектами" ( а точнее классами ) являются не данные, а "процедуры" оформленные в виде классов.  При этом таблица есть лишь способ хранения атрибутов экземпляров класса ( по принципу запись - экземпляр класса ). Все отношения между классами поддерживаются через функции классов, то есть вынесены в процедуры. Собственно СУБД при этом используется лишь для хранения экземпляров классов - по сути это NoSQL, так как всё делается в процедурах  без всяких оптимизированных планов исполнения (execution plan )

Невозможно отношения вынести в процедуры, поскольку процедуры – это фундаментально статичные сущности, а отношения нет.
Хотя, да на здоровье. Хоть горшком обзови...
  • +0.00 / 0
adolfus
 
Слушатель
Карма: +21.87
Регистрация: 12.02.2010
Сообщений: 11,200
Читатели: 2
Цитата: TAU от 17.09.2019 22:47:31Справедливости ради, дерево - разновидность графа.

Справедливости ради, не разновидность, а подмножество одной из разновидности – ориентированного ациклического графа.
Дерево может представлять только самые простые отношения – иерархические, когда у объекта есть только одна входящая связь. Чтобы представить произвольную систему отношений на N объектах требуется в общем случае N деревьев, не имеющих общих ребер. Представлением сложной системы в виде набора таких деревьев управлять (добавлять/удалять вершины и связи) очень сложно.
  • +0.00 / 0
adolfus
 
Слушатель
Карма: +21.87
Регистрация: 12.02.2010
Сообщений: 11,200
Читатели: 2
Цитата: DarkRaider от 20.09.2019 09:29:46Например MS SQL (вполне себе классическая реляционная СУБД), "на пальцах":
Параметр1=Таблица1.столбец1
Параметр2=Таблица1.столбец2
Таблица1.столбец3=Текст(Скуль Update над параметром 1 и 2(обновить Таблицу2.Строку3=Параметр1+Параметр2) 
Испольнить
Параметр1=Таблица1.столбец1*3
Таблица1.столбец3=Текст(Скуль Update над параметром 1 и 2(обновить Таблицу2.Строку4=Параметр1-Параметр2+2)
Испольнить

Отношения между таблицей 1 и 2 выражены процедурой?
Сущности очень фундаментально статичны?
Данные изменяются сами по себе?
Вы, любезный,  помнится несколько постов назад вообще уверяли:\n\n
Вы уж определитесь в какую сторону грести, пожалуйста.

Вы уже на первом "Параметр1=Таблица1.столбец1" вылетите по нехватке памяти.
Нельзя просто так копировать столбцы куда бы то ни было из базы, чтобы с ними что-то делать, даже если они помещаются, потому что их содержимое volatile по определению. Помимо Васи с БД работает Коля, Петя, Света и еще стопятьсот юзеров – в любой момент данные в столбце могут поменяться или исчезнуть. Это к тому, что "данные изменяются сами по себе".
В любой момент схема отношений и ограничений в базе может быть изменена независимо от вас (например, в связи с добавлением таблиц и столбцов, связанных вторичными инлдексами) и перестанет соответствовать вашей объектной модели.
Еще очень интересный момент – нет статичного соответствия типов между вашим ОО-языком программирования и типами в БД – в любой момент времени в базе данных тип может изменить представление, например после ее обновления. В результате однажды Вы при получении данных из базы в объект получите мусор или мусор запишете в БД.
  • -0.03 / 1
slavae
 
russia
Москва
Слушатель
Карма: +193.02
Регистрация: 21.03.2013
Сообщений: 26,984
Читатели: 6
Цитата: adolfus от 20.09.2019 14:27:42в любой момент времени в базе данных тип может изменить представление, например после ее обновления. В результате однажды Вы при получении данных из базы в объект получите мусор или мусор запишете в БД.

Если базу курочит стадо обезьян, она и для хранения данных будет непригодна )
Империя - это мир, и этой идеологии достаточно. Мы живём в самой лучшей стране в мире и все нам завидуют.
Одушевлённое Одевают, Неодушевлённое Надевают.
  • +0.04 / 2
AndreyK-AV
 
russia
Уфа
63 года
Слушатель
Карма: +102.13
Регистрация: 10.11.2008
Сообщений: 45,821
Читатели: 13
Первые 2000-е, звонок из Москвы - лети в Ноябрьск, они нам претензии выставили.
Я отвечаю что вы же Уфу отодвинули от договоров по транспорту с Сибнефтью, и там у вас манагер, у которого усё схвачено.
В ответ, манагер ушёл, а штраф и неустойки могут превысить контракт в несколько раз, 
короче лети раз у вас там в Уфе центр внедрения и поддержки. 
На вопрос, а разработчики?,  ответ они не готовы вести переговоры, 
к тому же на них Ноябрьск жестко наехал по принципам написания программ под Oracle, дескать они не умеют, тупые и отсталые, и вообще там экспертизу проводит живший и работавший в США и собаку съевший на  Oracle и прикладных продуктах писанных по него. Короче наши закусились и ничего кроме срача у них не выйдет, к тому же главная претензия не чисто по их специализации.
ну и портянку высылают с перечнем претензий...
По Oracle пробежал, даже вникать не стал, так как уже лет пять серьезно не программировал, а программы для души, они делу не помогут..
Основное,  это претензия в обмане заказчика, так как мы договоре прописали версию не ниже (емнип) 7.х.х., а сами написали ПО на 9.х.х. опять же емнип., при этом так что оно не работает, и диспетчера УТТ ждут отклика на нажатие клавиш от минуты до десятка, при этом время отклика должно  исчисляться секундами максимум десятком... 
Ну и портянка с описанием неправильного программирования.... 
Затем дополнительная вводная, оказывается на все наложился конфликт начальника управления А и его зама Р с главным инженером С который и затеял всю байду, и вместо попытки разобраться, подготовил претензию через главный оффис  Сибнефти, и если она прокатит то полетит не только данный контракт, но и ряд других которые компания давно ведёт... 
и если что, в компании всех собак спустят на Уфу, как ту её часть, что сперва поддержала разработчиков системы управления транспортом, затем начала продавать систему и создала группу внедрения и продвижения... 
словом все плохо.
Прилетаю в Ноябрьск, едем в управление, там совещание где А, Р, С, чел из США А1, и пара руководителей смежных управлений из руководства УТТ, и кто то из головного офиса. Наехали сразу, А1 начал со своих многомиллионных работ в США, и затем жестко про неправильно написанную программу, на робкие возражения от УТТ, что дескать видели как работает в Мегионе, Надыме и нам такая система нужна..., жесткий ответ что и там сдохнет. 
Затем С показал схему общей сети Сибнефти, о том что она сертифицирована Cisco и плохо работать не может, и перешёл к нарушению версий системы, дескать в договоре враньё и будем вас иметь как хотим, особенно за то что сразу не покаялись не вернули платежи и согласно предъяве не начали работу по правильному написанию ПО. Ну и раздухарился так что ещё сотню бакинских предложил накинуть за обман заказчика, и неча с ними разговаривать.....
Пришлось стать "оратором", с одной целью, посмотреть на месте как работает, тем более схема глобальной сети хоть и красива, но что внутри предприятий не описывала, а там по собственному опыту знаю что бывают такие "чудеса". 
А и Р меня поддержали, как и представитель головной компании был не против подтвердить наше фиаско на месте, а у УТТ ничего и так не оставалось...
На следующий день поехали в Мупавленко. Приходим в УТТ, и оба на, в первом же коридоре, целые цепочки неуправляемых хабов... Потребовал составить акт и схему с описанием моделей устройств, после того как расписали второй десяток хабов, нашли линии витой пары длинной под триста метров... короче полный атас, и как там сеть работает вообще непонятно. Далее глухо висящий ПК с рабочим местом подсоединили напрямую к внешней сети Сибнефти и оба на, все резко залетало....
Обратно в Ноябрьск ехал со встречным актом и болванкой претензии об технической готовности УТТ к пилотному проекту.
В итоге свою претензию они отозвали, и вместо неё грозно потребовали исполнение договора, чтобы у нас всё на той версии Oracle что прописано работало, мы свою не предъявили, а подписали акт успешного окончания текущего этапа, на УТТ привели в порядок сеть, ну а спец по Oracle из США, так я его его больше и не видел, не пригласили его на дальнейшие переговоры...
Да будь я и негром преклонных годов, и то, без унынья и лени, я русский бы выучил только за то, что им разговаривал Ленин.
-------------------------------------------------------------
Наше дело правое. Враг будет разбит. Победа будет за нами.(с)
  • +0.21 / 15
adolfus
 
Слушатель
Карма: +21.87
Регистрация: 12.02.2010
Сообщений: 11,200
Читатели: 2
Цитата: Andrew Carleet от 24.09.2019 01:24:11Все в нашей жизни относительно.
Можно просто запереть данные, над которыми работаем, хоть поле, хоть всю базу. И данные в столбце не поменяются и не исчезнут "в любой момент". Так делать нехорошо? Ну, кто спорит; но подобное встрачается.

Не встречается. СУБД не позволит.
Никто не может заблочить поле более, чем на некоторое небольшое время, достаточное на выполнение операции чтения актуального содержимого и записи обновления. Вы просто не видите того, что происходит под капотом. А под капотом происходит нечто, похожее на следующее:
1. Вы делаете запрос на получение каких-то полей
2. СУБД "делает" вам запись , отправляет ее вам и сохраняет копию (либо у себя, либо на клиенте)
3. Вы там что-то смотрите, колупаетесь, правите
4. Вы отправляете обновление
5. СУБД выполняет что-то, типа такого
  - поля, которые Вы запрашивали, блокируются на запись (после Вашего доступа и до этого момента их мог изменить кто угодно)
  - получаются актуальные значения полей, которые Вы выбрали
  - выполняется сравнение полученных с полученными ранее из копии
  - если идентичны, ваши изменения уходят в базу (профит), блоки снимаются.
  - в противном случае блоки снимаются, вы получаете отказ, и измененные после вашего запроса поля актуализируются в копии и вашей записи. Внесенные Вами изменения аннулируются
Вы вынуждены перейти к цифре 3.
В результате продолжительность действия блокировки много меньше, чем продолжительность Вашего взаимодействия с базой.
Мало того, помимо тех таблиц, что Вы лично накриэйтили, СУБД создаст в Вашей БД таблицы учета статистики обращений, откуда она будет корректировать максимальные длительности блокировок для разных запросов, чтобы аварийно завершать транзакции, превысившие лимиты.


Вероятность того, что данные изменятся, может быть мала, но это не отменяет события, а с учетом законов Паркинсона, вероятность данного события может даже превысить число \pi.
Отредактировано: adolfus - 25 сен 2019 13:43:59
  • -0.04 / 2
Senya
 
russia
55 лет
Слушатель
Карма: +322.32
Регистрация: 20.11.2008
Сообщений: 26,851
Читатели: 51

Глобальный Модератор
Цитата: DeC от 25.09.2019 12:39:1525.09.2019

Казанский квантовый центр Казанского национального исследовательского технического университета имени А. Н. Туполева — КАИ (ККЦ КНИТУ-КАИ), «Ростелеком» и «Таттелеком» успешно обеспечили обмен квантовыми ключами шифрования на волоконно-оптической линии связи (ВОЛС) протяженностью 143 километра, сообщает «Ростелеком».

По данным Казанского квантового центра КНИТУ-КАИ это мировой рекорд для действующих коммерческих сетей связи.

Ранее, в 2018 году, «Ростелеком» тестировал подобную технологию на ВОЛС протяженностью 58 километров.

В Татарстане тестовая ВОЛС соединила лабораторию Практической квантовой криптографии ККЦ КНИТУ-КАИ с узлом связи «Ростелекома» в Апастово. В тестировании были задействованы магистральные сети двух независимых операторов связи — «Ростелекома» и «Таттелекома», что важно для практического внедрения квантовых коммуникаций.

Одна из сложнейших технических задач — это обеспечение передачи квантовых ключей на длительные расстояния в волоконно-оптических линиях. Испытываемый прототип комплекса передачи и приема данных с гибридной квантово-классической защитой, разработан в КНИТУ-КАИ и поддерживает передачу квантовых ключей на большие расстояния. Он включает систему квантового распределения ключей на боковых частотах, криптомаршрутизатор и высокоэффективный детектор одиночных фотонов производства российской компании «СКОНТЕЛ». В качестве исходной системы квантовой рассылки ключа использовалась разработка Санкт-Петербургского национального исследовательского университета информационных технологий, механики и оптики (Университет ИТМО).

При тестировании работы криптомаршрутизатора были организованы сеансы видеоконференции между двумя узлами связи на расстоянии 143 километра с оптическими потерями в канале 37 дБ. Для обмена ключами шифрования использовался поток одиночных фотонов, в квантовые состояния которых записывалась классическая информация. Квантовая рассылка ключей проходила при частоте смены фазы модуляции 100 МГц со средним количеством фотонов 0,2 на один такт модуляции. Среднее значение скорости генерации квантовых ключей в канале позволяло менять 256-битный ключ шифрования до двух раз в минуту.

Эксперты считают, что квантовые коммуникации обеспечивают наивысшую из существующих на сегодня степень защиты передачи данных по ВОЛС. Технология основана на использовании фундаментальных законов квантовой физики, которые невозможно обойти. Для обмена ключами шифрования в технологии используются одиночные фотоны, состояния которых безвозвратно меняются, как только кто-то попытается их «прочитать». Любая попытка перехвата будет тут же обнаружена и предотвращена.

Источник
"Иван Грозный помещает на рабочий стол полученный от хана ярлык."(с) Не моё.
  • +0.14 / 9
dmitriк62
 
russia
Москва
61 год
Слушатель
Карма: +209.18
Регистрация: 15.07.2009
Сообщений: 29,816
Читатели: 8
Цитата: Oleg K. от 15.09.2019 21:45:28
Скрытый текст

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

   
До того самого уровня, который ещё знает пользователь Марк№76.
Глубже — совершенно бесполезные для программиста знания...
Многие пытаются смотреть, куда идёт дым.
А надо бы - откуда ветер дует.
  • -0.01 / 1
СОВ
 
Слушатель
Карма: +0.22
Регистрация: 15.04.2018
Сообщений: 212
Читатели: 0

Аккаунт заблокирован
Цитата: slavae от 26.08.2019 14:27:07Это не работа, это жесть! Вручную обводить контуры этой бандурой - это ж свихнуться можно!

Посмотрите здесь с 19:40, для сложных пазов может быть идеальным вариантом:
  • +0.00 / 0
slavae
 
russia
Москва
Слушатель
Карма: +193.02
Регистрация: 21.03.2013
Сообщений: 26,984
Читатели: 6
Цитата: СОВ от 27.09.2019 18:02:12Посмотрите здесь с 19:40, для сложных пазов может быть идеальным вариантом:

Я отрицаю любые работы, выполняемые вручную, это должны делать шаговые моторчики )
Империя - это мир, и этой идеологии достаточно. Мы живём в самой лучшей стране в мире и все нам завидуют.
Одушевлённое Одевают, Неодушевлённое Надевают.
  • +0.04 / 2
adolfus
 
Слушатель
Карма: +21.87
Регистрация: 12.02.2010
Сообщений: 11,200
Читатели: 2
Цитата: СОВ от 27.09.2019 18:02:12Посмотрите здесь с 19:40, для сложных пазов может быть идеальным вариантом:



HeARTwood. У него ролики о своих работах довольно интересные.
...
Таки клеят на поверхность репера. Точность наклейки определяет точность фрезерования.
Отредактировано: adolfus - 29 сен 2019 22:41:44
  • +0.00 / 0
СОВ
 
Слушатель
Карма: +0.22
Регистрация: 15.04.2018
Сообщений: 212
Читатели: 0

Аккаунт заблокирован
Цитата: adolfus от 29.09.2019 22:39:06HeARTwood. У него ролики о своих работах довольно интересные.
...
Таки клеят на поверхность репера. Точность наклейки определяет точность фрезерования.

Ну нет, очевидно, что важна только неподвижность наклеек. К тому же на 20:29 видно, что оператор привязывает эскиз и к кромке заготовки (может, просто визуально совмещает, но благодаря оптическому увеличению и этого достаточно). 
У меня сразу же идея в развитие этой появилась: использовать привязку по изображению заготовки, ведя съемку в трех масштабах - общий вид, крупно и микросъемка. Но т.к. автор изобретения не глупее меня, какие-то есть препятствия к такому подходу. Но лично у меня наклейки вызывают отторжение, я бы уж использовал радиомаяк+микросъемка (зеркальная поверхность редко бывает). 
  • +0.00 / 0
Сейчас на ветке: 5, Модераторов: 0, Пользователей: 0, Гостей: 3, Ботов: 2