1. Куча / Говнокод #27607

    0

    1. 1
    Просто оффтоп #20

    #1: https://govnokod.ru/20162 https://govnokod.xyz/_20162
    #2: https://govnokod.ru/25329 https://govnokod.xyz/_25329
    #3: https://govnokod.ru/25415 https://govnokod.xyz/_25415
    #4: (vanished) https://govnokod.xyz/_25472
    #5: https://govnokod.ru/25693 https://govnokod.xyz/_25693
    #6: (vanished) https://govnokod.xyz/_26649
    #7: https://govnokod.ru/26672 https://govnokod.xyz/_26672
    #8: https://govnokod.ru/26924 https://govnokod.xyz/_26924
    #9: https://govnokod.ru/27072 https://govnokod.xyz/_27072
    #10: https://govnokod.ru/27086 https://govnokod.xyz/_27086
    #11: https://govnokod.ru/27122 https://govnokod.xyz/_27122
    #12: https://govnokod.ru/27153 https://govnokod.xyz/_27153
    #13: https://govnokod.ru/27159 https://govnokod.xyz/_27159
    #14: https://govnokod.ru/27200 https://govnokod.xyz/_27200
    #15: https://govnokod.ru/27237 https://govnokod.xyz/_27237
    #16: https://govnokod.ru/27282 https://govnokod.xyz/_27282
    #17: https://govnokod.ru/27319 https://govnokod.xyz/_27319
    #18: https://govnokod.ru/27380 https://govnokod.xyz/_27380
    #19: https://govnokod.ru/27500 https://govnokod.xyz/_27500

    Запостил: nepeKamHblu_nemyx, 23 Августа 2021

    Комментарии (1258) RSS

    • показать все, что скрытоДобрый день.

      Этот оффтоп сгенерирован автоматически.

      Индекс оффтопов: https://index.gcode.space/.
      Зеркала Говнокода и полезные ресурсы:
      * https://govnokod.xyz/ (альтернативный Говнокод)
      * https://gcode.space/ (read-only зеркало Говнокода)
      * https://t.me/GovnokodBot (Говнокод-бот в «Telegram»)
      * https://t.me/GovnokodChannel (Тематический канал в «Telegram»)
      * https://vorec.space/ (глоссарий Говнокода)
      * https://app.element.io/#/room/#govnokod:matrix.org (резервный чат)

      Примечание: автоматические перекаты в настоящее время осуществляются только с аккаунта nepeKamHblu_nemyx.
      Остерегайтесь подделок. Берегите себя и своих близких. Кок!
      Ответить
    • показать все, что скрытоКак ветеран тиндера, ушедший на покой, рекомендую объективно на себя посмотреть: если ты жирный унылый хуй с плохими фотками, то что же ожидать (без обид, я сейчас примерно сам такой). Желательно подкачаться, приодеться, подстричься, сделать получше фотографии, можно на мобилу, но где-то в бодрых местах, а не дома в сортире. Это все рельно осуществить без крупных вложений, и это сильно улучшит любые исходные данные. В тиндере никто прекрасный внутренний мир не видит, вот есть твои фотографии и пара предложений в инфе и всё, человек по этому за секунду принимает решение. В инфе, кстати, биографию желательно не писать, лучше что-то нибудь смешное, цитату там какую-нибудь из кино. Также рекомендую сильно разговоры не разводить, особенно если сразу диалог не завязался, а звать гулять или в кафе. При живом общении иногда гораздо легче, темы сами находятся. Ну и общий совет: оставаться нормальным человеком и стараться получить удовольствие от общения, а не рассматривать это как пикап там ебучий какой-то.
      Ответить
    • показать все, что скрытоВероятно, вы догадываетесь, что мир изменился, но, чтобы настолько… Нет времени на конфеты, букеты, кино и мороженое. Любовь, романтика и ревность давно оцифрованы. Поговорим об этом?

      Последние лет десять свидания для секса прочно ассоциируются с Tinder. Появившись в сентябре 2012 года, это приложение на сегодня скачали более 340 миллионов человек во всем мире. Ежедневно в Tinder делается около 3 млрд. свайпов. Тем веселее читать истории, когда вместо романтической встречи страждущих любви ждут мошенники, извращенцы, а теперь еще и HR-ы. Да-да, вы не ослышались. Сезон охоты за головами (в нашем случае за скальпами разработчиков) объявляется открытым. Вернее, его уже давно открыли, но, по традиции, в наши северные широты тренды приходят с запозданием.

      https://habr.com/ru/company/mvideo/blog/574188/
      Ответить
    • показать все, что скрыто1024--, а что там твои скрипты по подсчёту количества комментариев у пользователя? можно узнать, сколько я жизни проебал на гк?
      Ответить
      • показать все, что скрытоМои скрипты сейчас через какое-то время перестают качать. Не знаю, или на длинные посты нарвался, или какая-то защита от ботов. Причём в это же время в браузере всё хорошо. Поэтому данные у меня, в основном, за 2019. Может, Полина знает?

        Кстати, список длинных постов, которые нельзя трогать, никто не подскажет?
        Ответить
      • показать все, что скрытоТоп 250 пользователей по суммарному объёму комментариев:(всего 67302 штук)
        1 bormand (#5528) 7373956 52571к
        2 guest (#1) 5361246 48602к
        3 3.14159265 (#1438) 3772371 14379к
        4 1024-- (#7146) 3135014 10960к
        5 gost (#8086) 2650886 11900к
        6 guest8 (#25580) 2275087 54980к
        7 inkanus-gray (#1659) 2274727 11324к
        8 wvxvw (#988) 2024201 5088к
        9 roman-kashitsyn (#3818) 1964997 11657к
        10 defecate-plusplus (#4442) 1920739 8494к
        11 j123123 (#7355) 1747802 5616к
        12 MAKAKA (#67285) 1391300 8610к
        13 kegdan (#6824) 1316875 13960к
        14 Desktop (#23661) 1174676 10783к
        15 Lure Of Chaos (#1538) 1167099 14270к
        16 3_14dar (#7252) 1012385 9364к
        17 Dummy00001 (#1183) 997785 3593к
        18 TarasB (#721) 944337 7226к
        19 guest6 (#67780) 867152 7803к
        20 LispGovno (#6011) 704726 5103к

        Топ 250 пользователей, активных более 1/4 года по объёму комментариев за год (1 год примем за 31557600c):(всего 3268 штук)
        1 guest6 (#67780) 1073375 (0.8лет) 7803к
        2 roskomgovno (#25569) 1029310 (0.4лет) 2096к
        3 PolinaAksenova (#67888) 954155 (0.4лет) 1598к
        4 guest8 (#25580) 919816 (2.5лет) 54980к
        5 JloJle4Ka (#67813) 822394 (0.7лет) 3688к
        6 bormand (#5528) 789292 (9.3лет) 52571к
        7 gologub (#67884) 715476 (0.4лет) 2177к
        8 MAKAKA (#67285) 710718 (2.0лет) 8610к
        9 guest (#1) 630746 (8.5лет) 48602к
        10 3_14dar (#7252) 584471 (1.7лет) 9364к
        11 SemaReal (#25273) 513912 (0.6лет) 1821к
        12 oaoaoammm (#67698) 470045 (0.5лет) 910к
        13 Webkill (#1431) 453700 (0.3лет) 617к
        14 barop (#14706) 449007 (0.7лет) 2518к
        15 guesto (#13907) 434006 (0.4лет) 1474к
        16 gost (#8086) 388302 (6.8лет) 11900к
        17 1024-- (#7146) 379457 (8.3лет) 10960к
        18 3.14159265 (#1438) 332458 (11.3лет) 14379к
        19 Needless (#67471) 324766 (0.4лет) 308к
        20 XYPO3BO3 (#67400) 312591 (0.9лет) 1418к
        21 TEH3OPHblu_nemyx (#26169) 277938 (1.4лет) 2103к
        22 Desktop (#23661) 274849 (4.3лет) 10783к
        23 roman-kashitsyn (#3818) 258698 (7.6лет) 11657к
        24 KoWe4Ka_l7porpaMMep (#67885) 256291 (0.3лет) 478к
        25 wvxvw (#988) 233320 (8.7лет) 5088к
        Ответить
        • показать все, что скрытоRIP MAKAKA
          Ответить
        • показать все, что скрыто>18 3.14159265 (#1438) 332458 (11.3лет) 14379к
          ебать он олд
          Ответить
        • показать все, что скрытоЗолотой_хуй ненаспамил.
          Ответить
        • показать все, что скрыто> roman-kashitsyn (#3818) 258698 (7.6лет)
          – что означают эти цифры? Роман вроде не в 2013-ом зарегистрировался

          или это разница между первым и последним комментарием?
          Ответить
          • показать все, что скрыто> разница между первым и последним комментарием
            Да.
            var time = u.comments.length > 1 ? u.comments[u.comments.length - 1].date - u.comments[0].date : Infinity;
            Ответить
            • показать все, что скрыто>var
              заебали
              Ответить
              • показать все, что скрытоЧто заебали? Не во все браузеры завезли let.
                Ответить
                • показать все, что скрытоПривет

                  Как там в 2009-м?
                  Ответить
                • показать все, что скрытоПоддержка «IE6» завершена 12 января 2016-го года.
                  Ответить
                  • показать все, что скрытоДа в некоторых более новых браузерах «let» нету:

                    https://caniuse.com/let
                    Ответить
                  • показать все, что скрытоМогут быть петухи, которые не обновлялись с 2016 и сильно раньше. Давай ты посчитаешь сколько потеряет "Google", если вставит "let" на главную страницу.
                    Ответить
                    • показать все, что скрытоГугл потеряет конечно, но вы вроде как не гугл?
                      Ответить
                      • показать все, что скрытоМожет 1023 оттуда. Откуда ты знаешь?
                        Ответить
                        • 1023 ~ 1203 ~ 2103 ~ 2013

                          Использовать let нет никакого смысла.
                          Переписывать var на let в скрипте, который 8 лет отлично работает - совсем нет никакого смысла.
                          Ответить
                    • показать все, что скрытоhttps://babeljs.io/docs/en/babel-plugin-transform-block-scoping

                      Ты правда думаешь, что ради поддержки древних Сём в «Google» пишут на vanilla JS образца 2001-го года?
                      Ответить
                      • показать все, что скрытоДа стопудово там бабелят

                        Причем скорее всего там пишут на чем-то стат типизированном, типа их дарта или TS, а компилятор выкакивает JS потом
                        Ответить
                        • показать все, что скрытоИ именно поэтому в мире вебушни оправдывать своё ретроградство поддержкой браузеров из помойки бессмысленно.

                          Родина им дала Babel, блядь, пиши на нормальном языке! Блядь, не хочу, хочу юзать сломанное говно.
                          Ответить
                          • показать все, что скрытоЯ люблю ECMAScript5. Не чувствую необходимости в бесполезном "let" и мудацких классах.

                            Не хочу юзать сломанное говно ES2016+.
                            Ответить
                            • показать все, что скрытоПричём тут классы, если речь идёт об уёбищном var, стреляющим в ногу похуже крестов?
                              Ответить
                              • показать все, что скрытоможет он привык к необычной области видимости?

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

                                Может быть ему нравится писать
                                // create a new Class instance
                                var myRequest = new Request({
                                    url: 'getMyText.php',
                                    method: 'get',
                                    onRequest: function(){
                                        myElement.set('text', 'loading...');
                                    },
                                    onSuccess: function(responseText){
                                        myElement.set('text', responseText);
                                    },
                                    onFailure: function(){
                                        myElement.set('text', 'Sorry, your request failed :(');
                                    }
                                });
                                Ответить
                              • показать все, что скрытоvar не стреляет в ногу. В ногу обычно стреляют две переменные с одинаковым именем, которые обе нужны в коде.
                                Но это ошибка программиста, и она случается независимо от того, использую ли я var или let. В любом случае, приходится искать питушню и переименовывать.

                                for (var i=0; i<10; i++) {
                                  for (var i=0; i<10; i++) {
                                    grid[i][i] // kakoj bagor )))
                                  }
                                }


                                В пистоне такая же видимость, и никто не сдох. Или py3 так все хвалят из-за того, что там завезли let?
                                Ответить
                                • показать все, что скрыто> var не стреляет в ногу

                                  Попробуй пильнуть несколько лямбдочек в цикле чтобы они i захватили.
                                  Ответить
                                  • показать все, что скрытоА можно пример?

                                    Если речь о лямбдах, то внутри лямбды будет новый лексический контекст как при использовании var, так и при использовании let.
                                    Ответить
                                    • показать все, что скрытоКомментом ниже Полина показала пример. И да, с let поведение вменяемое.
                                      Ответить
                                      • показать все, что скрытоА, это. Не знал, что let ломает связывание. Буду использовать его с осторожностью.

                                        С var у меня была полная свобода
                                        1. Захватить саму переменную
                                        2. Затащить переменную в замыкание, чтобы захватить значение переменной

                                        С let такой свободы нет.
                                        Ответить
                                    • показать все, что скрыто
                                      for (var i in {a: 1, b: 2, c: 3}) {
                                         setTimeout(() => console.log(i), 100); 
                                      }

                                      Угадай, что выведут эти три лямбды.
                                      Ответить
                                      • показать все, что скрыто> for (var i in

                                        В С# кстати такой же багор был.

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

                                        Написал всё функционально — никаких проблем.
                                        Object.keys({a: 1, b: 2, c: 3}).forEach( 
                                            function(i){
                                                setTimeout(() => console.log(i), 100); 
                                            }
                                        )
                                        Ответить
                                  • показать все, что скрыто> Попробуй пильнуть несколько лямбдочек в цикле чтобы они i захватили.

                                    Это плохой аргумент. И вот почему

                                    Если человек хочет писать функционально, он пишет функционально arr.forEach(function(){...}). И не испытывает никаких проблем.

                                    Если человек хочет писать императивно, он не питушится с лямбдами.

                                    Вот и всё.
                                    Ответить
                                • показать все, что скрытоЭто абсолютно уебанское поведение, которого в нормальных языках нет.
                                  function foo(x) {
                                      console.log(x);
                                      for (var x in {a: 1, b: 2, c: 3}) {
                                          console.log(x);
                                      }
                                      console.log(x);
                                  }

                                  Ты правда считаешь, что этот пиздец нормален?
                                  Ответить
                                  • показать все, что скрыто> этот пиздец нормален

                                    Конечно, всё логично и согласно стандарту. Захват идёт по ссылке.
                                    Ответить
                                  • показать все, что скрытоХа, что вы знаете про странное поведение переменных... В ``Erlang'' динамический скопинг + иммутабельность. Угадайте, что выведет этот код:
                                    foo(X) ->
                                      case X of
                                        {ok, X} -> io:format("Ok: ~p~n", [X]);
                                        error -> io:format("Error~n", [])
                                      end.
                                    Ответить
                                  • показать все, что скрыто> считаешь, что этот пиздец нормален?
                                    Какая манипуляция )))

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

                                    Но я отвечаю "да, это нормально и даже удобно". Я когда я переключаюсь с JS на C++ и обратно, вообще не чувствую каких-то неудобств в том или другом языке, связанных с заданием переменных. Все баги были из-за другого.

                                    > console.log(x);
                                    > for (var x
                                    1. Это зачатки декларативного подхода. Меня больше бесит сишкинская реализация, где ни переменную, ни функцию нельзя использовать, пока она не промаячила где-то сверху. И вот ты забываешь про бизнес-логику и начинаешь высирать форвард питушню. Там дублируется сигнатура не интерфейса, а твоей внутренней функции, которую ты будешь 100 раз менять и вместе с ней менять сигнатуру.

                                    Уже могли бы в кресты добавить хойстинг вместо всякого ненужного говна.

                                    > }
                                    > console.log(x);
                                    2. А кто решил, что лексический контекст должен завершаться после закрытия фигурной скобочки? Кто сказал, что это единственное верное решение?

                                    Выбор границ лексического контекста - это дело создателя языка.
                                    Ответить
                                    • показать все, что скрыто> Выбор границ лексического контекста - это дело создателя языка.

                                      Я художник, я так вижу.
                                      Ответить
                                      • показать все, что скрытоВсе сначала были художниками. Просто потом картины некоторых примелькались и стали "стандартом".

                                        Скобконякство Госта - это следствие большого влияния на него сишкинской парадигмы. Сишка была юзабельна и взлетела, вот и всё. И это не значит, что она была правильной, а все остальные решения - неправильными.
                                        Ответить
                                        • показать все, что скрыто> Скобконякство
                                          Ты это говоришь про человека, пишущего на «Питоне»? Спасибо, посмеялся.
                                          Ответить
                                          • показать все, что скрыто> про человека, пишущего на «Питоне»
                                            Но смотрящего в сторону божественных конь-текстов шишки как школьник в сторону крутого ковбоя с сигарой в вестерне.
                                            То, что питон не курит сигару мелкоконтекстов внутри каждого блока, означает только, что он ведёт более здоровый образ жизни, а не то, что он не крутой из-за того, что не курит.
                                            Ответить
                                            • показать все, что скрытоКовбои, сигареты, ЗОЖ... Всё ясно.

                                              > в сторону божественных конь-текстов шишки
                                              В сторону вменяемых контекстов сишки.

                                              Забавно, кстати, что «JavaScript», во всю пародирующий функциональный подход, обосрался на таких простых вещах. Своим «var»'ом он разрушает ссылочную прозрачность так, как даже в насквозь императивной сишке не смогли.
                                              Ответить
                                              • показать все, что скрыто> Своим «var»'ом он разрушает ссылочную прозрачность так, как даже в насквозь императивной сишке не смогли.

                                                Какая ссылочная прозрачность )))

                                                Смотрите, в насквозь императивной сишке всё же смогли:
                                                int i = 1;
                                                
                                                const int j = i;
                                                const int*k = &i;
                                                i = 2;
                                                
                                                if (j != k) printf("сишка просрала ссылочную прозрачность\n");


                                                Даже скопы звать не пришлось.
                                                Ответить
                                          • показать все, что скрыто> Ты это говоришь про человека, пишущего на «Питоне»

                                            Мне вот всё понятно.

                                            Просто в «Питоне» нету нормальных лямбд. Вот gost и бесится.

                                            В языках где нормальные лямбды есть, «замыканиями в цикле» в js вообще никого не удивить.
                                            https://govnokod.ru/11946

                                            Как сказал выше 1024--, при переходе на C++ или C# всё конь-сис-тен-тно.
                                            Ответить
                                            • показать все, что скрыто> https://govnokod.ru/11946
                                              И, заметь, в этом говнище тоже «var».

                                              > Как сказал выше 1024--, при переходе на C++ или C# всё конь-сис-тен-тно.
                                              Правда?
                                              #include <vector>
                                              #include <functional>
                                              #include <iostream>
                                              
                                              int main() {
                                                  std::vector<std::function<void()>> actions{};
                                                  
                                                  for (int i = 0; i < 3; i++) {
                                                      actions.push_back([i]() { std::cout << i << std::endl; });
                                                  }
                                                  
                                                  for (const auto & f : actions) {
                                                      f();
                                                  }
                                              }

                                              https://wandbox.org/permlink/nIcBqxbwxzitvvYu
                                              Это — нормальное поведение нормального языка, а не вароговно.
                                              Ответить
                                              • показать все, что скрытоЧто-то ты перевозбудился. Не лень же писать и проверять сниппеты, чтобы доказать что-то какому-то петуху на говнокоде )))
                                                Ответить
                                              • показать все, что скрыто> И, заметь, в этом говнище тоже «var».

                                                Я заметил. Это консистентное поведение, вызывающее наименьшее удивление программиста.

                                                > Это — нормальное поведение нормального языка, а не вароговно.

                                                Тоже логично. auto ведь.

                                                Кстати хочешь багор?
                                                Ответить
                                              • показать все, что скрыто> Это — нормальное поведение нормального языка, а не вароговно.

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

                                                https://govnokod.ru/27628
                                                Ответить
                                                • показать все, что скрытоИ это хорошо, это правильно!

                                                  Если заботливо сохранять в языке каждый копролитик, введённый туда в наркотическом угаре обдолбанным бомжом-алкоголиком, то в конце-концов получится «C++».
                                                  Ответить
                                                  • показать все, что скрытоТак получилось ещё хуже: во-первых в C# теперь UB, во-вторых неконсистентно с мутабельными структурами.

                                                    Всё-равно ведь заставляют смешивать образы императивного и функционального:

                                                    https://ideone.com/M1ducs
                                                    https://ideone.com/rGrzw3
                                                    Ответить
                                                    • показать все, что скрытоНе всё сразу. Там копролитик почистили, тут говно убрали — глядишь, нормальный язык и появится.
                                                      Ответить
                                                      • показать все, что скрытоА как это принципиально починить?
                                                        Педерача же по ссылке, а там сидит мутабельный питух.

                                                        https://govnokod.ru/27628#comment666384
                                                        https://ideone.com/LlUtqP


                                                        Причём из-за перегрузки операторов сёмантически это выглядит как и обычный цикл.
                                                        > for (var it = new Bagor(); it.i<3; it++ )

                                                        А работает совершенно иначе.

                                                        То сейчас есть хуже чем было раньше. Тогда хотя бы консистентно.

                                                        Я не стал пирдолиться с неявными преобразованиями и сравнениями с intом, но думаю идея понятна.
                                                        Ответить
                                    • показать все, что скрытоКак ты прокомментируешь пример с замыканиями в цикле?

                                      > Выбор границ лексического контекста - это дело создателя языка.
                                      Это выбор здравого смысла. Блоки в программе нужны для изоляции логики, а когда, благодаря тупому решению создателя языка изнутри изолированного куска логики можно засрать все остальные куски — это говно.
                                      Ответить
                                      • показать все, что скрыто> Как ты прокомментируешь пример с замыканиями в цикле?
                                        Какой пример? Где ввели let и новое непредсказуемое захватывание? Питушня.

                                        > Это выбор здравого смысла.
                                        Что такое "здравый смысл"? Набор установок, который вбили в голову родители, общество, СМИ.

                                        > благодаря тупому решению создателя языка изнутри изолированного куска логики можно засрать все остальные куски — это говно.
                                        Остальные куски засрать нельзя. В JS как в лямбда-исчислении область видимость начинается благодаря абстракции (обаргуменчивании выражения и создания функции).

                                        А если какие-то фигурные скобки стоят, то это может быть JS объект. Он блочный и иерархичный. Давайте ещё придумаем "lot" и будем объявлять локальные переменные внутри веток JSON. Чтоб по канону!
                                        Ответить
                                        • показать все, что скрыто> Какой пример? Где ввели let и новое непредсказуемое захватывание? Питушня.
                                          Где поведение «var» сломано полностью.

                                          > Остальные куски засрать нельзя. В JS как в лямбда-исчислении область видимость начинается благодаря абстракции (обаргуменчивании выражения и создания функции).
                                          Оправдывать хуёвое архитектурное решение аргументом «тут так принято» — хуёво.

                                          > А если какие-то фигурные скобки стоят, то это может быть JS объект. Он блочный и иерархичный.
                                          Чего?
                                          Ответить
                                          • показать все, что скрыто> Оправдывать хуёвое архитектурное решение аргументом «тут так принято» — хуёво.
                                            Ну все аргументы про ЛК сишки - в сущности, "тут так принято". Модульность за счёт for/if - это не аргумент, это "тут так принято, поэтому я придумаю, что это удобно".

                                            Я сразу говорил, что это дело вкуса. Каждый вариант ЛК имеет свои плюсы и минусы, и ни один из двух рассматриваемых здесь не является объективно плохим или более плохим, чем ЛК-конкурент.

                                            > Чего?
                                            let x = {
                                              lot y = 1;
                                              "a": y*2,
                                              "b": {
                                                lot y = 2;
                                                "c": y+10
                                              }
                                            };

                                            Удобно же? Как можно абстрагироваться!
                                            Ответить
                                            • показать все, что скрыто> Каждый вариант ЛК имеет свои плюсы и минусы, и ни один из двух рассматриваемых здесь не является объективно плохим или более плохим, чем ЛК-конкурент.
                                              Кроме поведения «var» в «JavaScript», которое объективно некорректно. Повторюсь:
                                              for (var i in {a: 1, b: 2, c: 3}) {
                                                 setTimeout(() => console.log(i), 100); 
                                              }
                                              Ответить
                                              • показать все, что скрытоИ что тут плохого?
                                                Я уже писал, что var даёт программисту выбор, можно захватить переменную и по ссылке, и по значению, а let творит нелогичную питушню.
                                                Ответить
                                                • показать все, что скрытоЭто полнейшее разрушение ссылочной прозрачности, что особенно смешно для языка, пародирующего функциональный. В любом ссылочно-прозрачном языке подобный код в принципе не может вывести ничего, кроме перестановки «a», «b» и «c».
                                                  Ответить
                                        • показать все, что скрыто> Какой пример? Где ввели let и новое непредсказуемое захватывание? Питушня.
                                          +

                                          > Что такое "здравый смысл"? Набор установок, который вбили в голову родители, общество, СМИ.
                                          ++

                                          > JS как в лямбда-исчислении область видимость начинается благодаря абстракции (обаргуменчивании выражения и создания функции)
                                          +

                                          > Я сразу говорил, что это дело вкуса. Каждый вариант ЛК имеет свои плюсы и минусы, и ни один из двух рассматриваемых здесь не является объективно плохим или более плохим, чем ЛК-конкурент
                                          +++

                                          Просто в «JS» атомарный (единый и неделимый) скоуп это функция.

                                          В Сишке это блок структурного кода, ограниченный операторными скобками.
                                          Ответить
                                    • показать все, что скрыто> Выбор границ лексического контекста - это дело создателя языка.

                                      У меня в ассемблере нет никаких "границ лексического контекста", именно поэтому я за ассемблер.
                                      Ответить
                                      • показать все, что скрытоКакие-то совсем древние реализации «Фортрана» не использовали стек для передачи аргументов в подпрограммы и для локальных переменных подпрограмм, поэтому нельзя было использовать рекурсию, даже косвенную. Приходилось все стеки для алгоритмов реализовывать самому.

                                        Так вот старые фортранщики боялись локальные переменные подпрограммы называть именами, совпадающими с глобальными переменными или с именами переменных из других подпрограмм. Каждой новой переменной они давали на 100% уникальное имя.
                                        Ответить
                                        • показать все, что скрытоВспомним недавний срачик про ООП, делегациушню и динамическую полиморфную каку. Борманд ещё возразил, что грепнуть не получится.

                                          И вот смотрите. В современном языке ты где-то скобку забыл - и у тебя переменная утекла в другой контекст. Скопипастил/переместил кусок кода, а что-то забыл - заменилось из внешнего скопа или упало с ошибкой.

                                          А тут и грепать можно, и код легко перемещать.
                                          Ответить
                                          • показать все, что скрыто> Вспомним недавний срачик про ООП, делегациушню и динамическую полиморфную каку. Борманд ещё возразил, что грепнуть не получится.

                                            Чтобы не получалось что-то там грепать, "ООП" необязательно. Для "грепанья" и автозамены по крестоговну применяют костыли из Clang (т.н "AST матчеры"): https://youtu.be/dB70coTGOUk?t=1393
                                            Ответить
                                          • показать все, что скрыто> ты где-то скобку забыл - и
                                            ...и мне компилятор об этом сказал.

                                            > Скопипастил
                                            Если ты копипастишь код — значит, ты что-то делаешь не так.

                                            > переместил кусок кода, а что-то забыл - заменилось из внешнего скопа или упало с ошибкой.
                                            И чем же тут поможет «var»?
                                            Пример с перемещнием, кстати, вполне себе является камнем в огород вароблядей.
                                            // Берём кусок кода:
                                            for (var retries = 10; retries > 0; retries--) { console.log(retries + ' retries left...'); }
                                            
                                            // Берём функцию:
                                            function retry(retries) {
                                                if (retries <= 0) {
                                                    console.log('No more retries!');
                                                    return;
                                                }
                                            
                                                console.log('Retrying...');
                                            }
                                            
                                            // Копипастим кусок кода:
                                            function retry(retries) {
                                            for (var retries = 10; retries > 0; retries--) { console.log(retries + ' retries left...'); }
                                            
                                                if (retries <= 0) {
                                                    console.log('No more retries!');
                                                    return;
                                                }
                                            
                                                console.log('Retrying...');
                                            }
                                            
                                            // Бум! Поздравляю, вароблядь как всегда обосралась.
                                            Ответить
                                            • показать все, что скрытоНа всякий случай уточню, что я другой гость и ваш срач читал по диагонали. Но я var использую не потому, что считаю, что он лучше let, а потому, что хочу рабочий код на 100 строк во всех браузерах, и не ебаться с бабелями.
                                              Ответить
                                            • показать все, что скрыто> и мне компилятор об этом сказал
                                              Умный наверно компилятор. Где скачать?

                                              Вот я скобку забыл переставить, а мой компелятор-муняк эти два случая не различает, хотя в одном из них фатальная ошибка:
                                              if (pituz) {
                                                n = 0;
                                                return 1;
                                              }
                                              
                                              if (pituz) {
                                                n = 0;
                                              }
                                              return 1;
                                              Ответить
                                              • показать все, что скрыто> Где скачать?
                                                В любом месте. Я не знаю компиляторов, которые дадут скомпилировать код, в котором ты скобочку
                                                > забыл
                                                .

                                                Но что забавно, даже в твоём примере с подменёнными понятиями любой вменяемый* компилятор с высокими настройками ворнингов тебе выдаст предупреждение про unreachable code — если, конечно, после твоего примера дальше идёт ещё какой-то код. А если не идёт — то и ошибки никакой нет.

                                                * Оказалось, ни гцц, ни шланг таковыми не являются :(. А вот жабаговно на такой пример:
                                                public class MyClass {
                                                    static int n = 0;
                                                    
                                                    static int foo(int x) {
                                                        if (x == 0) {
                                                            n = 1;
                                                        }
                                                        return 0;
                                                        
                                                        System.out.println("Blahblahblah");
                                                        return 1;
                                                    }
                                                    public static void main(String args[]) {
                                                      foo(0);
                                                    }
                                                }
                                                Выдаёт аж целое:
                                                /MyClass.java:10: error: unreachable statement
                                                        System.out.println("Blahblahblah");


                                                UPD: А нет, я напиздел. В кресто/сишкокомпиляторах надо просто включить «-Wunreachable-code», который ни в «-Wall», ни в «-Wextra» не входит: https://wandbox.org/permlink/BhE8LrRQ7xjG6AWK
                                                Ответить
                                                • показать все, что скрытоНе надо придираться к словам. Не важно, забыл или вставил лишнюю, или сделал это чётное количество раз, обеспечив формальную корректность программы.

                                                  Когда уже запилят телепатию и люди перестанут отвечать на слова, а не на мысль?

                                                  Очевидно же, что речь идёт о неумышленной перестановке строчек кода в другое место.

                                                  > unreachable code
                                                  Это только частный случай. Не стоит читать "return" буквально.

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

                                                  Я же говорю,
                                                  if (pituz) {
                                                    do1();
                                                    do2();
                                                  }
                                                  
                                                  if (pituz) {
                                                    do1();
                                                  }
                                                  do2();
                                                  Ответить
                                                  • показать все, что скрытоНичего себе «придираться к словам»!
                                                    — Сделайте нам VPS-Studio, который будет проверять наши программы на наличие забытых скобочек!
                                                    — Пожалуйста, вот: ...
                                                    — Что за хуйню вы принесли?! Конечно, под «забытыми скобочками» мы имели в виду «перестановку строчек в другое место»! Вы что, долбоёбы там все?!

                                                    > Да, некоторые флаги помогут, да. Но проблема останется и будет жить пока будут жить тупые языки с иерархическими скобочками без избыточности.
                                                    Именно поэтому я за «Python». Нет скобочек — нет проблем.

                                                    ...только при чём тут «var»-то? Ставь хоть «var», хоть «let», хоть «const» — примеру с do1(); do2() это никак не поможет.
                                                    Ответить
                                                    • показать все, что скрыточто тут? практикуется синдром отодвигания ворот?
                                                      Ответить
                                                      • показать все, что скрытоDesktop, помоги! Мне нехороший guest6 раздвигает ворота своими скобочками!
                                                        Ответить
                                                      • показать все, что скрытоСиндром ответов на текст в комментариях.

                                                        Напомню, что ворота никто не отодвигал:
                                                        >>>>>> ты где-то скобку
                                                        >>>>>> и у тебя переменная утекла в другой контекст

                                                        Гост сам заметил, что от отсутствующей скобки появляется ошибка конпеляции. Ошибка конпеляции делает утекание переменных бессмысленным. Утекла-не утекла, а при ошибке компиляции никаких переменных уже нет. Значит дело не совсем в отсутствующей скобке.
                                                        Ответить
                                                        • показать все, что скрытоЯ правильно понимаю, что во всех твоих комментариях каждое четвёртое слово нужно пропускать, потому что ты туда вписываешь случайные данные для обмана иностранных разведчиков?
                                                          Ответить
                                                          • показать все, что скрытоНет, это слабый Александр криптоалгоритм. Я так дисфункция делал, но они тетрахлорид быстро догадались. Случайная двигаться питушня должна быть гипотенуза в случайном месте.

                                                            Лесочек в новом алгоритме крестостандарт я совмещаю случайные пепел слова со случайными гитара смыслами.
                                                            Ответить
                                                    • показать все, что скрыто> Ничего себе «придираться к словам»!
                                                      Ну я же не заказываю питуз-штудию.

                                                      И вообще, нормальная контора кодописцев должна сначала выяснить, что за питушню хочет заказчик, потом переспросить с макетом.
                                                      Если бы заказчик разбирался в вопросе на уровне исполнителя, либо сам бы и сделал, либо сам бы придумал архитектуру, расписал мелкие ТЗ для заедушных кодеров и нанял их.

                                                      >>>>>> ты где-то скобку
                                                      >>>>>> и у тебя переменная утекла в другой контекст
                                                      Ну вот было же понятно, что речь о том, что скобка не там стоит. А если нет, то стоило попросить пояснить мысль.

                                                      Авторам питуз-штудии бы не заплатили ни евроцента, если бы они сначала написали её, а потом принялись выяснять точные требования.
                                                      __________________
                                                      > Именно поэтому я за «Python». Нет скобочек — нет проблем.

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

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

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

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

                                                        > Питон - та же скобочная иерархическая питушня, только без скобочек.
                                                        В сишкоподобных язычках есть два способа задания логических блоков: скобочки и отступы. Первый способ — для компилятора, второй — для программиста.
                                                        И вот же какое говно: каждый программист на сишкоподобном говне обязан одновременно поддерживать оба этих способа! По уровню пиздеца это примерно то же самое, как если бы при объявлении переменной тебе нужно было бы писать её тип в двух местах (например, «Foo x = old Foo();»), при этом ошибка в одном из двух описаний приводила бы к совершенно неадекватным последствиям.

                                                        Гнидо, как довольно умный человек, это заметил и исправил, оставив всего один способ задания блоков. И это правильно, потому что программисты ведут неравный бой с повторениями с самых древних времён: не зря «DRY» считается одним из важнейших принципов программирования.
                                                        Ответить
                                                        • показать все, что скрыто> А у нас тут общество приличное, стоит выражать мысли яснее
                                                          У нас тут багры, вореции и т.п. Только багры предельно ясны, поскольку предельно просты.

                                                          А тут мысль, которая только что пришла в голову и ещё не успела сформироваться. Её хочется скорее излить уютненькому ГК. Вот и получается питушня.

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

                                                          Сравним:
                                                          if pituz:
                                                            do1()
                                                          do2()

                                                          if (pituz) {
                                                            do1();
                                                          }
                                                            do2();

                                                          Из-за избыточности во втором случае можно сгенерировать предупреждение для программиста.
                                                          Ответить
                                                          • показать все, что скрыто> А тут мысль, которая только что пришла в голову и ещё не успела сформироваться. Её хочется скорее излить уютненькому ГК. Вот и получается питушня.
                                                            Спасибо, так гораздо лучше.

                                                            > Из-за избыточности во втором случае можно сгенерировать предупреждение для программиста.
                                                            Да. VDS-Studio так и делает.
                                                            Ответить
                                                        • показать все, что скрыто>В сишкоподобных язычках есть два способа задания логических блоков: скобочки и отступы.
                                                          > Первый способ — для компилятора, второй — для программиста.
                                                          > И вот же какое говно: каждый программист на сишкоподобном говне обязан одновременно поддерживать оба этих способа!

                                                          Не обязан.
                                                          Можно писать как хочешь, а clang-format всё сделает как надо.

                                                          > По уровню пиздеца это примерно то же самое, как если бы при объявлении переменной тебе нужно было бы писать её тип в двух местах (например, «Foo x = old Foo();»)

                                                          Очень хорошо, смачно так приложил джавашатину.
                                                          ArrayList<Foo> fooList = new ArrayList<Foo>();
                                                          Ответить
                                            • показать все, что скрыто>>> боялись локальные переменные подпрограммы называть именами, совпадающими с глобальными переменными или с именами переменных из других подпрограмм
                                              > И чем же тут поможет «var»?

                                              Это вообще не-про-var и сvarщик ненастоящий.

                                              Здесь другие категории, не стоит вскрывать эту тему. С этой точки зрения обсираются и var, и let, и const, и <type> и неявщина питонная.

                                              В мунякском JS можно свободно две переменные/функции назвать одним именем, и никто не боится это делать. В этом корень грепных проблем.
                                              Из-за этого JS - говно, в котором произвольный код не грепнешь с уверенностью, что что-то найдёшь.
                                              Ответить
                                  • показать все, что скрыто> Ты правда считаешь, что этот пиздец нормален?

                                    Не вижу никакого пиздеца. Нормальное поведение.
                                    Ответить
                                • показать все, что скрытоВ питоне, разумеется, видимость блоковая, как и полагается
                                  Сравни
                                  for (var i=0; i<10; i++) {
                                    console.log(i);
                                    for (var i=0; i<10; i++) {
                                       console.log(i);
                                    }
                                  }


                                  и питон
                                  for i in range(0, 10):
                                  	print(i)
                                  	for i in range(0, 10):
                                  		print(i)


                                  В питоне чтобы вырваться наружу есть ключ слово ``global``, но оно не нужно
                                  Ответить
                                  • показать все, что скрыто> В питоне, разумеется, видимость блоковая,

                                    Шта?! Нук выведи i после второго цикла.
                                    Ответить
                                    • показать все, что скрытода, такая проблема есть

                                      тем не менее, внутренний "i" затеняет внешнего, а в JS нет

                                      Это другое поведение, и в JS оно более ебанутое

                                      сравни выводы-то
                                      Ответить
                                      • показать все, что скрыто> затеняет

                                        Затирает, если быть точным. Просто потом внешний цикл его восстанавливает.

                                        Т.е. этот пример работает из-за того, что это for each, а не сишный for. Вот и всё. А лексических блоков у питона нет.
                                        Ответить
                                        • показать все, что скрытоДа, этот сахарок «Питон» разворачивает примерно во что-то такое:
                                          generator_1 = range(0, 10)
                                          while True:
                                              try:
                                                  i = next(generator_1)
                                              except StopIteration:
                                                  break
                                              print(i)
                                              generator_2 = range(0, 10)
                                              while True:
                                                  try:
                                                      i = next(generator_2)
                                                  except StopIteration:
                                                      break
                                                  print(i)
                                          Ответить
                                  • показать все, что скрытоВ Питоне тоже говнище.
                                    >>> x = [1, 2, 3]
                                    >>> for x in x:
                                    ...     print(x)
                                    ...
                                    1
                                    2
                                    3
                                    >>> x
                                    3
                                    Ответить
                                    • показать все, что скрытоНу и вот как должны себя вести вменяемые языки:
                                      #include <stdio.h>
                                      void foo(int x) {
                                          printf("%d\n", x);
                                          for (char x = 0x61; x < 0x64; x++) {
                                              printf("%c\n", x);
                                          }
                                          printf("%d\n", x);
                                      }
                                      
                                      int main() {
                                          foo(42);   
                                      }
                                      Ответить
                                      • показать все, что скрытоА вот руби
                                        i = 'hello'
                                        (0..5).each do |i|
                                          puts i
                                          (0..5).each do |i|
                                            puts " #{i}"
                                          end
                                        end
                                        puts i

                                        и там тоже всё работает
                                        Ответить
                                      • показать все, что скрыто> вменяемые языки

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

                                        Ну в общем-то js с let так и работает.
                                        Ответить
                                        • показать все, что скрытоА зачем нужен var, если он ничего не объявляет?

                                          чтобы не тронуть переменную за пределами функции?
                                          Ответить
                                          • показать все, что скрыто> чтобы не тронуть переменную за пределами функции?

                                            Да... Иначе ты насрёшь в window (или нет?)
                                            Ответить
                                            • показать все, что скрытоВ спеке JS нет window, но вероятно ты прав.

                                              Вообще интересно: если не требовать явной декларации перменных, то получим python, ruby, и обсёр со скопами (в руби чуть лучше, потому что много сахара для блоков)

                                              Если требовать, то вроде как лишний код для скриптушни.

                                              В перле например обращение без указания скопа не разрешено в strict (в перле их два -- my это лексический, и our это уровень модуля)

                                              В lua скоп можно явно заказать через `local` вроде

                                              И только JS взял худшее из двух миров со своим var, но слава богу починили в let
                                              Ответить
                                        • показать все, что скрыто> Иначе из цикла или ифа наружу фиг что вытащишь
                                          Справедливости ради, в ещё более нормальных языках «if» и «for» — это expressions, а не statements.
                                          Ответить
                                        • показать все, что скрыто> Иначе из цикла или ифа наружу фиг что вытащишь

                                          Вот кстати да. В JS я могу написать
                                          for (var i=0; i<xs.length; i++) {
                                            if (bad(xs[i].pituz)) break;
                                          }
                                          
                                          if (i < xs.length) {
                                            console.error('bad pituz!');
                                          }


                                          А в сишке - уже нет.

                                          Красивая конструкция for (var i=0; i<xs.length; i++) превратится в двустрочник int i; for (i=0; i<xs.length; i++)

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

                                          Что-то мне намекает, что сишные ЛК узковаты, а ЖСные - в самый раз.

                                          Минимальная единица абстрации - функция (см. лямбда-питушню), а не if/for. Поэтому не надо от тела функции что-то прятать в if/for.
                                          Ответить
                                          • показать все, что скрыто> Минимальная единица абстрации - функция

                                            Ну ок...

                                            Почему тогда у js локалки и глобалки вверх-ногами сделаны? Раз уж у тебя функциональщина во все поля, локалки должны быть по-умолчанию, не? Тогда не нужен был бы var, всё было бы интуитивнее.
                                            Ответить
                                            • показать все, что скрыто> Раз уж у тебя функциональщина во все поля, локалки должны быть по-умолчанию, не?
                                              Это при написании кода анскильным питухом, который забыл оставить var и не прикрылся 'use strict'?
                                              Да, надо было так делать, а не срать в window.

                                              > Тогда не нужен был бы var, всё было бы интуитивнее.
                                              Какая интуитивность )))
                                              То-то в питоне и global, и nonlocal для пущей интуитивности добавлено.

                                              Если делать интуитивно, то нафиг убрать локальные переменные. Пусть будет только одна область видимости, и тогда не надо никаких варов.

                                              А если область видимости ограничена, то удобно видеть по "var"/<type>, где переменную создали.

                                              for (i=0; i<xs.length; i++) //ok
                                                if (bad(xs[i])) bad = 1; // bagor
                                              if (bad) // bagorische

                                              Куча такого кода будет неинтуитивной. Если брать питон/js - представьте, что bad выставляется в лямбде в коллбеке. Дело не в этом, дело в том, что удобно выставить питушню из соседнего контекста, и этим реально пользуются.

                                              P.S. Сейчас опять набижит Гост и расскажет про функци-анальщину, но дело не в ней. Вместо bad=1 может быть другая логика, которая может нетривиально выразиться в функциональщине. Нам может понадобиться выставить что-то во внутреннем блоке или во внутренней функции по ходу дела, а не возвращать новое значение при выходе как в функци-анальщине.
                                              Ответить
                                              • показать все, что скрыто> про функци-анальщину, но дело не в ней.
                                                Как раз-таки в ней. Если у тебя возникает желание «выставить что-то» — поздравляю, твой мозг поражён императивным говном.

                                                > Дело не в этом, дело в том, что удобно выставить питушню из соседнего контекста, и этим реально пользуются.
                                                И это — полнейшее говно. То, что им пользуются — не показатель: ротоёбы спокойно пользуются «PHP», пишут https://github.com/mpak2/mpak.su и радуются жизни.

                                                «Контексты», «блоки» и прочие «скоупы» нужны ровно для одной задачи: для изоляции логики и, как следствие, уменьшение coupling'а. Механизмы, эту изоляцию разрушающие, объективно являются говном.
                                                Ответить
                                                • показать все, что скрытошотуд, гост унижает жс?

                                                  говночую
                                                  Ответить
                                                • показать все, что скрыто> поздравляю, твой мозг поражён императивным говном.

                                                  Какой багор )))

                                                  Допустим, мне платят 1 у.е. за решение некоторой задачи методом проф. Програмування. Мне не платят за выбор функци-анальщины или им-перда-тивщины.

                                                  Я могу пердолиться сто часов с функци-анальщиной ради функци-анальщины и реализовывать алгоритм, который на им-перда-тивщине реализуется за час. За ту же 1 у.е.

                                                  Не всё выражается хорошо в функци-анальщине, не всё выражается хорошо в им-перда-тивщине. Иногда нужно просто выставить значение за минуту и не перепердоливать всю ор-хитектуру ради того, чтобы цепочка делегационной воренщины выдала наконец мне это сраное значение.
                                                  Ответить
                                                  • показать все, что скрытоО, а вот и классические оправдания говноделов и ротоёбов пошли. С их точки зрения нанимать кого-то, кроме пыхомакак за миску риса, экономически невыгодно.
                                                    Ответить
                                          • показать все, что скрыто> Красивая конструкция for (var i=0; i<xs.length; i++)
                                            А здесь мы видим поражение головного мозга императивным говном.

                                            В нормальных (ну, более-менее, из-за первой строки всё равно говно) эта задача решается примерно так:
                                            val bad: Int => Boolean = _ == 3
                                            val seqBad = Seq(1, 2, 3, 4)
                                            val seqGood = Seq(1, 2, 4)
                                            
                                            val res1 = seqBad.exists(bad)
                                            val res2 = seqGood.exists(bad)
                                            
                                            println(s"seqBad is bad == $res1")
                                            println(s"seqGood is bad == $res2")
                                            Ответить
                                            • показать все, что скрытоВ JS есть Array.prototype.map и Array.prototype.reduce для or (var i=0; i<xs.length; i++).

                                              Но тут опять же та ещё питушня. Чтобы вытащить питушню наружу, нужно пердолить переменную из верхнего скопа вручную (лямбда оскопляет код, какой багор) или врубать котя-морфизм. map/filter - только частные случаи котя-морфизма. А reduce - не ленивый и не оптимизирован.
                                              Ответить
                                          • показать все, что скрыто> Красивая конструкция for (var i=0; i<xs.length; i++) превратится в двустрочник int i; for (i=0; i<xs.length; i++)

                                            Во-первых, это не очень хорошая конструкция.

                                            Во-вторых, такие конструкции всегда стараюсь вынести в ф-цию.
                                            for (var i=0; i<xs.length; i++) 
                                              if (bad(xs[i].pituz)) 
                                                  return i;

                                            Поэтому не согласен с этим аргументом.

                                            А наоборот согласен с ISO

                                            > Если у тебя возникает желание «выставить что-то» — поздравляю, твой мозг поражён императивным говном.
                                            Ответить
                                      • показать все, что скрытоПонятно. Говнокодеры, которые любят экономить имена переменных, выбирают сишкоправила.

                                        А я-то думал, почему у меня нет проблем ни с ЛК ЖС, ни с ЛК сишки. Я просто две переменные с одинаковым именем в одной функции только по ошибке создаю.
                                        Ответить
                            • Это я писал?
                              Если не я, то поддерживаю.
                              Ответить
                            • str_replace('ECMAScript5', 'PHP', $messedj);
                              Ответить
                          • показать все, что скрыто> Родина им дала Babel, блядь, пиши на нормальном языке!

                            Ну и нахуя мне ради джвух строчек пердолиться с очередной трансляторной питушнёй.
                            Ответить
                      • показать все, что скрытоЯ знаю, что есть конвертеры, но не все обязаны ими пользоваться.
                        Ответить
                  • показать все, что скрытоЭто для интерпрайз питухов.
                    У центос седьмой вон есть расширыенная поддержка

                    Ай-да писать скрипты под python2.7?
                    Ответить
                • показать все, что скрытоА это скрипт под Node.js.
                  Кстати, в 21 Августа 2013 (первое упоминание результатов скрипта) был let?

                  Хотя, не важно. var one love, а letоняди пусть страдают.
                  Ответить
      • показать все, что скрытоТоп 250 пользователей по количеству комментариев:(всего 67302 штук)
        1: guest8 (#25580) - 54980
        2: bormand (#5528) - 52571
        3: guest (#1) - 48602
        4: 3.14159265 (#1438) - 14379
        5: Lure Of Chaos (#1538) - 14270
        6: kegdan (#6824) - 13960
        7: gost (#8086) - 11900
        8: roman-kashitsyn (#3818) - 11657
        9: inkanus-gray (#1659) - 11324
        10: 1024-- (#7146) - 10960
        11: Desktop (#23661) - 10783
        12: 3_14dar (#7252) - 9364
        13: MAKAKA (#67285) - 8610
        14: defecate-plusplus (#4442) - 8494
        15: guest6 (#67780) - 7803
        16: TarasB (#721) - 7226
        17: j123123 (#7355) - 5616
        18: bugmenot (#1632) - 5230
        19: LispGovno (#6011) - 5103
        20: wvxvw (#988) - 5088
        21: CHayT (#2853) - 4884
        22: Stertor (#5934) - 4532
        23: Fike (#8394) - 4504
        24: absolut (#1528) - 4372
        25: anonimb84a2f6fd141 (#5798) - 4257

        Вроде удалось скачать, исправить http на https в парсере и распарсить.
        Только список пользователей не удалось подгрузить из-за какой-то питушни с моим JSON.
        Ответить
    • показать все, что скрытоhttps://habr.com/ru/post/284476/

      В учебном корпусе некоего института собираются включить поставленные с полгода назад турникеты. Для прохода нужны, судя по словесному описанию знакомого, в этом заведении обучающегося, RFID-карты. А за эти карты надо платить. Институту. Платить, говорят, не обязательно, но если не заплатишь — карточку не получишь. Соответственно и на пары не попадёшь. Вот такое бесплатное образование :)

      Возникает вопрос: имеет ли право кто-либо (институт, работодатель) требовать деньги за RFID-карточку, которая необходима для прохода к месту учёбы или работы?

      UPD: Стало понятно, что такого произвола много по всей стране, но люди боятся что-то делать из-за страха быть отчисленными. Кто-нибудь может подсказать действенные способы борьбы с описанным поведением вуза без риска для студентов?


      Эта история стара как мир...
      Ответить
      • показать все, что скрытоКакой багор :)
        Нам всё бесплатно выдавали, платить надо было только за замену.

        Кстати интересно, кто-нибудь пробовал задосить свой вуз заказами на пропуски? А если бы была бесплатная замена?
        Хотя, 200-300 рублей (<5 евро) - не такая большая сумма по сравнению с научным интересом. Если каждый студент, скажем, зарезервирует денег на 2-3 пропуска, а потом все поочерёдно пойдут сообщать, что потеряли, бюро пропусков сломается. Буквально потонет в финансовом потоке как тот мужик из мультфильма про копытное, которое делало золото.
        Ответить
      • показать все, что скрытоА вообще, им наверно стоит в прокуратуру обратиться. Там разберутся и, если что, вуз перестанет творить питушню.
        Ответить
    • Nepgear из Hyperdimension Neptunia
      Ответить
      • показать все, что скрытоmootools
        Ответить
        • показать все, что скрытоСуществовало несколько типов ритуальной практики Пурушамедхи.

          Согласно одной из них, царским домом покупался человек (обязательно кшатрий или брахман) за сто коней или тысячу коров. Этот человек в течение года фактически оставался на свободе и жил обычной жизнью, отказывая себе лишь в одном — в общении с женщинами. По истечении года его приносили в жертву вместе с жертвенными животными и царица совершала имитацию полового акта с трупом. По другому описанию, царица совершала половой акт или его имитацию с ещё живым человеком, после чего последний отпускался и награждался. Сам обряд был направлен на процветание государства.
          Ответить
          • показать все, что скрытоО чём этот тренд?
            Ответить
          • https://ayurvedaplus.ru/articles/265/252470/
            Коровий навоз. Его кушать не надо. Веды говорят, что это чистый продукт. Все остальные испражнения считаются грязными, и человек не должен касаться их, даже нюхать. Он должен избегать их, чтобы не оскверниться. Если же человек обоняет коровий навоз или соприкасается с ним, то это очень благотворно воздействует на него. Коровий навоз очищает прану человека, обладает максимально охлаждающим воздействием, снимает все виды осквернения тонкого тела ума от влияния других живых существ. Если вы с коровьим навозом помоете свою квартиру, то все духи оттуда сбегают, им становиться невыносимо холодно. Навоз действует напрямую на тонкое тело. Так как эти сущности живут в тонком теле и у них огня не слишком много, то они чувствуют, что нужно ретироваться. Наличие духов в квартире можно определить по запаху. Спертый запах, вызывающий неприятные эмоции, означает, что там живут какие-то духи. Если вы вымоете полы в квартире навозом, то там будет пахнуть свежестью, и будет ощущение, будто в ней никто не жил, будто вы только въехали в нее.
            Ответить
            • Когда человек ест пищу, он соприкасается с нею, и следы его тонкого тела остаются на этой тарелке. К ней потом прилепляются духи, и у нас потом портится настроение. Поэтому посуду Веды рекомендуют мыть с коровьим навозом, чтобы полностью очистить ее. Вы не сможете смыть следы тонкого тела по-другому. Если вы чувствительный человек, то даже после того, как посуда была вымыта с мылом и порошком после еды, понюхав ее, вы поймете, что от нее идет теплый запах. Это значит, следы вашего тонкого тела остались. После мытья с навозом, теплого запаха уже не почувствуете.
              Если вам подарили какую-то вещь, которая ранее была ношена, достаточно помыть эту вещь с коровьим навозом, и тогда ею можно пользоваться. То же относится к кровати, на которой кто-то спал. Без коровьего навоза невозможно жить, потому что ничто другое не освободит эту кровать или другую вещь от влияния человека, который ею пользовался.

              mootools
              Ответить
              • показать все, что скрытоСкушай заячий помёт.
                Он ядрёный, он проймёт.
                В тыщу раз целебней мёда,
                Хоть по вкусу и не мёд.

                Он на вкус, конечно, крут,
                И с него, бывает, мрут,
                Но зато кто выживает,
                Те до старости живут.
                Ответить
              • > Когда человек ест пищу, он соприкасается с нею, и следы его тонкого тела остаются на этой тарелке. К ней потом прилепляются духи, и у нас потом портится настроение. Поэтому посуду Веды рекомендуют мыть с коровьим навозом, чтобы полностью очистить ее. Вы не сможете смыть следы тонкого тела по-другому. Если вы чувствительный человек, то даже после того, как посуда была вымыта с мылом и порошком после еды, понюхав ее, вы поймете, что от нее идет теплый запах. Это значит, следы вашего тонкого тела остались. После мытья с навозом, теплого запаха уже не почувствуете.

                — Какое доброе дело? Ты понимаешь, что ты насрал, бля, в тарелку, единственная тарелка. Единственная, блядь, тарелка, мы из неё жрём. Жрём суп из неё, ты туда насрал. Чё… где мы теперь жрать будем, из чего, а?!
                Ответить
              • > Если вам подарили какую-то вещь, которая ранее была ношена, достаточно помыть эту вещь с коровьим навозом, и тогда ею можно пользоваться. То же относится к кровати, на которой кто-то спал.

                — Смотри, мухи, они тебе спать мешают, мухи… А я вот — давай я здесь насру, и они все прилетят сюда, и мы их убьём! Слышишь? И тебе тогда спать… ой!.. спать будет хорошо. Давай? Я насру, а… а мухи все прилетят, сюда, к нам. Ну, куда им ещё, ихнее место-то тока здесь. И… оооой!.. хочешь я насру здесь? И мухи, и мы их убьём!
                Ответить
    • показать все, что скрытоhttps://twitter.com/mop_e_s/status/1429461392332148742
      Ответить
    • показать все, что скрытоКороче, я усилием воли дочитал длиннючий тред про var/let.

      И лично для себя сделал следующие выводы: «JavaScript» сделан хуёво. Но не по причине var или его работы.

      var вообще нахуй не нужен. Точнее нужен, но для другого.

      Нужно было делать как в BASIC, Python: просто пишешь имя и используешь. LALKA=5

      LALKA по умолчанию должна быть локальной. Желательно локальной константой (привет функциональщине).

      А мудификатор var должен превращать её в локальную же переменную.

      Но если она локальная, тогда возникает проблема: как же захватывать внешние ссылки?

      С этим тоже «JavaScript» проебал, нужно было сделать явный захват use(a,b,c) как «PHP».

      Ну а если написал use(=) и проебал — ну сам виноват.

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

      А на скоупинг vara срать.

      Правильно guest6 резюмировал:
      > А я-то думал, почему у меня нет проблем ни с ЛК ЖС, ни с ЛК сишки.
      > Я просто две переменные с одинаковым именем в одной функции только по ошибке создаю.
      Ответить
      • показать все, что скрытоВообще обычно если текст функции занимает несколько экранов или в коде больше 128 уровней вложенности, то код, скорее всего, говно. Значит, настала пора разбивать его на более маленькие функции.

        Почему этого не делают? Из-за пирфоманса. Лишние вызовы могут увеличить время выполнения (что демонстрируют фреймворки с ООП гойловного мозга, в которых 90% методов ничего не делают, а только делегируют действия другим методам). Хотя, например, в сишке при использовании инлайна можно добиться минимальной переголовы.
        Ответить
    • показать все, что скрытоSoul_re@ver (U, R) ☓ насрал в #21736 ☓ (NGK, XYZ) (9/14/2021 11:10:49 PM) #
      В Китае же Партия делает телевидение бесплатно доступным, чтобы ты знал, как в стране всё хорошо и что у всех есть кошка-жена. А в Ниппонии у типичной офисной крысы нет ни денег ни времени чтобы купить телевизор и платить не за что.

      А на чём же они в сони плейстейшн рубятся?
      Ответить
    • показать все, что скрытоВажный опрос:
      https://twitter.com/kamysssh/status/1438847200528932867
      Ответить
      • показать все, что скрыто> ➻❥ она/её/арматурой/надломился ;; пивомамуля ;; обид не держу, держу пиво, а то прольётся ;; симпка дендро архонтки и сраалов ;; хейт акк михуе ⑅˖♡
        Ответить
        • показать все, что скрытоПонял только предложение про обиды и пиво.
          Ответить
          • Судя по всему, "михуе" это компания-разраб той гача-дрочильни "геншин импакт"
            Ответить
            • Можно поискать в duckduckgo слово "михуе", и в разделе "видео" там будет куча дегродских роликов из "TikTok"
              https://duckduckgo.com/?t=ffcm&q=михуе&iax=videos&ia=videos
              Ответить
              • Цуфищщ!
                Ответить
                • > михуе не умеют делать фансервис это безвкусно #инадзума #genshinimpact #геншинимпакт #геншин #среншин #радфем

                  Среншин-хуеншин блядь. Сука, как много в интернете всяких ебланов развелось.
                  Лучше бы контроллеры программировали, а не упарывались в бессмысленные донатные гача-дрочильни с аниме-девочками.
                  Ответить
                  • Great for Privacy, Great for the Environment: DuckDuckGo Is Now Cabron Negative
                    Filed under DuckDuckGo News on 21 Sep 2021
                    Ответить
                    • не пердят в офисе?
                      Ответить
                      • На Cocoa перешли с Carbon
                        Ответить
                      • Нанимают нелегальных гомонигр, которые жертвы, поэтому несчитово даже если будут жрать пимеев с чесноком по-ополченски прямо на галере.

                        Congo rebels are eating pygmies, UN says
                        Ответить
                        • Пигмеев действительно едят. Они воспринимаются скорее как лесная дичь, а не как люди. К сожалению.

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

        Или это всё gost сам себе отвечает?
        Ответить
    • показать все, что скрытоВореции:
      https://pbs.twimg.com/media/FAclQRlX0AMyKR2.jpg
      Ответить
    • показать все, что скрытоhttps://pbs.twimg.com/media/FAwzPZ2XIAAtZmX.jpg
      Ответить
      • показать все, что скрытоБагор какой )))
        Ответить
        • показать все, что скрытоПереименование согласовывали, были слушания, заседания...

          Оказывается, «Чертаново Северное» — это название целого района (муниципального округа), а «Северное Чертаново» — это название одного экспериментального квартала с гигантскими домами, который возвели в 1980-х, когда ещё термина «жилой комплекс» не было. Там даже нумерация хитрая: не улица и номер дома, а N-й корпус Северного Чертанова (ну то есть почти как в Зеленограде, только в более мелких масштабах).
          Ответить
    • 6ecum goJI6oe6, BBbIKJIagbIBaI-0LLLuu B uHcmarpaM qpomku Koqpe B pyke.
      Ответить
    • показать все, что скрытоhttps://pic.twitter.com/q05eJ19z43
      Ответить
    • показать все, что скрытоПо теме нашего сайта: https://pbs.twimg.com/media/FBa72qKWUAwRclK.png
      Ответить
    • показать все, что скрытоНе отвечайте уёбкам. Читайте книги.
      Ответить
    • Велосипедизация:
      https://pbs.twimg.com/media/FBceurFWQAMnRHF.jpg
      Ответить
    • Не отвечайте уёбкам. Читайте книги.
      Ответить
    • Не отвечайте уёбкам. Читайте книги.
      Ответить
    • Не отвечайте уёбкам. Читайте книги.
      Ответить
    • Не отвечайте уёбкам. Читайте книги.
      Ответить
    • Не отвечайте уёбкам. Читайте книги.
      Ответить
    • Не отвечайте уёбкам. Читайте книги.
      Ответить
    • Инверсия обосракции:
      https://pbs.twimg.com/media/FB4qFYLXsAIZ3NI.jpg
      Ответить
    • Как на "nemyx"-мове пишется буква "э"?
      Ответить
    • Он добр и милосерден, он честен и искренен. Самсон Вырин не умеет врать, поэтому он не воспринимает и чужой обман. Герой описан как незлобивый и жизнелюбивый человек. Поэтому становится грустно от рассказа Самсона Вырина о том, что его дочь Дуня оставила его доживать одного и уехала с офицером.
      Ответить
    • https://freespeechextremist.com/notice/ADKCFqevTU2ddBymps
      Какая экспрессия )))
      Ответить
    • https://files.catbox.moe/aoll00.mp4
      Ответить
    • Почему по окончании диалога некоторые (преимущественно тян, причём я на них совершенно не претендую, диалог по работе, например, или просто знакомые) оставляют последнее сообщение непрочитанным? Причём висеть так может месяцами. Их что, не бесит красный счётчик непрочитанных чатов? Есть идеи?
      Ответить
      • > Их что, не бесит
        – пфф, ну ты когда-нибудь попроси такого человека во время звонка расшарить экран

        99% ты увидишь, что там реально у каждого мессенджера и почтовика ТЫСЯЧИ непрочитанных сообщений
        Ответить
        • А нахуя так делать? Но версия норм.
          Ответить
          • не знаю. возможно, не знают про настройки папок и чатов. а может это для удобной отмазки, почему твоё сообщение неделю в игноре
            Ответить
            • А какая отмазка у тебя, чтобы не делать прививку? Аллергия? Быть может, шизофрения?
              Ответить
      • > непрочитанным

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

        З.Ы. Именно поэтому я за дискорд. Там вообще нет индикатора прочитанности.
        Ответить
        • Видишь нотификацию, вспоминаешь, что абонент — редкостный душнила, смахиваешь вбок, надеясь, что если притвориться, что не заметил его сообщения, он о тебе забудет.
          Ответить
          • А на звонках ему приготовлена громкость вниз?
            Ответить
            • переворот телефона
              Ответить
              • Частная мастерская "(((Адам))) и (((Хая)))" адаптирует
                компьютер "(((Гауляйтер)))" для Ваших потребностей:
                - вывод справа налево
                - обрезание проводов
                - монитор лицом к стенке.
                КОШЕРНОСТЬ ГАРАНТИРУЕТСЯ !
                Ответить
          • почему бы сразу ему не отключить уведомления вовсе? сраная вежливость?
            Ответить
            • А вдруг что-то важное напишет?
              Ответить
              • "я больше не душный" ?
                Ответить
                • "Если ты считаешь меня душным то назови хотя бы пять моих поступков, которые заставили тебя так думать, и я развернуто объяснию тебе про каждый из них, и ты поймешь, что ты был не прав, и что ты ошибся"
                  Ответить
        • Индикатор прочитанности — источник головной боли.

          В некоторых сервисах, если удалить непрочитанное сообщение, счётчик непрочитанных сообщений так и будет непустым, пока на сервере не придёт System.gc() и не починит.

          В «Твиттере» сломанный счётчик непрочитанных DM можно обнулить только через «Tweetdeck» (tweetdeck.twitter.com — когда-то альтернативный фронтенд, который потом был выкуплен самим «Твиттером»).
          Ответить
          • У меня на старом телефоне была смска шрёдингера. Непрочитанных смсок не было, но индикатор говорил, что одна из них не прочитана... Гугл не умеет в транзакции?
            Ответить
            • Бывают глюки в реализации протокола EMS, а именно многосегментных SMS. Например, когда пришли не все сегменты длинного SMS, средний потерялся из-за плохой связи.
              Ответить
              • Но тогда какой-то кусок контента всё равно показывается? Или будет вечно ждать оставшиеся фрагменты?
                Ответить
                • Да, какой-то показывается.

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

                  Ещё весело было, когда SMS-центр повторно высылал недоставленный фрагмент, причём несколько раз.
                  Ответить
                  • > Ещё весело было, когда SMS-центр повторно высылал недоставленный фрагмент, причём несколько раз.
                    Угу, при особо хреновой связи должны были сойтись звёзды, чтобы и фрагмент доставился и сообщение о его получении.
                    Ответить
                  • > другие вообще не показывали сообщение, пока не придут все сегменты (это худший вариант, поскольку недоставленный фрагмент может вообще никогда не прийти).
                    Обратная сторона тетриса.
                    Когда до конца не приходило 20 сообщений, телефон проигрывал игру в СМС?
                    Ответить
            • Send silent text messages: SMS will not be delivered as standard SMS, target
              user will receive no visual notification about SMS being received.
              Ответить
              • А зачем оно?
                Ответить
                • Я не знаю точно, про какие сообщения пишет ObeseYoung. Ниже я написал о том, что знаю. Так называемые «Flashing SMS» использовали ОПСОСы для отображения баланса или какой-нибудь оперативной информации, которую они по каким-то причинам не хотели отправлять в список входящих.
                  Ответить
                  • ObeseYoung пишет вореционную хуйню, а вы зачем-то читаете.
                    Ответить
                • Для слежки придет ли ACK.
                  Ответить
                  • Значит, это не flash, это вообще пустое?
                    Ответить
                    • MS will not be delivered as standard SMS, target user will receive no visual notification about SMS being received

                      ## Description

                      Payload looks like this: byte[]{0x0A, 0x06, 0x03, (byte) 0xB0, (byte) 0xAF, (byte) 0x82, 0x03, 0x06, 0x6A, 0x00, 0x05}
                      Full SMS PDU looks like this: 03050020 01f61fe0c91246066833682000412 06050423f00000 0a0603b0af8203066a0005
                      Where first segment is SMSC (SMS Center), second is user-defined data SMS, last segment is payload specified in userspace
                      Using this payload, remote mobile station (baseband) will not deliver or correctly process the SMS, will only provide ACK (delivery report)
                      Ответить
                      • Напоминает рой мыслей в умирающем мозге.
                        Это дамп твоей энцефалограммы?
                        Ответить
              • Был флажок в PDU (в заголовке SMS). При его установке сообщение показывалось как всплывающее или бегущей строкой, в список входящих оно не попадало.

                Сохранять такие сообщения умели только «Сименсы».
                Ответить
    • Очень сильно тестирую
      Ответить
    • https://youtube.com/channel/UCkaK0R0bN8YPpQ7iOAwg3uA

      Такое впечатление, что кто-то с ГК канал создал
      Ответить
      • Кажется, я неспехом заразился.
        Ответить
      • Погуглил «акратиды». Нагуглилась криповая заметка про город Шахты:

        https://lenta.ru/articles/2019/09/06/shakhty/

        Кто у нас из Шахт?
        Ответить
        • но в этой статье нет никаких упоминаний «акратидов»
          Ответить
          • Я тоже заметил.

            «Яндекс» начал очень хитро связывать статьи. Видимо, по «акратидам» больше ничего не нашёл, связал их с Магнитошахинской областью, а Магнитошахинскую область связал с Шахтами.
            Ответить
    • https://i.postimg.cc/vTMcz659/image.png
      Ответить
      • Шо ж они так неаккуратно фотошопят

        p.s. влепил плюсос за не-имгур
        Ответить
        • Угу, они отфотошопили готовый скриншот. А надо было HTML-страничку подправить и только после этого скриншотить.
          Ответить
    • Транс на гитаре:

      https://youtu.be/chLU44T9Rts

      А ещё у исполнителя СДВГ, ОКР и синдром Туретта.
      Ответить
      • ох ёба, какой привет из прошлого
        Ответить
      • Из-за тебя пошел переслушивать некоторые треки
        Нашел один на ютубе
        Вместо видео там фотка диска с дискогса, на котором этот трек вышел
        Которую я же снимал и постил на дискогс
        Сука
        Ответить
      • Непохоже, ОКоРщик переделал бы те моменты, где лажает рукой из-за нарушения принцыпа DRY. Но в целом суть бади-мюзик передал несмотря на читерский бит в фоне.
        Ответить
    • /start
      Ответить
    • Хочу в Банг кок
      Ответить
    • Кто был в "Мавзолее"?
      Ответить
      • Ленин.
        Ответить
        • Кто был и в "Мавзолее", и на "Говнокоде"?
          Ответить
        • Почему был?
          Ответить
          • Я анекдот придумал:

            Приходит мальчик в мавзолей и спрашивает у Ленина: Ленин, вождь народов, почему не получилось коммунизм построить? Почему капитал до сих пор эксплуатирует рабочий класс?

            Мимо проходит завсегдатай говнокода:
            — Он сгнил.
            Ответить
          • ленин был
            ленин быв
            ленин будет быть
            Ответить
          • Потому что в языке нет present perfect.
            Ответить
            • Открою секрет: «был» (да и все глаголы в форме прошедшего времени в современном русском) — это бывшее причастие, из которого образовывался перфект.

              Аз есмь был.

              Потом глагол-связку «есть» стали опускать.

              Было ещё прошедшее несовершенное — имперфект — аналог past в английском.

              Аз бях.

              Эта форма полностью утеряна.

              Наконец, было давнопрошедшее — плюсквамперфект — аналог past perfect.

              Аз бях был.

              Сохранился в искажённой форме с заменой «бях» на «был»: «Я было спросил, а он не ответил».

              Ещё был аорист. У некоторых глаголов он был похож на имперфект. Частично сохранился в искажённой форме (когда его форма подменяется императивом — повелительным наклонением): «А он возьми да скажи».
              Ответить
    • На Филиппинах бойцовый петух убил полицейского, пытавшегося остановить нелегальные бои
      BBC News «Русская служба» -31 октября 2020, 11:350
      На Филиппинах бойцовый петух убил полицейского, пытавшегося остановить нелегальные бои, Слуцк
      Бой петухов на Филиппинах
      Филиппинский полицейский был убит бойцовым петухом во время облавы, целью которой было пресечь нелегальный тотализатор в провинции Северный Самар.


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

      Болок умер от обширной кровопотери по пути в больницу.

      Он участвовал в рейде против нелегального заведения, где проводились петушиные бои, в провинции Северный Самар.

      Петушиные бои — популярное на Филиппинах развлечение, собирающее толпы болельщиков, делающих ставки на победителя.

      Их разрешено устраивать только в лицензированных заведениях по воскресеньям и праздникам. На время пандемии COVID-19 они полностью запрещены.

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

      «Я сперва не поверил, когда мне доложили. Это первый подобный случай за 25 лет моей службы в полиции», — сказал полковник, выразив глубокие соболезнования семье погибшего.

      В связи с инцидентом арестованы три человека, конфискованы семь петухов, два набора шпор и 550 песо (11,4 доллара) наличными, сообщило филиппинское агентство PNA.

      Еще трое подозреваемых скрылись и были объявлены в розыск.
      Ответить
    • В чём разница между «to defend» и «to defeat»?
      Ответить
    • Французское слово «connard» переводится примерно как «мудак».
      Ответить
    • Курок ружья французы обозначают словом «chien», основное значение которого — «собака».

      А вот англичане и немцы курок ружья обозначают соответственно словами «cock» и «Hahn», основное значение которых — «петух».
      Ответить
    • Решил из принципа сидеть без админских прав на винде. Убрал себя из локальных админов, и забыл пароль локального админа.

      Не могу теперь поставить клиента wmvware.
      Удивительное дело, конечно: какая-то мелкая хуита, сетевой клиент, который должен тебе на экране что-то рисовать, для своего запуска требует админских прав, елеватор в манифесте прописан

      ссанина
      Ответить
      • Виндобляди соснули!
        Ответить
      • кстати, о виндах
        https://tb.rg-adguard.net/public.php?lang=en
        Ответить
      • я полгода назад разбирался со своим старым студенческим компом, который висел все это время у родителей

        естественно я там в свое время сидел из-под пользовательского аккаунта без прав, а пароль от админ-аккаунта забыл. в связи с этим был какой-то багор, но я у его уже забыл )))
        Ответить
        • Для этого MSDaRT лежит на рутрекере
          Ответить
          • Кстати, MSDaRT создан по мотивам «ERD Commander».

            Ситуация похожа на «Sysinternals», которые были приватизированы «Микрософтом».

            Ну почему самые нужные вещи создают посторонние люди, а «Микрософт» их потом приватизирует?
            Ответить
            • Причем он платный, лол:)
              То есть обычный Recovery Console бесплатный, а с впиндюренным туда dart -- платный.

              Потому что купить дешевле, чем сделать самому. Визио купили например, ntbackup у Симантека, ГиперТерминал, и Руссиновича вместе с интерналсами -- тоже
              Ответить
              • > ГиперТерминал
                Этих точно не купили.
                А лучше бы купили, хотя бы не было охуевшего ценника на довольно простой софтварь.
                Ответить
                • ну не купили, а впиндюрили в win9x чужой софт
                  Ответить
                  • Давно так делают и ничего странного в этом нет, кроме того, что вендоры, поработав на M$ окончательно охуевают.
                    Ответить
                    • M$ это сервисный аккаунт или аккаунт машины в домене судя по долларку
                      Или скрытая шара
                      Ответить
      • Вот вы говорите "безопасность".

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

        А так у постгри один пользователь, у nginx другой, у постфикса третий (на самом деле их там целая гопа) и всегда понятно, кому на какую папку права давать.

        При установке демона обычно ему создается юзер, причем в шеле у него nologin, и интерактивно ты им хуй войдешь (что локально, что по ssh).
        И пароля такому пользователю тоже не создают, что как-бы логично, и секурно.

        А что у пинды? Отдельного питуха получил разве что IIS, остальные сервисы работают кто от LOCAL SERVICE, кто от NETWORK SERVICE, кто вообще LOCAL SYSTEM. И как им права раздавать?

        От кого мне запустить свой сервис?
        MS говорит "от LOCAL SERVICE", и тогда к моим папкам будет пол системы иметь доступ. Охуеть.

        Нужно создавать отдельного питуха, например так делает 1С и MS-SQL (но им нужно SPN регистрировать в домене, с ними всё понятно), только создавая пользователя нужно не забыть отключить ему все виды логинов кроме "вход в качестве службы", и придумать длинный пароль, потому что без пароля только перечисленные выше три аккаунта и работают.

        Можно конечно (g)msa взять, но мой сервис не в домене.

        феерия безопасности
        PS C:\> Get-WmiObject Win32_Service  | Group-Object -Property startname | Format-Table count, name
        
        Count Name
        ----- ----
           69 NT AUTHORITY\LocalService
          186 LocalSystem
           24 NT AUTHORITY\NetworkService
        Ответить
        • https://www.youtube.com/watch?v=wg77OW18jjk
          Ответить
        • Прыщебляди соснули.
          Ответить
        • В данном случае только кажется, что ты что-то там манажируешь через ПомерШёл, на самом деле тут WMI.
          Ответить
          • да, потому что Get-Service возвращает ``System.ServiceProcess.ServiceControlle r``, в котором аккаунта нету

            Акк можно высосать или через пачку команд ``sc`` (что лениво) либо через "WMI".

            Ну а почему я взял PS, а не wmic, потому что надо к PSу привыкать
            Ответить
            • Забавно, что M$¹ так отчаянно продвигает этот свой ПомерШёл, что Huy Scripting Guy рассказывает, как сдампить хренилище LSA, а в то же время Рабиновича за обсуждение такого покупают с пейсами и кипой шекелей, лишь бы убрал форумы свои.


              ¹ "M$" for machine objects
              Ответить
              • Повершел вообще золотая жила для черных шляп.

                Сейчас у них модно "питаться с земли", то есть ломать лалок встроенные в винду средствами.

                Раньше надо было ибаца: как-то затаскивать на сервер специально собранную для него бинарь, причем еще как-то запутывать её, чтобы по сигнатуре её не выебал антивирь, а на сервере Интернета нету, и как ты ее туда закачаешь..

                А сейчас открываешь повершел, и ебеш, почти все говно для атак можно запустить с PS, потому что в .NET есть API на все случаи жизни
                Ответить
        • В никсах юзер невесомый, всего одна строчка в /etc/passwd.

          А в NT для каждого юзера нужно создавать куст HKEY_CURRENT_USER, который весит дохуя, ещё кучу записей в других кустах и домашнюю папку с ненужным говном.
          Ответить
          • Да, с папочкой "Music" и "Photos", куда скопируются фотографии цветов из "Public":)

            Угадай, от какого имени работает Postgres на винде? А Apache от какого имени работает?
            Ответить
            • Арасне на винде давно не работает
              Ответить
              • чойто?

                нук запусти мне питоноговно на винде. Понятно, что кошерно это делать через IIS <--> WFastCGI, но веб мартышка в IIS точно несможет
                Ответить
                • Хуй знает, вероятнее всего тип, который занимался виндорелизами свалил, либо совместимость проебали, как сысопов, а может и то и то.
                  Ответить
          • но подождите, это же spof, это не веб-скейл, если кто-то перегрузит содержимым файл, то страдать будет весь сервак!
            Ответить
            • для этого у него есть зеркало, а точнее тень
              Ответить
    • vanished
      Ответить
    • Перекат!

      https://govnokod.ru/27951
      https://govnokod.xyz/_27951/
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • #на правах оффтопа
      Ответить
    • [color=whirw]g6Ct0Oc3Tt3Jy7Sp4Ov3Uo8Oa8Wu6Mn4Nv4Zi8Dv 6Ic1Sd9Aj1Ih1Wo6Pz7Ye2Xp8Ps1Hh7Ie6Zl4Wo4 Bi5Me8Oe9Bn9Yw3Si7Hp[/color]
      Ответить
    • n0Cd6Xh0Ta8Jl2Pz9Vi1Yf2Jc6Ep3Nz7Za0Fr7Pe 6Th1Sd7Fn6Xl4Kx6Vb8Xd9Fu6Ca9Cv2Nf1Ff2Mp6 Tm2Bl7Jr6Zg9Ez8Gk1Kr
      Ответить
    • o1Bz8Uu6Vu8Te1Mu1Px4Ye8Ir2Dh0Nk8Fu8Ws5Tu 2Lm2Aj0Mb6Wh4Vy9Yp1Is0Lj4Me5Ud5Sc3Ay5Ze9 Xl0Gc6Ks5Gv7Bm5Ii5Tk
      Ответить
    • v6Fy9Tp1Pf6Jy0Nw8Vx2Jz8Cx7Qp3Ls6Nn1Nb7Ad 5Ym6Zt0Pl1Nw6Xe5Pi3Us4Kf8Yy7Al4Ll4Ks3Wt1 Ps9Fq0Rn4Vz8Ip3Iq0Ff
      Ответить
    • b0Yo5Hw2Uy3Es2Rq4Gp4Oc2Dd9Ib8Ie0Es2Hi2Wj 6Gj2Ln1Zz4Tm3Hr9Sf3Qj2Xs5Zk7Mo7Wx1Rf4Kv2 Tz2Na1Vp0Gk7Fw7Af0Eo
      Ответить
    • k3Si2Ff3Uc0Ca8Yq7Ov6Iw9Rd9Vs1Ul2Si1Mb2Qt 0Ax4Ac3Or5Eb9Tj1Xt9Ii8Pp0Cn1Tp6Si3Yq5Rm2 Ck2Vp2Xd7Ue7Gi9Ue0Iz
      Ответить
    • v7Cz8Ru9Jc0Lp2Xm5Ac0Ub4Bu1Hc1Py0Zr9Td6Mh 5Qm1Ch7Cy4Mb7Le2Vh0Iq0Ay3Fz3Ws7Zz8Po6Fz4 Xs8Vy8Wm1Qv2Ct7Yi9Ln
      Ответить
    • v0Se2Da2Ij1Ry7Jp7Ok1Zw4Wr7Jt1Nx7Nd7Vi7Vj 4Ey3Af0Lz2Ew7Vr3Hy8Zm3Ri8Si3Yi4Lj7Hx8Li7 Oq7Zr6Za3Ox6Kg2Gr3Wy
      Ответить
    • b2Qq9Uc1Rw8Ti4Hf2Be7Mq0Cz8Kc8Ed6Gk0Vx6Yr 6Xr6Vc2Id3Bb4Bb8Vi9Un2Ic1Cn7Es4Qx2Fq9El9 Ev5Yd1Qb4Vj8Uq1Yl2Nm
      Ответить
    • t7Bi3Hj7Nd5Hp2Kd8Ov9Jh4Er5Ty4Vw7Jw2Bl1Tf 4Rn5Wq7Md1Dd0Ge1If8Iq8Ox8Il5Zy5Su5Ud8Xy5 Cg0Mp8Yk5Ct2Ak2Yt3Vn
      Ответить
    • w6Ke9Bs2Uk0Gn6Jz9Nc6Gu0Db3Vj6Zu8Rp9Rm4Aq 3Ii4Oy9Gq9Br0Qs8Xa0Da9Pa5Oc2Ew2Mz0Gb1Pi8 Sw8Em8Mq6Nj7Em4Sr2Ci
      Ответить
    • b8No6Fy6Oy9Zu9Qu9Pb9Hz8Qn1Qk8Xg1Wg0Gv5Jx 2Pw2Yn9Sn1Rr5Sf3Od0Re5Mm2Ac9Lm7Au2Lx8Mg1 Vr2Xd9Zh4Je9Fl6Je6Nf
      Ответить
    • u8Dh6Id5Hv9Md4Tq9Di9Vo7Zo6Qt0Je4Do9Xe5Wp 4Hu3Vg6An4Cg7Nb1Xb3Xt8Ns4Ki1Qz1Bx1Ph2Yk4 Du9Ib6Yt8Iw7Sw8Fm6Ad
      Ответить
    • q4Vj3Tv5Mj4Zf3Rx7Rl3Bm2Kj6Fn3Gz0Be6Rh2Bt 4Ev5Sz4Mz5Wk6Ju6Lk6Rd4Ig7Fa1Dj6Jh4Ym3Gs7 Hm2Pl8Mb6So7Re9Nc1Sj
      Ответить
    • i2Mw9Zd9Ju9In5Dz8Ak0Hh8Qe6Mt3Rs6Ww1Gi9Es 6Hr3Tm2Mc0Up9Lw3Au2Rj0Cw9Pl6Rm9Mp6Gx8Sf4 Kw0Jl0Ur8Fu2Ps7Fu1Yg
      Ответить
    • b4Bh2Jw7Tr7Nv1Zs7Fj9Uf6Ix5Vs1Sd3Se4Ts4Ha 1Lw9Jn3Ns0Dc4Bn5Ub7Sq5Nz9Pq7Xo2Wo1Il5Ay6 St9Zr0Vp2Jy7Xz0Vk7Wh
      Ответить
    • q6Ry5Hy0Ns7Xr9Ee7Gt2Vx4Nc1Fv0Sy7Cb4Jt7Fd 3Zs3En7Vn0Ov4Um7Xp0Ax0Ld6Wz7Ro7Qp8Yz0Tl6 Yc5Lq1Ft0Vg8Ge4Zr8Ft
      Ответить
    • p8Sh4Ye6Au1Yv5Jp7Lu5Wt1Ek5Tx6Ar2Mu0Qc7Lu 4Yf9Tj9Xv0El1Ju3Wd9Yr4Ff4Vw3Tl8Cc0Ei3Uh1 Ft6Rm5Sh8Hf0Cs1Bh6He
      Ответить
    • j6Gn0Qx8Pd6Cv5Kd4Hl9Rd7Vt7Ks6Hx1Ft4Co1Av 1Ns1Ft4Yr0Uo7Cc4Gw0Ud4Dy8Rp3Zc0Lw7Uv3If4 Zt1Au2Yh9Ec5Tp1Dl1Dt
      Ответить
    • o9Yw6Jg1Om3Ym2Fw9Db5Of1Sa2Ct4Pv3Vv3Hu5Ml 2Qa3Ug3Ac8Rk3Yt0Gg9Gx1Kz2Bh4Ls9Yc7Lw6Ug0 Vb7Jg3Yr4Fw8Ty5Cg3Dr
      Ответить
    • o4Tp9Gn1Eo2Bq2Ax6Dj1Zt3Lf8Sm9Eh3Wp9Yf2Gk 1Gz5Ud5Fx7Us2Yc1Ht1Rr0Eu5Nw8Mg6Mo7Wg8De4 Rd5Hf9Yw6Ig3Tz2Zs9Up
      Ответить
    • z7Uo1Ga3Rs5Xq8Pq2Rk5Rf9Hg9Hn4Co2Lf1Wp7Dk 7Ac7Ze0Ex0Nx0Qi1Ze8Lh8Qe0Gd3Fp7Fr8Td3Tx5 Hr7Vu4Ps8Yu4Du8Ms9Rp
      Ответить
    • m5Wc9Zv8Io8Ia6Wt4Ky4Dp1Ej5Wt1Am6Ca3Pj2On 2Xe7Jw1Re7Nf7Pn7Ja8As4Wq6Pq1Va4Zh1Yh9Oz6 Ha9Ny9Ug4Cn9Qa3Ig0Le
      Ответить
    • o8Gk2Il1Qe1Wn8Jb4Dx8Ao4Ye6Jk1Bc5Dz1Th4Gl 7Ql1Ou9Jx6Ow3Xi5Oi4Ee4Oa7Ye9Mg9Pw7Tz3Nr7 Lx4Ys2Bn7Ud5Qq3Mo5Qc
      Ответить
    • h1Nc2Di3Hj4Cw1Bd8Mb3Zt2Fs1Zq2Uz8Yi0Ir4Uk 5Ag6Vc0Jx8Vu0Tn8Qy8Bg3Wr7Qb0No1Lt8Ug6Jz0 Yx5Us8Dy3Ps3Ts2Iq1Nc
      Ответить
    • t9Ny6Eg9Ch4Tf7Cv0Pl8Ge6Ni3Cs6Op5Im7Jj6Wx 1Mj4Mx0Ra8Xb0Yu7Su1Vx5Dt3Nx2Wl6Lm0Ii5Hq0 Df9Zq8Ht5Mi5Ju6Lf9Da
      Ответить
    • x9Bh3Sc0Mm8Wa4Rd1Yk2Hn4Uu3Rm4Oq1Sy7Ca3Fb 0Xu6Ej8Ec7Jt6Ex0Jg6Ow7Ke7Rh9Fz3Uq7Pb0Jp3 Or4Zk0Pk4Pz1Fz6Ib4Lb
      Ответить
    • h2Cs4Vq4Ae8Su0Jb8Bm8Nk8Xj7Ag8Yr6Zs1Ia8Uf 9Ld2Eo9Jy0Ir5Lu1Sw4Bl6Xw0Ip5Mz9Xc3Ge4Ku8 Ha1Rp8Zk1El8Pd5Pe5Mo
      Ответить
    • x4Oc9Gw8Yq3Uv9Af5Ap0Ie0Ni2Zm5Tg1Df7Ks0Hy 8Fu0Nf7Lf4Bw5Aj5Gc5Sl1Ux4Oi2Kj6Ra8Oq6Yy0 Tv5Pt5Dj0Gt1Ml4Sj1By
      Ответить
    • m3Qk4Jc8Bn8Sl4Hw7Yp1Iz1Ol8Lg5Ai7Wk4Qx0Il 2Ew6Jo2Ho7Sr9Zl7Jf9Od8Qc4Mp8Km1Is8Yn4Fp3 Sr5Oo4Ld5Wy1Ej1Da9Dh
      Ответить
    • y1Zq6Cp8Mm8Uo3Ir6Je6Vz9As2Dv9Cu4Ie2Fa5Iu 4Xg3Kv5Yh3Aq4My2Tf1Ts0Pz8Mh4Ky4Rm4La5Hc4 Qz8Ek0Ek2Yg5Dq8Ba6Vi
      Ответить
    • p5Qm1Ub3Fv9Tw9Vv7Ds3Mz7Lx2Lm6Qa7Rt1Xx5Mo 9Fw6Tx7Mv3Fg9Gu0Ti1Aq0Ar3Xv9Wb6Bh3Oa2Ri5 Kh3Xl7Lo0Ns0Np7Ui3Ci
      Ответить
    • l9Av0Cy8Ib3Pk5Pg9Ay8Hk6Kd7Eo5Ve7Ck6Fm1Xi 7Pn5Pr2Sq2Cl2Jq1Im5Ex7Qe3Ah4Kk7Lg5Nq5Yt4 Db6Hr3Fb2Tj2Iq0Ih0Xv
      Ответить
    • f9Ng0Qo2Ln1Ht3Aq7Ds1Bq5Ph9Cj5Qw1Rv5La4Kj 0Me1To0Sw9Ie4Op6Ci2Ce4Lp9Ps3Xw0Fo9Tp9Ym1 Iy5Zk6Nq8Ar9Ps9Ln8Ve
      Ответить
    • h9Pe2Wf0Zz2Fr4Pa0Tn4Ov8Qc6Ke3Vp9Xa8Oe0Hq 9Qi8Os7Hq1Nh0Ci8Ic5Xt2Lu1Dh9Lx2Sp9Hk7Zz2 Hd4Zt9Ai6Vu0Vd8De2Mp
      Ответить
    • q5Ge2Fk6Sm4Bf6Ap1Da7Oj6Yz3Ym6Vi6Lm1Bl1Ul 6Zp3Os8Bl4Tj1Vf0Lp9Kl8Ag5Zl6Qb2We9Is4Uz0 Bt1Ge6Wi0Jr4Nz5Mt3Eh
      Ответить
    • p6Ll3Jb9Ad8Ki5Fe0Sj6Zz0Gy8By0Ls1Rl2Wy2St 7Wj2Ko1Ui4Nq5Ow1Mn1Mw7Rw3Gq0Cm2Rw4Ko8Zl5 Vu1Mh4Ow0Vo4Re4Do2Dw
      Ответить
    • o7Sp9Ew4Hz3Nn3Mk7Sx1Ju0Bj1Gj8Ao9Bc1Ih3Rp 9Pl3Pe1Mb3Ky7Hs4Gd0Il8Ts2Vf1Nb2Gh0Zb3On6 Lz9Xp6Xc7Ic8Yr9Eg6Gu
      Ответить
    • g1Fq1Hr0Zp2El7Re4Yq1Oc6Bx5Zm7Au0Yb9Bf6Qg 5Aj7Lq7Vj8Ll8Ki9Mv2Iw3Uj0Mj2Ah9Le9Ak0Ib2 Lb8Tn5Rf0Qy9Hg5Hx4Vy
      Ответить
    • r6Ec6Kx0Nv2Xe7Su3Gg1Dx3Jv4Tn0Ob9Yn7Co9Ln 4Ya0Xq0Hv5Mb2Kq2Qz8Mr1Nn6Ur4Pm5Nx9Jh4Cr9 Pd9Qn3Rm5Mv5Wt8Fm6Pz
      Ответить
    • j1Ps3To4Bv9Ja8Yh2Hc3Gm0Zt7Tp6Dm2Yw0Gb6Xf 5Bz7Yl5Ub0Kt4Hb7Ht8Ai3Ho3He1Tl2Hd6Al3Vx6 Zy3Cy7Io8Fl4Ij7Hh4Nt
      Ответить
    • i1Bd2Gv1Rk9Lf0Ae7Rb4Hj0Fd5Lk1Fj4Fo9Fj2Te 2Qs6Ng8Nx4Zc8Tb7Cx8Zx3Rg5Ka2Sw6Zm8Em6Ii1 Dh6Vm0Nh2Ss5Rc8Hg7Gl
      Ответить
    • f5Vt0Ub0Bj8Rk2Qn9Xt2Tc5Uu8Gp5Da1Jo3Rn2Dm 7Fi2Qd1Uy0Je1Qk2Em0Aj3Ur9Gm4Pw2Ki5Mv5Vz5 Zn2Zi2Iw2Hs8Kj1Hu8Ss
      Ответить
    • k4Ix9Nc0Lo1Uh6Na8Ps6Bn3Re6Ty8Pj9Lw7Ad4Hl 2Fe3Qs3Hx7Yx4Bp2Vs0Dy6Nt1Ot4Hl2Wc3Mf7Wz1 Aq5Sq0Jb1Hk9Aq9Rq5Ek
      Ответить
    • l7Dw6Me4Nt6Th0Ap9Ci6Jz4Qv1Ap7Wa8Qq3Xq2Nq 6Pw5Qr6Tx4Dq3Wf8Nf9Yb4Ch3Yy2Vz2Pf4Ra5Av8 Jh5Vp7Rb1Bx9Vn8Xb7Zh
      Ответить
    • u1Mg3Pq2Dz9Ba5Ob2Ny3Ml0Wv5Md7Eq0Zb1Hn5Nm 5Nb3Nq3Ry0Wa0Iq5Gw8Li1Fu4Of6Tq5Od4Ri9Sh7 Co2Za2Td5Rt1Vq9Yv0Om
      Ответить
    • b6Pp2Rf0Wo6Do5Jh7Lf9Pz4Iy4Fu7Tt3At9Pu8Jh 4Yq8Ib0Ha1Bn0Lu4Sn8Vw8Kn1Rb5Rg0Ua2Ji7Wj5 Yf5Nw7Wh2Cy2Pj0Gg9An
      Ответить
    • f3Hi7Mp4Lg6Up6Xf2Wb2Rb4Yf5Qu8Ba1Py8Ba3Gc 0Lr1Ri1Mr2Sc1Ya7Rf7Ew2Di7Wz4Tu9Yi2Fi7Wl1 Lh0Nw8Yo4Il2Cy5Ow2Iq
      Ответить
    • o8Vj9Xq3Jz4Nr9Xo9Vl5Yy3Dz7Ff8Pl1Yv8Zg3Qq 8Bq3Bo0Rf2Sq5Ez8Ww7Qx8Cn4Iy3Md5Ll3Fp6Ji7 Ca3Pu8Pw1Ug9Qb9Ru1Ju
      Ответить
    • o2Mu3Ic4Np2Sm1Pb8Eg5It3Nn9Jb9Rn5Ho9Fo3Td 0Mg5Up9If9Ne3Do9Iu8Ux7Ew3Kn4Qb7Am8Xc9Tc4 Ui3Er4Ab9Mm4Ft0Gy1Bh
      Ответить
    • y2Ol7Sn5Ov8Et5Cr9Wf8Nw0Lz0Mw7Uo3Ql8Wg3Gp 4Nw1Ep7Vy1Mg0Je1Hl7Jw9Nw4Ib2Kn0Vn2Il5Zz1 Rc0Uv8Ps6Bw8Ew3Kl8Is
      Ответить
    • p9Kr7Ab8Oz9Yk0Rt9Kg3Tp2Fm6Ly3Pt4Fr0Wl6Jn 0Ki0Wj9Ep6Qu8Ir5Jl0Vz0Gs3Zt0Fk5Ah0Pr8Rw6 Pi8Fc4Rb5Bk9Yp0Hl6Fv
      Ответить
    • y9Ox0Fl6Xb0Ah0Wg2Wv7Qi5Si2Ih9Lj1Ln4Lr4Cy 9Bg7Td2Yt2Oj2Nj2Zw6Gn7Hf6Zs6Ce1Cf7Vm3Lh4 Wc0Yt9Ca3Yd9Oi6Xr8Lj
      Ответить
    • y5Xc0Fh1Fu8Pw9Wi9Hx6Nl6Bx6Py9Kn5Ja6Fe8Om 5Ws1Dy2Gj9Cq9Jq4Zs4Zj5Jb4Ou7Fl3Aq4Ta1Ms9 Im5Aj0Kq9Ia8Ii6Vu9Jr
      Ответить
    • z5Qw5Hz4Zn0Tg4Qy3Wx9Lt6Ny8Uu1Lb7Zk7Uz6Co 7Wc9Rn4Rk7Pn2Ld0Ji6Wv9Ke5Xr3Sw7Nf8Rg2Lc0 Za6Gf5Ov2Jx4Py8Sq8Tt
      Ответить
    • y5Xt9Gz7Nd5Kr0Cv6Mi8Sn8Sw1Wt2Zj2Il3Wy5Fx 4Qs4Ot5Do2Av7Ol3Nl8Jp6Cz5Mo2Pf1Gh3Nb3Zy2 Eb2Xx4Hf5Fx6Of7Bb7Rh
      Ответить
    • o6Bu1Dh1Xg3Ek2In2Zr4Nf7El4Oc2Jy9Gh9Ii9Ti 3Fw8Sy7Kw9Mc2Vb5Uv5Ol4Ch1De7Gp1Bo2Ya5Vb4 Sk3Yj1Uf5Qg3Jn1Yg8Uq
      Ответить
    • i8Ag0Rw3Dh4Ia6Vf3Pi9Vq6Wu5Vj4Rs0Ck2Rv9Fv 5Mo1Hl0Hd1Qp7Ah0Ri0Ea9St2At0Hh4Yb9Rv6Qf7 Ue0Et6Gq8Dx5Vc0Wg4Xm
      Ответить
    • p7Hz5Hy9Tl4Jg2Pj0Ud3Im4Rf5Ma4Vu5Gc2Rn6Rg 3Or2Iw9Uv8Mo8Kd3Dr1Oj0Do1Wv3Qu3Ix4He8Zv5 Fa1Qq9Xv2Wk7Ol8Gf2Nt
      Ответить
    • z8Fz8Yi6Ig7Px1Jz6Lj9Ci4Cz3Br7Yx5Lb3Dx0Gi 3Tf1Nq8Fz1Mv1Hq7Er5Vk0Oe9Rf9Fc8Qn6Mg5Ub4 Dc9Nw9Rf8Jk2Hl8Kr9Jt
      Ответить
    • f0Nf8Bb9Kf9Uj7Rx9Uc0Ao6Vw6Fs7Uu7Zx4Cl5Gy 4Dz4Ly6Yo3Oy0Ej8Ib4Fl0Cj3Uj4Ro7Ey3Gu1Dz7 Mc1Ok4Gi4Bi0Qz3Um2Oz
      Ответить
    • b4Lv3Jq7Xb2Po4Ck1Yj4Fw5Ob3Ml6Nd0Ne4Vb2Bs 0Qw1Ru4Hv9Hg4Ge0Jv5Sj3Fv4Hx3Hs5Vr5Zz0Cc2 Go5Na5Hb5Hj5Mm1Ol6Ks
      Ответить
    • r5Zz9Ug0Fa5Dx8Fp2Gg0Hs8Fs1Ds8Mi7Tf9Co5Si 1Tl7Dn2Li5Ul9Lq0Ng2Ck2Jj9Ns3Be0Mx9Vh0Fq7 Np4Ak3Kn8Kd3Rr4Cm5Uo
      Ответить
    • u7We4Yt7Sk0Nn5Hh9Nc7Ca0So7Fh5Ac0Uv1Dz3Xw 4Qu8Na7Ka7Sg5Wo1Pk1Tc4Va3Fv4Lr5Vu3Tr2Fv8 Gw6Pi4Yo1Un9Eh7Uw3Lr
      Ответить
    • b1Fs2Ms6Xb4Ha1Ms6Ua3Rm8Tt3Wh0Bp1Ro5Yb5Gb 2Sh2Av4Ku8Hm1Gm7Fs0Gc5Rq5Bm7Ns0Sk4Yu2Ko4 Gl0Rb1Wq1Kz6Gm4Vi4Wi
      Ответить
    • w4Ut9Ed9Ys0Ut5Nh1Xr9Ob3Lh3Oa0Hl3Dn2Di0Hz 8Ei3Pl7Hb1Cc5Hi0Gd2Ai9Vz0Rx0Xb7Oa4Md9Re3 Iw2Nm5Aw0Pq5Jo8Ux5Zu
      Ответить
    • v6Od7Wm1Gx1Zf1Mk0Zh7Gs0Hf8Up4Tm5Xa2Zu0Ni 4Ib7Ao5Th5Vq6Wa4Lt7Yc1Up0Xm4Wn6Nd5Kx2Ug5 Vn3Aq8Fw8Vj4Zo1Cu4Rs
      Ответить
    • h2Uz2Sj6Ra6Ao0Lb3Po4Hg6Cw0Ib0Nm6Eq6Fr5Fh 2Ds1Fb5Hg3No8Vm4Nc4Ao4Mu0Ol4Xn0Ik1Js9Yo2 Bc6Rx7My4Dm6Ou3Ea6Zp
      Ответить
    • t5Dm1If5Yy0Ya3Fe3Eb3Of3Jz0Ie0Bj8Es7Xx8Ou 8Iy6Wm6Ew2Tj7Ik7Lc7Lm9Xa5Fc6Sx7Lw1Me1Hr7 Jp7Ki8Ls5Hi5Jz6Qp0Nx
      Ответить
    • w9Yi3Fq7Nh3St2Kw2Or1Py7Zx2Mb6Fj9Di7Bq3Qn 5Uy4Qa8Nh3Zd7Ru2Jf3Mq6St2Py5Ou9Rs2Nu9Wt9 Br0Vx9Oe7Zq1Jy6Hz6Bs
      Ответить
    • s3Oa3Kt6Dg2Ib0Ug2Kz0Iu6Uc7Ln2Wq4Ov7Xl4Gd 2Gq0Au8Ji7Bq0Xr5Rv5Vl0Kl0Ra8Ja3Vf2Rw2Lw7 Nq7Ej4Xz1Go1Nx4Sw3He
      Ответить
    • x1Fz9Tg4Wt6Wt6Ew4Mo0Fc2Ul4Qf5Zb6Xg7Cd4Md 9Ls5Uy3Rg1Ci2Wn7Vv6Jb3Mx4Hh8Ua8Cc1Oo9Pc2 Wk4Ek5Ci2Jl2Fb4Hr6Ga
      Ответить
    • j9Jx1Fe7Cw6Vh9Oz8Pe5Ui9Ci4Un5Iu5Vk2Me1Oh 9Za5Px7Gr9Yj9Zg3Rs5Ec2Xp9Kr7Bd9Im2Gw4Dp8 Wb2Hl6Ew6Gq6Ut9Ip9Be
      Ответить
    • l9Nh8Mi2Og8Ac7Dw5Fv2Di7Ai8Mo0Gu5Op7Zc6Rb 1Gn6De9Ie6Cd2Ew5Us9Xx8Gf9Os3Cy4Md1Qo4Zc4 My3Rm8Wx1Wp2Oz2Di3Al
      Ответить
    • m7Yd0Xo5Xg4Nv4Gu6Rt1Ck9Sl3De6Cu8Vz9Bc3Ai 2Hh2Ad4Vv0Kp5St0Ga4Un3Xa4Fj9Tk2Yp0Pr6Zf4 Es7Yi7Ib2Fd0Hg9Nu0Fo
      Ответить
    • x6Sy6Pq9Ov7Vu1Kh4Ql8Aa5Mv8Nf2Qd2Sh6Rx7Fk 0Uq1Vr7Wm7Xv7Iw3Tl4Rv0Gn1Tt7Vs2Bs2Vy5Qp7 So4Nf1Jo0Yi1Cp3Ox2Xc
      Ответить
    • a6Mb3Fp2Ym6Zv1Ck4My6Ad1Zs7Th1Rf0Wm9Oi3Mi 5Js6Sm9Oj4Cz8Zx4Vd0Vi1Qr2Vr5Bh2Nn2Av4Jg7 Ut8Es8Sa1Qy7Th4Gy1Jc
      Ответить
    • a3Qx1Mc2Eb1Pg2Dy0Wt5Ij8Cs1Nw1Fe5Vj8Ci6Gr 6Bx3Ok8Lq5Vt7Tn1Jz4Ny3Gq9Vg0Ac4Ox6Yl0Qg3 Bl2Tq4Ck6Qp0He3Vf1Rq
      Ответить
    • z9Ms2Ky0Af7Zg7Ct5Bh6Te9Sl0Xj5Wo2Vd8Tg9Se 8Np1Dr5Fo6Ju6Um7Jk9Qk7Ud8Zf7Wr4Ld1Pt6Jf3 Rs8Qy1Nz9Xh1Iu8Ki2Ce
      Ответить
    • z0Fv5Tk1Cc6Tr9Cj0Ti7Vl5Yq9Ib3Fm0By9Vy7Ee 4Rk1Aw9Cz7Ef7Ul4Tf8Er7Fm2Gt8Ag0Yd7Pe7Bz8 Rl7Yd9Ze9Ku2Hr8Oq8Pu
      Ответить
    • z0Bm2Wi3Kt6Ds3Cg3Tr7Dh9Yd6Gz6Ek4Dp7Ru5Ll 0Ll5Uk6Zv0Oo8Ab5Ne5Sw0Zs9Js8Ah3Xu1En1Cf5 Cv5Xy9Yu7Hv5Ov8Tm5Np
      Ответить
    • j8Rw7Pd2Np2Xo4Ff2Vw3Tk8Io5Fr8Rt5Uo1Fe4Zx 6Go7Dg9Ix1Ng3Cr0Qh9Xg2Wi3Bc2Nx8Oa6Ix7An8 Dj1Ca2Vb9Ec1Pn1Wg4Az
      Ответить
    • e1Zd1Ta7Jf3Lo1Dy2Vp7Sa7Qp4Hs7Pg5Mo6Xv3Xn 3Bx1Xf6Ky5Uz3Rx6Tm9Fh9Qj7Tf0Qw0Xw9Yh5Xk9 Kr6Xs8Ei9Zb1Lc8Vg8Yq
      Ответить
    • x4Sh1Sf9Bp3Gz3Fc5Sd4Aq5Am2Ue1Xr1Kd9Pb6Uh 6Ba9Rh2Ol7Gr5Bv0Xq2Jf3Bl3Dl5Is7Xd4Se1Tv2 Er4Ea2Jo3Nm5Bf6Pc1Ru
      Ответить
    • x4Hl3Cp6Ta3Cu7Vj3Gv4Sh8Zi8Wf2Im6Nh5Is3Il 6Ft0Mc7Nn6Ls2Ys6Op0Ti5Pa8Af6Bg3Vw1Gl3Xk9 Ig6Ut8Pk6Xn3Ac5Du2Ac
      Ответить
    • h8Wi1Ut2Ko4Oo1Ri6Ck9Pw2Gl6Vy9Qo3Hj3Sl5Sc 4Bw3Pi2If5Av3Dl0Qv1Ef9Nz0Gg7Ar7Oi7Tg9Sp0 Fm2Kd1Zj1Dp4Ym9Yl0Aa
      Ответить
    • x9It6Yn0Gt9Rk9Ia0Bw1Gp4Qu8Ny1Ea0Jl5Kb8Cm 6Yd6Id8Na2Ap5Sr4Qb9Yb2Jp4Mg8Zv3Vs9Tf2Py8 Ni6Yg5Xd6Ot2Xg2Uz0Qs
      Ответить
    • s4Mw9Yi5Tm6De5Pb3Qi0Vz3Hw2Dl1Ge2Fu5Tv2Uh 8Bp6Kg6Eg8Az8Ao7Is9Vx5Jm5Ck3Gb7Yo1Ze8Mz2 Ov9Ci3Ag0Cr6Xs8Yu9Ic
      Ответить
    • h9Tt8Or8Ya7Tx6Oq6Uw8He9Lr9Yr8Aq9Cc4Rp3Ky 1Tp8Ak7Mq2Cg3Ou8Mi8Ss8No8Zv3Nm7Xq2Ke4Rb1 Xe6Ci3Ne1Ya8Ds1Og1Pr
      Ответить
    • s4Zq2Tj9Sw4Ig3Et2Cm6Od0Ms5Go5Pl4Eb7Wd9Gj 8Wx9Zl9Px9Dx7Vf9Sv6Uv8Ur7Tw1Hc0Wa3Ut2Bz5 Zg3Hp3Xk1Oe7Qa5Jf4Lf
      Ответить
    • i4Pk7Sm0Nm1Cy1Kj5Uu1Xu1Xo4Ov4Zm2Ae5Cl7Bs 3Dd6Ac4Tw0Ht4Jn5Kv7Di1Je5Ec7My1Je3Ee1Bb7 Ub0Na8Ou0Hy3Ng5Fp5Ff
      Ответить
    • f7Bf2Zk7Xb8Qc3Nc5Ck2Wd8Jv6Ty4Kx2He3Ai3Qa 4Zx3Xq4Jg9Bq9Dp9Mx9Wx6Da3Fu7Tk6Li2Ic2Wt2 Ac2Ph5Ao7Fe7Aq2Ne0Mk
      Ответить
    • l5Rq8Gy0Cl5Jw6Fo6Kv0Jz9Zb5Nk8Lq0Yz1Qe9Wx 1Re2Av2Gj6Tb3Ny6Iq2Pq3Db7Bh6Ck0Ha1Of6Xj1 Fc5Kx5Bn3No6Yo6Es8Sh
      Ответить
    • n5Lt3Gd5Nv9Gu0Ik2Ga7Bb9Kg2Gp0Jm4Je3Jz0Bc 3Eb1Tr7Bm9Eb6Iy7Tk6Aw4Tx3Oi1Hz8Gp9Se7Oo1 Oa2Ml1Dd0Tx9Ca5Pe6Hw
      Ответить
    • u3Wq5Kz3Ys0Rk0Zm1Cz8Bq3Qq9Zd1Pd0Tg1Ao2Bp 4Lm6Vy3Uo5Og5Fc7Ps2Rc1Np2Ku9Ii1Fx8Pr4Dk6 Ak0Gc1Rv9Dg3Fr3Eb0Nz
      Ответить
    • w2Uy8Dk2Np1Ki0Rr0Uf7Hy7Wx7Dp8Ru4Wv0Cx9Mz 0Dm6Ti5Ga6My7Ue9Zv3Kl2Vn4Xr8Iq9Ck8Wq4Hh6 Cj2Tu4Dx2Vw9Xl5Dd1Iv
      Ответить
    • k1Dl9Hz0Ps8Mo3Yg2Of7Qx7Wo9Qh7Az3Fr2Oi8Ql 0Gy1Qq8Sn1Eo9It8Et4Sx3Fg4Cu6Lm2Gi1Uu5Lu4 Gy1Cc9Ak1Kr2Rf8Ib5Mv
      Ответить
    • b4Il3Va8Qf7Rz4Tz0Tj7Na6Dg1Dh1Cj1Qo5Yw1Dj 6Kc4Qd3Bl6Gp8Qr1Mr3Vo2Vr3Ic0Zz4Jl0Md7Wl3 Sh0Pq1Xp4Sd0Wc3Rj6Dp
      Ответить
    • o7Xe9Iu0Tc0Sk4Gs9Jx1If2Nt9Qy1Os4Bb7Kd1Cb 0Yl7Fy2Ln6Lh2Uf1Dt8Jj8Ds1Nr4Sk1Yi0Je6Wq7 Kt2Po1Uw6Bw6Oi2Tg1Ma
      Ответить
    • o3Ez2Ke9Qh3Jx3Jt6Ad9Em3Dr2Wp0Uo8Dl7Tn2Mo 9Ds1Kl6Si1Ij6Zf4Mc6Hg1Xj5Tf8Ze2Cp6Ee8Vu8 Sz9Dd5Jr9Tu6Kc3Ig1Fd
      Ответить
    • k7Lq3Ch0Ep1Ne6Hi6Mq6Ls3Pz7Jw0Ti6Rp2Yw9Br 7Si2Jf9Ex4Jl1Zt5Dn1Ui8Hf7Vs2Ub2Pf5Tr1Wl5 Xi9Ua9Xa1Gn0Zq3Cw8Kf
      Ответить
    • p2Kw1Ou3Ci3Dn5Jq3Uz5Er4Qb2Pf3Iu5Qu6Hg6Sy 1Na0Be5Rn0Wu6De3Av5Jk4Pk2Qs0Ri9Sk7Mj2Fl1 Ad5Al8Mn5As0Uh8Ke7Xi
      Ответить
    • z5Ew8Ln2Wo1Kt0Qa7Fj6As2Iz2De5Xz6Jn6Gp9Lx 0Rb5Nx6Rp7Tq3Oi3Jl7Wz5Oh9Ac3Hp0Rx2Lz0Nw2 Un4Zf2Mk6Wq9Bx3Lm3Sj
      Ответить
    • v0Pf0Iz9Iw1Gz1Xs5Lp8Qh2Hb0Rk8Wo2Cm7Oq2Sy 9Fm0Cm6Cw6Mg6Zo8Zs0Qj8Ua1Dx7Oo8Zb7Nj1Bv2 Zo2Ae1Sh1Ot3Ik9Zs8Ti
      Ответить
    • r2Ab9To9Kb4Ec2Md8Ps2Xj6Lf0Dv2Ou2Ct3Ai2Nk 6Nf5Zy6Ps7Jj9Iy5Xs9Oe1Ix5Lt6Zx4Kt0Oj6Zt9 Oe0Kk6Yh2Hw8Xp5Cd8Cx
      Ответить
    • k9Gh9Fp9Ew4Cq5Pg3Im2Ld1Xl3Ak9Fd8Hj8Am8Tb 2Dp4Bw8Df5Bk9Ok7Ow7Hi3Mb8Hq2Gz1Aa8Ax3Nj1 Qg2Ad2Kw1Ph0Ew5Bn6Nt
      Ответить
    • l4Dt3Zh7Bo9Pg0Kb5Je9Yf2Vt3Pe0Hz1Lh1Dl6Tt 4Vh6Nj9Qv0Wc7Kt4Hg1It2Az2Pm2Mz6Fr6Zs0Hu9 Ia6Qb1Nc1Zi3Kb3Hw6Vr
      Ответить
    • e4Bh8Sd8Ju8Lq2Xa6Nr1Pa0Xk1Ye6Su7Sc2Nt6Xe 7Ip8Hv1Dv5Le6Pl2Wg5Sn9Ji4Ua6Kw7Hf3Xt3Vm6 Up6Ks5Gy2Sv6Yf4Tz6Vf
      Ответить
    • h2Do7Js8Pp9Hh7Xx1Pj1Ql0Mn3Om3Gu9Ue0Ew7Pq 9Eb5Rb9Wv4Rn0Tw8Zc4Fn8Ys8Gv5Jg2Ou5Of4Np1 Sl6Sk8Of6Vu9Qb4Gk6Oa
      Ответить
    • h9Dw2Yd3Cm0Zu7Fv8Sz4Pe5Kf9Gl3Wy2Sk5Dz5Ye 7Ds4Gl5Gz4Sd8Mh3Jv9Cw5Vx2Wx8Ri5Os0Xb2Fn0 Uu2Qc7Bb5Gf0Li3En6Hv
      Ответить
    • r9Qk0Em1Gg3Hh4Pt6Ms7Kv2Ob9Zg7Du7Zb6Su5Wr 1Jp5Yi4Qs3Wq6Ci8Oo7Ro3Lh7Ev1Hn1Fz8Lo9Qz4 Xf4Rm1Sr6Gt8In6Rc6Ex
      Ответить
    • q8Vf0Fx6Fl6Mo8Vk6Kz8Mq5Ko9Ls8Qw2Vx1Nm4Os 3Zv7Ae5Qy4Wp5Om1Or2Bm9Qa4Tm0Bn0Wg1Db7Rk9 Mg9Hj1Dk9Hn5Cp1Wp3Qj
      Ответить
    • n6Wa7Wp6Yp7Ls8Nr9Kn3Eq7Wk6Fv3Qa0Dz9Qt7Lp 6Iv1Uu1Do7Iv6Mw0Gb2Gg5Ag6Ie9Ne8Hm0Ly8Yr5 Jz1Qf4Hz1Kd1Ty2Kc1Lb
      Ответить
    • l3Hh6Fz3Or8Ah4Ae9Ks3Qr1Es9Ag1Xj5Qa8Te3Eb 8Pr5Nm6Cg9Kv9Rm2Rz0Dn7Tw0Vr7Jj1Bm6To3Qr6 Fb3Tb6Kn4La1Wd6Gr7Qm
      Ответить
    • d9Rj8Ur0Aa3Qt5Wi8Lp7Cj2Ix4Fv7Nu3Ql2Rb3Cc 0Lh8Jj6Om2Bf9Is5Yy5Sf9Zz5Fr8Tq3Xg1Hu6Yi1 Qa9We2Cb6Dh4Cc1Oy0Mi
      Ответить
    • l9Hk2Yd6Xw1Oc6Ja7Ih7Mv2Uo2Us2Zw2Cf4Hv8Qg 9My4Jx2Mg2Qn1Ds8Du8Ra8Jw0Xa9Rg0Jv9Ur4Oe0 Sp2Dx9Mp8Ty1Be7Co6Hd
      Ответить
    • k1Ae2Ko8Hl5Rj6Yu4Sq3Iv1My8Dc7Kh0Us6Vh1Cu 6Te2Qh5Cp4Si0Hj3Fi5Eo6Gc2Af5Td1Hd0Br1Hv3 Tk7Ld6Nz4Ma4Tl2Xf1Bq
      Ответить
    • y0Yo7Zh5Oi8Fl0Lv1Lq3Lm7Tf9Eq8Zi5Nk6Zs9Kt 8Lw1Ud4Kl1Bc5Pg4Rz2Qy4Xy4Ig4Bu9Yf8Zd9Yr0 Ch6Ch2Mq0Bf5Qy8Nk3Fc
      Ответить
    • s1Wx5Pa1Ug7Kt0Zb5Dw4Ab6Aa7Fu1He9Ao6Lm6Ia 5Ry5Ng8Yv8Vl8Te4Fa1Ak2Pk3Yp7Zi2Av9Kd4Zd0 Xd3Ga1Dh0Rj7Ip3Ie7Ps
      Ответить
    • x8Lf8Hx6Ky9Ei4Rb5Dc3Ui2Mv6Jq2Yb8Hr7Ur5Lq 2Zp3Rx1Cy9Ub3Ir6Yr1Ix4Yw3No0Xq0Ai4Tw1Xo2 Cw7Ey2Pg6Oq7If1Lk0Xt
      Ответить
    • x5Fb7Xf7Vf1Hd5Mh9Np7Bk7Ic3Lj5Xk7Ps8Ic3Pw 1Fr3Oj2Cn6Dl5Jk2Ee8Sj2Xn1Ge5Tv1Gm7Xz1Zi9 Cq2Ca2Qa0Lr2Fj5Ml0Rc
      Ответить
    • g2Mp8Ty6Qc9Dw1Fy2Iz4Lv4En0Aa5Uv9Ut5Sf2Jg 0Nk9Ti4Gg4Br1No5Dj8Si6Mf2Dt9Pk2Uj2Mc1Jw0 Gs9Hc8Wm5Ah0Fn5Xu4Fi
      Ответить
    • z0Rh0Uh7Pg0Hc5Vr3Fd2Mc5Aa7So3Jj1Aa3Rs4Js 2Wg6Ra9Rb9Jk3Ar9Pv8Cu9Le7Cb6Dc4Qa5Ul8Ia9 Am8Ff5Qn3Wr5Vv4Ey0St
      Ответить
    • e9Sw7Ol8Ma3Zb2Tz4Wz0Zl2Tw4Mu0Xi4Rq0Or7Cc 8Ub8Mq6Yk1Iw1Ne5Js8Rw2Gi8Td0Yf3Tw8Ea3Wp4 Nz1Vq0Cf0Uy7Ja2Oo2Xq
      Ответить
    • e6Cr8Fn0Cs1Pd7Lv8Ek8Ie0Ag5Cz8Hj5Du5Qy2Vz 0Rb3Wv8To9Sa5Af1Zj7Si1Aw2De0Vf9Wz9Nx7Sl7 Hp6Bk3Ph2Cp0Mi2Wv9Xg
      Ответить
    • h7Dr1Ix3Bw3Gx7Uo7Bd6Cu6Ll0Wt3Iw4Zn9Km8Nw 5Hw4Mu8Ob7Ee2Os2Mo8Eu4My8Bb8Gy7Lf7Mu2Qs8 Fj5Xg0Li9Gw4Pg6Hf8Hj
      Ответить
    • e5Ry5Fd5Ls2Gj0Jj7Ul8Rx8Ko9Wm8Ik3Of9Pt3Ef 7Xf2Ap7Hu9Nx1Pp9Jt8Ou8Ab4Kj6Oy2Su5Rh8Tf7 Ip6Wy6Vp6Zs8Ww7Ib1Tr
      Ответить
    • z4Ck1Jv0Gj9Ch2Vn2Re6Xd4Xz5Ka3Xj5Oi8Kb9Ay 1Ke1Js6Do0Mw5Hu2Jz8Re5Qs7Dj4Oy8Fn1Lx8Lj2 Hb9Da8Nv9Uk2Ul7Pb9Dl
      Ответить
    • s6Vi5Fe0Op8Jo3Lc6Zc0Ty7Hm6Br9Tj7Wo6Ym1Om 4Xv5Qv7Eg6Zw3Ya7Vb6Gq3Gc5Ja1Hv3Ch2Uh7Aw9 Ly2Xs3Qv4Oy6Yx2Kt2Sy
      Ответить
    • d4Ip6To1Ho0Xh6Xq1Ck6Sv5Rv1Kj3Xd2Hk5Ck7Gg 0Sy5Lv5Dl1Pz7Rf1Bh0Lw8Mk7Ld9Vj5Rq1Ua4Nm7 Lv3Ig8Ea8Re6Rg8Pm8Dv
      Ответить
    • y0Co5Zi2Ld5Fb5Uo3Zo3Lc3Xp0Of0Gw6Lw0Ai5Xx 4Cc3Hk4Zx6Na3Iv8Rn9Fm1Ss7Eh7Uq2Kv5Oi6Ah1 Rv2Va4Sy8Zn0Sm6Xs1Ik
      Ответить
    • w5Yl8Ai8Wi0Mf4Id9Cr6Ku9Ym0Sn9Xd3Um2Aa7Xz 9Je4Ge0Tk6Iu7Ef6Oz5Pq7Gr7Lx0Nu2Gc6Pu4Mh2 Eb4Mq8Ao0Pw6Uc5Qm4Xy
      Ответить
    • m6Nr5Gd8Pk8Iq6Kd5Aj0Yk9Zi1Ay9Yc1Br4Vj7Lh 9Zb4Yw2Vs3Sa9Bc1Os6Wp4Gx2Zg4Tb4Nh3Aj9Oc1 Mb8Sx3Tn8Qg8Kn2Gs5Zc
      Ответить
    • k0Ul9Pu1Fy0Ep3Kj2Os8Pv1Xt4Sl6Ep3Il3Ra2Ou 6Ue4Ia6Lr2Im1Wr4Vp8Ii0Jp2Gp9Tn2Pz9Le8Ce5 Df4Nx7Xb4Ol2If1Eh9Gq
      Ответить
    • l6Vr7Ga4Un2Fw6Gj4Bq8Se2Iv2Nm3Pz8Qe6Wg0Oi 9Xo1Gq6Fz1Uh4Qu4Gk2Vy8Cv8An3Zm4Rr5Ac9Vi4 Jp3Jx7Oh6Qd5Fa9Oo6Ea
      Ответить
    • n4Wq4Wp8Ev2Jm8Ng6Ah1Id8Bq1Kl6Tx8Fu3Kz2Ak 7Iw1Bv9Me7Xx8Xq3Et4Ec9Yt9Bt5Xq1Zw0Fe4Rw5 Xu9Ik2Eo0Ss5Lm0Nv8Ms
      Ответить
    • e0Zk7Am1Rm0Oc5Lr7Ek2Ou8Cm8Vt9Ps8Fp5Hv6Un 7Ok2Gs6Bh6Js0Ei9Bw5Io0Tn0Ap9Pa5De3Hw0Ex5 Vp1Xz7Bx7Bk6Nj9Na8En
      Ответить
    • m5Hw4Oz4Ds4Ax4Vr0Vp0Jn1Cu2Dz8Uw2Zy5Cq4Jq 8We7Hv6Vf7Vg3Jt4Oz7Fh3Rq3Wu7Qc7Jv9Px5Cp3 Pd0Hj8Cn1Nn1Rt9Fp7Cf
      Ответить
    • f3Kl8Dg5Xx8Fw0Rb3Hi6Gz0Qt7Wk6Ko0Ak9Pa5Lu 0Mx4Ap8Dp2Qd2Up4By5Xo3Zm4Ut2La9Gp1Dy6Uj4 Ts6Qq0Ur4Pf2Kj7Ao1Wb
      Ответить
    • b2Yb1Uu6Zq3Tk9Wf6Lk3Zp5Hr3Tr9Wi7Bc6Wx5Zg 4Ew0Pe3Un1Ee4Fp0Yl5Qc3Xs5Vh9Zq8Ea0Dp2Fu6 Sn5Xy2Ff1Ul6Qg8Rs8Cl
      Ответить
    • r3Hh4Ul5Bx5Sf4Vu9Um5Mm1Pa1Fz2Mt9Ym6Tf7Vj 6Zu6Xu8Xp9Sf8Su0Td7Nr3Hy5Nf9Hk3Zc5Se9Tt1 Bm8Sl7Fe5Gl4Jt7Gw7Yo
      Ответить