Главная > Принятие решений при многих критериях: предпочтения и замещения
<< Предыдущий параграф Следующий параграф >>
Пред.
След.
Макеты страниц

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

Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике

7.3. ДЕЯТЕЛЬНОСТЬ ПОЖАРНОГО УПРАВЛЕНИЯ

В любом анализе организации работы пожарного управления возникает один и тот же вопрос: сколь важна одна минута периода реагирования? Ясно, что эта важность для любого конкретного случая пожара определяется конкретной обстановкой. Не имеет смысла отдельно рассматривать каждый из нескольких тысяч крупных пожаров, которые ежегодно ликвидирует пожарное управление Нью-Йорка. Мы остановимся на «типичном» нью-йоркском пожаре.

Применяя концепции и результаты теории полезности, рассмотренные в предыдущих главах, мы постараемся хотя бы в первом приближении дать количественное описание опыта некоторых руководителей и результатов работы нью-йоркского пожарного управления, а также постараемся исследовать возможность использования этих сведений для оценки деятельности пожарного управления. На первом этапе рассматриваются предпочтения заместителя начальника пожарного управления Нью-Йорка. При этом строится пятимерная функция полезности; в процессе этого построения оценивается важность продолжительности периодов реагирования различных технических средств для «типичного» пожара; характерным приемом, используемым при построении функции полезности, является, например, выяснение такого вопроса: существенно ли различие между двумя и тремя, семью и восемью минутами периода реагирования? Аргументами этой функции полезности являются периоды реагирования лервых трех пожарных машин и первых двух пожарных лестниц, прибывающих на пожар определенного типа.

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

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

К счастью, весьма естественными критериями-заместителями для оценки качества работы в нашем случае оказываются периоды реагирования различных технических средств, прибывающих для тушения пожара. На рис. 7.6 показана упрощенная модель системы пожарной службы, согласно которой периоды реагирования служат входными данными при анализе процесса борьбы с пожаром, а критерии, относящиеся к человеческим жертвам и ущербу, наносимому имуществу, выходными данными.

Для пожарных привычно то, что они дают неформальную оценку своих предпочтений относительно различных вариантов действий при помощи соответствующих периодов реагирования. При этом они используют свой опыт для определения как вероятности реализации различных периодов реагирования при той или иной организации своей деятельности, так и тех последствий, которые будут иметь место при тех или иных периодах реагирования с точки зрения более фундаментальных целей пожарной службы. Имеющиеся данные не только нуждаются в интерпретации, но еще и должны быть подвергнуты дополнительной обработке для уточнений вероятностных значений периодов реагирования в зависимости от определенной стратегии использования пожарных средств. Начиная с 1960 г. пожарное управление ведет сбор данных о различных аспектах пожаров. Эти данные были подвергнуты анализу и послужили входными данными при разработке имитационной модели деятельности пожарного управления. Первый вариант этой модели был опубликован в работе Картера и Игнолла (1970). Эти модели позволяют получить функции

Рис. 7.6. (см. скан) Упрощенная модель системы пожарной службы


плотности вероятности для периодов реагирования в различных ситуациях.

Наша цель — найти зависимость между различными возможными периодами реагирования и достижением целей пожарного управления. Мы «стремились собрать воедино многолетний опыт некоторых руководителей пожарного управления, дав количественное описание их субъективных предпочтений для различных периодов реагирования при возникновении пожаров, чтобы способствовать улучшению процесса принятия решений. В связи с этим мы прежде всего просили руководителя рассмотреть, сколь важен может быть определенный набор значений периодов реагирования (например, первая пожарная машина прибывает на место пожара через 3 мин, вторая — через 5..., первая пожарная лестница прибывает через 2 мин...) для конечных результатов деятельности, а затем выразить в количественной форме свои предпочтения относительно различных наборов значений периодов реагирования в свете такого рассмотрения. В результате мы получили субъективную модель (основанную на опыте) процесса борьбы с пожаром, его последствия и относительную нежелательность этих последствий.

Чьи предпочтения должны быть выражены количественно? Мы решили, что лучше всех могут проанализировать многочисленные случаи различных комбинаций значений периодов реагирования именно руководители, непосредственно связанные с работой. Поэтому здесь мы рассматривали предпочтениязаместителя начальника пожарного управления Нью-Йорка.

7.3.2. Использование функции полезности для различных периодов реагирования. Исходной причиной построения функции полезности для периодов реагирования была необходимость в разработке модели разрастания пожара. Если первые пожарные средства, посланные к месту пожара, не могут справиться с пожаром, то вызываются дополнительные средства и пожар считается разрастающимся. Поскольку такие случаи играют важную роль в деятельности пожарного управления, то моделирование процесса разрастания пожара и включение этого процесса в имитационную модель является весьма актуальной задачей. Точнее говоря, нам желательно знать, в каких случаях плохая работа пожарной службы ведет к разрастанию пожара. Поскольку вероятность разрастания, очевидно, связана со стратегией развертывания пожарных средств и поскольку эффективность той или иной стратегии может быть измерена через функцию полезности для различных периодов реагирования, то представляется целесообразным найти количественную оценку условной вероятности разрастания пожара при фиксированной эффективности развертывания средств (определяемой в свою очередь соответствующим значением функции полезности).

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

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

В этой главе мы основнрё внимание уделим построению функции и

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

7.3.3. Построение функции полезности для периодов реагирования. В 1970 г. в ходе нескольких встреч заместителя начальника пожарного управления Ронана и Кини были установлены предпочтения Ронана относительно различных периодов реагирования на пожары. Каждая из таких встреч длилась один-два часа.

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

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

1. Знакомство.

2. Проверка справедливости предположений.

3. Построение условных функций полезности.

4. Нахождение значений шкалирующих коэффициентов для и.

5. Проверка согласованности.

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

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

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

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

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

1. Периоды реагирования машин и лестниц не зависят по полезности друг от друга.

2. Периоды реагирования первой лестницы и второй не зависят по полезности друг от друга.

3. Период реагирования машины не зависит по полезности от периодов реагирования других машин; здесь .

Используя теорему 5.3 и предположение 1, построение функции и можно разделить на две части: построение функции полезности машин и функции полезности лестниц. Точно так же эти две функции полезности могли быть разделены на составные части вследствие предположений 2 и 3.

Рассмотрим процедуру проверки справедливости сделанных предположений на примере. Для проверки, действительно ли полезность Т! не зависит по полезности от Кини задавал Ронану такой вопрос: «Если период реагирования второй лестницы постоянно равен 6 мин, какой детерминированный период реагирования первой лестницы является равноценным, по Вашему мнению, прибытию первой лестницы с равной вероятностью либо через 1, либо мин?». Заметим, если то что ограничивает исследуемую область. Привлекая метод «схождения», описанный в § 4.9, в итоге был получен ответ мин.

Далее период реагирования второй лестницы был увеличен до 8 мин вместо 6 и был задан такой же вопрос. И снова ответ был

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

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

Было решено, что диапазон изменения будет от —1 до 0. Периодов реагирования — от 0 до 20 мин. Следовательно,

В процессе опроса было установлено, что -минутный период реагирования первой лестницы был равноценен (говоря нашим профессиональным языком) участию в лотерее с равновероятными исходами — периодами реагирования 1 или 3 мин. Точно так же 4,2 мин были равноценны лотерее с равновероятными исходами, составляющими 3 или 5 мин, а период реагирования 6,2 мин был равноценен аналогичным исходам, составлявшим 5 и 7 мин. В общем случае, участие в лотерее с равновероятными периодами реагирования в или было признано равноценным детерминированному исходу в виде периода реагирования в минут. Как показано в гл. 4, такие предпочтения описываются функцией полезности следующего вида:

где постоянные.

Мы могли бы найти величины и с, используя соотношения (7.4), (7.5) и детерминированные эквиваленты для любого из вышеназванных периодов реагирования. Однако для установления значений параметров лучше воспользоваться лотереями с более широким диапазоном исходов (см. обсуждение этого вопроса в гл. 4). Так, -минутный период реагирования первой лестницы оказался равноценным лотерее с равновероятными периодами

1 или 7 мин. Следовательно, функция должна быть такой, что

Подставляя выражение (7.6) в соотношения (7.4), (7.5) и (7.7), получаем три уравнения с тремя неизвестными, решив которые, легко находим

Таким же образом были получены остальные четыре условные функции полезности.

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

Кини попросил Ронана назвать такой период реагирования второй лестницы чтобы для него были равноценны две ситуации: 1) прибытие обеих лестниц соответственно через 3 и 8 мин, что мы обозначаем в виде пары чисел и 2) прибытие обеих лестниц соответственно через минут, что обозначается как ( Ронан указал значение тем самым показав, что готов поступиться одной минутой в периоде реагирования первой лестницы за счет уменьшения периода реагирования второй лестницы на 2,3 мин, когда исходные значения периодов реагирования были . Отсюда следует, что

Точно так же было найдено, что ситуация равноценна ситуации (3; 4,2), отсюда

Используя уравнение (7.9) и соотношения (7.10) и (7.11), мы получаем два уравнения с двумя неизвестными (параметрами решая которые находим

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

Проверка согласованности. Проверка согласованности получаемой функции полезности и ее приемлемости необходима, так как процесс ее построения основан на субъективных оценках. Кроме

того, в процессе получения («синтезирования») общей функции полезности могут вкрасться погрешности. Важно было удостовериться, что полученная функция полезности правильно описывала предпочтения Ронана.

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

7.3.4. Функция полезности периодов реагирования. В этом пункте мы рассмотрим окончательный вариант функции полезности и вытекающие из нее выводы. Согласно проведенному построению функция полезности имела вид

где

при

Здесь

при

Для иллюстрации функция полезности (7.15) показана на рис. 7.7, а кривые безразличия (равноценности), отвечающие уравнению (7.14), представлены на рис. 7.8.

Было решено исследовать свойства функции полезности (т. е. качественные выводы, которые из нее следуют) в диапазоне от

до , иными словами, для каждого из вышеприведенных уравнений переменные должны находиться в пределах от 0 до 20 мин. Кроме того, мы имеем по определению, что и

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

Рис. 7.7. Функция (полезности для периода реагирования «первой пожарной лестницы

Рис. 7.8. Кривые безразличия для периодов реагирования пожарных лестниц

Начнем с последнего:

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

2. Каждая минута задержки прибытия первой машины имеет большее значение, чем соответствующая минута задержки прибытия второй машины, которая, в свою очередь, имеет большее значение, чем соответствующая задержка третьей машины. Точно так же каждая минута задержки первой лестницы более важна, чем соответствующая задержка второй лестницы. На это указывают

относительные значения коэффициентов при в выражении (7.14) и при в выражении (7.17).

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

Для функций полезности лестниц характерно, что

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

Точно такое же свойство имеет место и для машин:

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

Последние два свойства относятся ко всей функции полезности.

6. Одна минута задержки в прибытии лестницы более важна, чем соответствующая минута задержки машины. Например, взяв двухминутные периоды реагирования первой машины и первой лестницы за основу, мы бы предпочли ситуацию, когда первая лестница прибывает через две минуты и первая машина через три, чем ситуацию, в которой первая машина прибывает через две минуты, а первая лестница — через три. Это свойство является следствием того, что коэффициент при в выражении (7.13), умноженный на коэффициент при в выражении больше, чем коэффициент при в выражении (7.13), умноженный на коэффициент при в (7.17).

7. Относительная важность периодов реагирования лестниц возрастаете возрастанием периодов реагирования машин. Это значит, что важность прибытия первой машины меньше, если лестница уже прибыла, чем если лестницы еще не прибыли. На это указывает отрицательный коэффициент произведения в выражении (7.13).

Эти свойства, естественность каждого из которых нам интуитивно понятна, позволяют сделать еще один шаг в установлении функции полезности. Именно, возможные изменения формы функции полезности (7.13) без потери хотя бы одного из перечисленных выше свойств весьма ограничены. Это еще раз подтверждает правильность нашего построения.

Хотя сложность построения многомерных функций полезности резко возрастает с ростом числа используемых критериев (мер эффективности), возможности для «проверки, согласованности» в

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

7.3.5. Выводы. Основным результатом этой работы является получение (хотя бы в первом приближении) функции полезности для пяти критериев — периодов реагирования, а именно критериев, связанных с прибытием к месту пожара первых двух лестниц и первых трех машин. Это дает нам способ определения относительной ценности одной минуты периода реагирования различных пожарных средств. Коэффициенты отдельных функций в выражении (7.13) дают определенное представление об относительной ценности минуты периода реагирования различных видов пожарной техники. При этом если мы устанавливаем относительную ценность минуты периода реагирования первой лестницы равной 10, то соответствующая ценность для первой машины равна 7, второй лестницы — 3, второй машины — 2 и третьей машины — 1.

Однако, как мы уже говорили, стоимость одной минуты - периода реагирования определенной единицы зависит от периодов реагирования других видов пожарной техники, а также от времени, прошедшего с момента объявления тревоги. Взяв периоды реагирования (2, 4; 2, 4, 6) в качестве базовых значений, мы получаем значения частных производных от и по каждому из пяти периодов реагирования в виде соотношения что означает, что если относительная ценность минуты периода реагирования первой лестницы равна 10, то соответствующая ценность второй лестницы — 4, первой машины — 5, второй машины — 3 и третьей машины —2. Отсюда видно, что относительная ценность зависит от выбранных базовых значений периодов реагирования.

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

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

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

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

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

Categories

1
Оглавление
email@scask.ru