Калькулятор стоимости замены тормозных дисков
Рассчитайте полную стоимость замены тормозных дисков с учётом запчастей, работы и дополнительных материалов для вашего автомобиля.
Доп. материалы и услуги
₽
Как пользоваться калькулятором
1
Выберите класс вашего автомобиля — от этого зависит базовая стоимость работы за один диск. Например, для премиум-класса работа стоит около 1800–2500 ₽ за диск.
2
Укажите ось замены: передние диски (2 шт.), задние (2 шт.) или обе оси (4 шт.). Количество подставится автоматически, но его можно скорректировать.
3
Введите реальную цену одного тормозного диска для вашей модели. Отметьте галочками нужные дополнительные услуги: замена колодок, датчиков износа, смазка, очиститель.
4
Выберите способ замены — в сервисе или самостоятельно. Нажмите «Рассчитать» и получите детальную расшифровку всех затрат.
Примеры расчёта
Премиум-седан, обе оси
Класс: Премиум. Диски: 4 шт. по 4500 ₽ = 18 000 ₽. Работа: 4 × 1800 ₽ = 7 200 ₽. Колодки + датчики: +4 500 ₽. Итого: 29 700 ₽ в сервисе.
Эконом-класс, передняя ось
Класс: Эконом. Диски: 2 шт. по 2 200 ₽ = 4 400 ₽. Работа: 2 × 900 ₽ = 1 800 ₽. Без допов. Итого: 6 200 ₽ в сервисе.
Самостоятельная замена, средний класс
Класс: Средний. Диски: 4 шт. по 3 200 ₽ = 12 800 ₽. Работа: 0 ₽. Материалы (смазка, очиститель): +800 ₽. Итого: 13 600 ₽. Экономия по сравнению с сервисом: ~8 000 ₽.
Формулы расчёта
Стоимость дисков = Цена одного диска × Количество
Стоимость работ = Стоимость работы за 1 диск × Количество (при замене в сервисе)
Доп. материалы = Колодки + Датчики + Смазка + Очиститель (выбранные опции)
Итого = Стоимость дисков + Стоимость работ + Доп. материалы
Цены на дополнительные опции усреднены по рынку РФ и могут варьироваться в зависимости от модели авто и региона.
Пошаговое объяснение
Сначала определяется базовая стоимость работы за один диск в зависимости от класса автомобиля. Эконом — от 800 ₽, средний — от 1200 ₽, премиум — от 1800 ₽, спорт — от 3000 ₽ за диск. Эти цифры основаны на среднерыночных ценах автосервисов Москвы и регионов.
Далее количество дисков умножается на цену запчасти и на стоимость работы. К сумме добавляются выбранные дополнительные услуги: замена колодок (комплект на ось — в среднем 1 800–3 500 ₽ с работой), датчики износа (600–1 500 ₽), смазка направляющих (300–600 ₽), очиститель (200–400 ₽).
Если выбрана самостоятельная замена, стоимость работ обнуляется, но калькулятор показывает потенциальную экономию по сравнению с сервисом.
Где применяется
- Планирование бюджета на сезонное ТО автомобиля перед дальней поездкой.
- Сравнение стоимости замены в официальном дилере и независимом сервисе.
- Оценка целесообразности самостоятельной замены дисков в гараже.
- Расчёт полной стоимости при покупке подержанного авто с изношенными тормозами.
- Подготовка сметы для корпоративного автопарка при плановой замене дисков.
- Сравнение затрат на оригинальные и аналоговые тормозные диски.
Важные нюансы
- Цены на работу указаны ориентировочно и зависят от региона. В Москве и Санкт-Петербурге ставки выше на 20–40%.
- Для автомобилей с электронным стояночным тормозом (EPB) может потребоваться диагностический прибор — это увеличивает стоимость работы на 500–1 500 ₽.
- Всегда меняйте диски парами на одной оси (оба передних или оба задних) — это требование безопасности.
- При замене дисков рекомендуется также заменить тормозные колодки, даже если они изношены частично — старые колодки быстрее изнашивают новые диски.
- Перфорированные и насечённые диски стоят дороже обычных, но не всегда оправданы для городской езды.
- Калькулятор даёт оценочную стоимость. Реальная цена может отличаться из-за акций, скидок или срочности заказа.
Частые ошибки
- Замена только одного диска. Это создаёт разницу в тормозных усилиях и может привести к заносу. Всегда меняйте оба диска на оси.
- Экономия на колодках. Старые колодки с выработкой неравномерно прилегают к новому диску, сокращая его ресурс на 30–50%.
- Неправильный Moment затяжки. Слишком сильная или слабая затяжка болтов колеса и суппорта приводит к деформации диска.
- Игнорирование очистителя. Новые диски покрыты консервационной смазкой — её обязательно нужно смыть специальным очистителем тормозов.
- Покупка самых дешёвых дисков. Диски эконом-сегмента могут иметь скрытые дефекты литья, приводящие к биению и вибрации при торможении.
- Пренебрежение обкаткой. Первые 200–300 км после замены дисков и колодок избегайте резких торможений — идёт притирка поверхностей.
Ответы на частые вопросы
Как часто нужно менять тормозные диски? В среднем — каждые 60 000–80 000 км пробега или при достижении минимальной толщины, указанной производителем. Передние диски изнашиваются в 1,5–2 раза быстрее задних.
Можно ли заменить диски без замены колодок? Технически — да, но не рекомендуется. Колодки уже притёрлись к старым дискам, и на новых дисках площадь контакта будет меньше нормы, что увеличит тормозной путь.
Оригинальные диски или аналоги? Оригинал гарантирует полное соответствие спецификациям, но стоит в 1,5–2 раза дороже. Качественные аналоги (ATE, Brembo, Zimmermann, Textar) не уступают по характеристикам и подходят для большинства автомобилей.
Что входит в стоимость работы сервиса? Обычно: снятие колеса, демонтаж суппорта, замена диска, установка колодок (опционально), очистка и смазка направляющих, сборка, проверка. Компьютерная диагностика для EPB оплачивается отдельно.
Сколько времени занимает замена? На одну ось — от 40 минут до 1,5 часов в зависимости от конструкции и состояния крепежа. Замена на обеих осях — 1,5–3 часа.
Можно ли заменить диски самостоятельно? Да, при наличии инструмента: домкрат, баллонный ключ, набор головок, динамометрический ключ, очиститель, смазка. Для авто с EPB может понадобиться сканер. При отсутствии опыта лучше доверить работу профессионалам.
Источники и справочные данные
Расчёт основан на среднерыночных ценах тормозных дисков и стоимости нормо-часа в независимых автосервисах РФ по состоянию на 2025 год. Использованы данные каталогов запчастей (Brembo, ATE, Zimmermann), агрегаторов цен (exist.ru, emex.ru) и открытых прайс-листов сервисных станций Москвы, Санкт-Петербурга и регионов. Нормативы времени работ взяты из технологических карт производителей автомобилей.
Всё о замене тормозных дисков: полное руководство
Тормозные диски — одна из важнейших деталей автомобиля, от которой напрямую зависит ваша безопасность на дороге. По статистике ГИБДД, около 15% ДТП с тяжёлыми последствиями связаны с неисправностью тормозной системы. Своевременная замена дисков — это не просто рекомендация, а обязательное условие безопасной эксплуатации автомобиля.
Признаки того, что диски пора менять
Первый и самый очевидный признак — вибрация на руле при торможении на скорости выше 60 км/ч. Это говорит о том, что диск деформирован или неравномерно изношен. Второй признак — глубокие борозды и канавки на рабочей поверхности диска. Если глубина выработки превышает 1–1,5 мм, диск подлежит замене.
Также обратите внимание на характерный скрежет или скрип при торможении — он может указывать на то, что колодки уже стёрты до металла и повреждают диск. Наконец, визуально проверьте толщину диска: на каждом диске производитель указывает минимально допустимую толщину (обычно выбита на краю диска). Если остаток приближается к этому значению — пора менять.
Как выбрать тормозные диски
При выборе дисков ориентируйтесь на три параметра: размер (диаметр, толщина, количество крепёжных отверстий), тип (вентилируемые или сплошные) и производитель. Размер должен строго соответствовать спецификации вашего автомобиля — даже небольшое отклонение сделает установку невозможной или опасной.
Вентилируемые диски (с внутренними каналами для охлаждения) устанавливаются на переднюю ось большинства современных авто. Они эффективнее отводят тепло и меньше подвержены перегреву. Сплошные диски встречаются на задней оси бюджетных моделей. Перфорированные и насечённые диски улучшают отвод газов из зоны контакта с колодкой, но для обычной городской езды их преимущества минимальны.
Оригинал или аналоги: сравнение затрат
Оригинальные диски, поставляемые дилером, обойдутся в среднем от 5 000 до 25 000 ₽ за штуку в зависимости от марки авто. Качественные аналоги (Brembo, ATE, Bosch, Zimmermann) стоят на 30–50% дешевле при сопоставимом качестве. Например, для BMW 3-серии оригинальный передний диск стоит около 9 500 ₽, а аналог Brembo — 5 800 ₽. Разница на комплект из четырёх дисков составит почти 15 000 ₽.
Однако для автомобилей с гарантией установка неоригинальных запчастей может привести к отказу в гарантийном обслуживании — уточните этот момент у дилера. Для машин старше 5 лет качественные аналоги — разумный выбор без переплаты за бренд.
Самостоятельная замена против сервиса
Замена дисков в сервисе на одной оси стоит от 1 800 до 7 000 ₽ в зависимости от класса авто и региона. На обеих осях — от 3 500 до 14 000 ₽. При самостоятельной замене вы экономите эту сумму, но нужен инструмент: динамометрический ключ (от 2 000 ₽), набор головок, домкрат, очиститель тормозов (300–500 ₽) и смазка для направляющих (200–400 ₽).
Для автомобилей с электронным стояночным тормозом (EPB) дополнительно потребуется диагностический сканер (от 3 000 ₽) или программное обеспечение для смартфона с OBD-адаптером. Без этого вы не сможете отвести задние суппорты в сервисный режим. Время самостоятельной замены — 2–4 часа на одну ось для новичка и 1–1,5 часа для опытного владельца.
Как сэкономить на замене тормозных дисков
Самый действенный способ сэкономить — купить диски и колодки самостоятельно и привезти в сервис. Наценка сервиса на запчасти составляет 20–40%. Второй способ — замена в межсезонье: весной и осенью сервисы загружены, а в январе-феврале и июле-августе многие дают скидки. Третий способ — покупка комплекта дисков и колодок в одном магазине: комплект обычно дешевле на 10–15% по сравнению с раздельной покупкой.
Также рассмотрите вариант восстановленных дисков. Если толщина диска позволяет, его можно проточить на токарном станке (от 800 до 1 500 ₽ за диск). Однако проточка допустима только при достаточном остаточном слое металла, а для дисков с глубокими трещинами или термическими пятнами проточка запрещена.
Для автомобилей старше 7–8 лет и при пробеге более 150 000 км задумайтесь: возможно, выгоднее продать машину и обновить автопарк, чем вкладывать крупные суммы в капитальный ремонт тормозной системы.
Заключение
Тормозные диски — расходный материал с ограниченным ресурсом. Средний срок службы передних дисков составляет 60 000–80 000 км, задних — 80 000–120 000 км. Регулярно проверяйте их состояние при каждом ТО и не откладывайте замену при появлении признаков износа. Используйте наш калькулятор, чтобы заранее спланировать бюджет и выбрать оптимальный вариант замены.
Безопасность на дороге начинается с исправных тормозов. Не экономьте на том, что может спасти вашу жизнь.
CiAgICAoZnVuY3Rpb24oKXsKICAgICAgdmFyIGNhckNsYXNzU2VsZWN0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2Nhci1jbGFzcycpOwogICAgICB2YXIgYXhsZVNlbGVjdCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdheGxlJyk7CiAgICAgIHZhciBkaXNjQ291bnRJbnB1dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkaXNjLWNvdW50Jyk7CiAgICAgIHZhciBkaXNjUHJpY2VJbnB1dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkaXNjLXByaWNlJyk7CiAgICAgIHZhciB3b3JrUHJpY2VPbmVJbnB1dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd3b3JrLXByaWNlLW9uZScpOwogICAgICB2YXIgcmVwbGFjZVR5cGVTZWxlY3QgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVwbGFjZS10eXBlJyk7CiAgICAgIHZhciBvcHRQYWRzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ29wdC1wYWRzJyk7CiAgICAgIHZhciBvcHRTZW5zb3IgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnb3B0LXNlbnNvcicpOwogICAgICB2YXIgb3B0R3JlYXNlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ29wdC1ncmVhc2UnKTsKICAgICAgdmFyIG9wdENsZWFuZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnb3B0LWNsZWFuZXInKTsKICAgICAgdmFyIGNhbGNCdG4gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnY2FsYy1idG4nKTsKICAgICAgdmFyIHJlc2V0QnRuID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jlc2V0LWJ0bicpOwogICAgICB2YXIgd29ya0hpbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnd29yay1oaW50Jyk7CgogICAgICB2YXIgZXJyRGlzY0NvdW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2Vycm9yLWRpc2MtY291bnQnKTsKICAgICAgdmFyIGVyckRpc2NQcmljZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdlcnJvci1kaXNjLXByaWNlJyk7CiAgICAgIHZhciBlcnJXb3JrUHJpY2VPbmUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZXJyb3Itd29yay1wcmljZS1vbmUnKTsKCiAgICAgIHZhciByZXNUb3RhbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyZXMtdG90YWwnKTsKICAgICAgdmFyIHJlc0Rpc2NzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jlcy1kaXNjcycpOwogICAgICB2YXIgcmVzV29yayA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyZXMtd29yaycpOwogICAgICB2YXIgcmVzRXh0cmEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVzLWV4dHJhJyk7CiAgICAgIHZhciByZXNTYXZpbmcgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVzLXNhdmluZycpOwoKICAgICAgdmFyIGJhc2VXb3JrUHJpY2VzID0gewogICAgICAgIGVjb25vbTogOTAwLAogICAgICAgIG1pZGRsZTogMTQwMCwKICAgICAgICBwcmVtaXVtOiAxODAwLAogICAgICAgIHNwb3J0OiAzMjAwCiAgICAgIH07CgogICAgICBmdW5jdGlvbiB1cGRhdGVXb3JrSGludCgpIHsKICAgICAgICB2YXIgY2xzID0gY2FyQ2xhc3NTZWxlY3QudmFsdWU7CiAgICAgICAgdmFyIHByaWNlID0gYmFzZVdvcmtQcmljZXNbY2xzXTsKICAgICAgICBpZiAod29ya0hpbnQpIHsKICAgICAgICAgIHdvcmtIaW50LnRleHRDb250ZW50ID0gJ34nICsgcHJpY2UgKyAnIOKCvS/QtNC40YHQuic7CiAgICAgICAgfQogICAgICAgIGlmICghd29ya1ByaWNlT25lSW5wdXQuZGF0YXNldC51c2VyQ2hhbmdlZCB8fCB3b3JrUHJpY2VPbmVJbnB1dC5kYXRhc2V0LnVzZXJDaGFuZ2VkID09PSAnZmFsc2UnKSB7CiAgICAgICAgICB3b3JrUHJpY2VPbmVJbnB1dC52YWx1ZSA9IHByaWNlOwogICAgICAgIH0KICAgICAgfQoKICAgICAgZnVuY3Rpb24gdXBkYXRlRGlzY0NvdW50KCkgewogICAgICAgIHZhciBheGxlID0gYXhsZVNlbGVjdC52YWx1ZTsKICAgICAgICBpZiAoYXhsZSA9PT0gJ2Zyb250JyB8fCBheGxlID09PSAncmVhcicpIHsKICAgICAgICAgIGRpc2NDb3VudElucHV0LnZhbHVlID0gMjsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgZGlzY0NvdW50SW5wdXQudmFsdWUgPSA0OwogICAgICAgIH0KICAgICAgfQoKICAgICAgZnVuY3Rpb24gaGlkZUFsbEVycm9ycygpIHsKICAgICAgICBlcnJEaXNjQ291bnQuY2xhc3NMaXN0LnJlbW92ZSgnc2hvdycpOwogICAgICAgIGVyckRpc2NDb3VudC50ZXh0Q29udGVudCA9ICcnOwogICAgICAgIGVyckRpc2NQcmljZS5jbGFzc0xpc3QucmVtb3ZlKCdzaG93Jyk7CiAgICAgICAgZXJyRGlzY1ByaWNlLnRleHRDb250ZW50ID0gJyc7CiAgICAgICAgZXJyV29ya1ByaWNlT25lLmNsYXNzTGlzdC5yZW1vdmUoJ3Nob3cnKTsKICAgICAgICBlcnJXb3JrUHJpY2VPbmUudGV4dENvbnRlbnQgPSAnJzsKICAgICAgfQoKICAgICAgZnVuY3Rpb24gc2hvd0Vycm9yKGVsLCBtc2cpIHsKICAgICAgICBlbC50ZXh0Q29udGVudCA9IG1zZzsKICAgICAgICBlbC5jbGFzc0xpc3QuYWRkKCdzaG93Jyk7CiAgICAgIH0KCiAgICAgIGZ1bmN0aW9uIHZhbGlkYXRlKCkgewogICAgICAgIGhpZGVBbGxFcnJvcnMoKTsKICAgICAgICB2YXIgdmFsaWQgPSB0cnVlOwogICAgICAgIHZhciBjb3VudCA9IHBhcnNlRmxvYXQoZGlzY0NvdW50SW5wdXQudmFsdWUpOwogICAgICAgIHZhciBkUHJpY2UgPSBwYXJzZUZsb2F0KGRpc2NQcmljZUlucHV0LnZhbHVlKTsKICAgICAgICB2YXIgd1ByaWNlID0gcGFyc2VGbG9hdCh3b3JrUHJpY2VPbmVJbnB1dC52YWx1ZSk7CgogICAgICAgIGlmIChpc05hTihjb3VudCkgfHwgY291bnQgPCAxIHx8IGNvdW50ID4gNCB8fCAhTnVtYmVyLmlzSW50ZWdlcihjb3VudCkpIHsKICAgICAgICAgIHNob3dFcnJvcihlcnJEaXNjQ291bnQsICfQktCy0LXQtNC40YLQtSDRhtC10LvQvtC1INGH0LjRgdC70L4g0L7RgiAxINC00L4gNCcpOwogICAgICAgICAgdmFsaWQgPSBmYWxzZTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzTmFOKGRQcmljZSkgfHwgZFByaWNlIDwgMCkgewogICAgICAgICAgc2hvd0Vycm9yKGVyckRpc2NQcmljZSwgJ9CS0LLQtdC00LjRgtC1INC90LXQvtGC0YDQuNGG0LDRgtC10LvRjNC90YPRjiDRhtC10L3RgyDQtNC40YHQutCwJyk7CiAgICAgICAgICB2YWxpZCA9IGZhbHNlOwogICAgICAgIH0KICAgICAgICBpZiAoaXNOYU4od1ByaWNlKSB8fCB3UHJpY2UgPCAwKSB7CiAgICAgICAgICBzaG93RXJyb3IoZXJyV29ya1ByaWNlT25lLCAn0JLQstC10LTQuNGC0LUg0L3QtdC+0YLRgNC40YbQsNGC0LXQu9GM0L3Rg9GOINGB0YLQvtC40LzQvtGB0YLRjCDRgNCw0LHQvtGC0YsnKTsKICAgICAgICAgIHZhbGlkID0gZmFsc2U7CiAgICAgICAgfQogICAgICAgIHJldHVybiB2YWxpZDsKICAgICAgfQoKICAgICAgZnVuY3Rpb24gZm9ybWF0UnViKHZhbHVlKSB7CiAgICAgICAgcmV0dXJuIE1hdGgucm91bmQodmFsdWUpLnRvTG9jYWxlU3RyaW5nKCdydS1SVScpOwogICAgICB9CgogICAgICBmdW5jdGlvbiBjYWxjdWxhdGUoKSB7CiAgICAgICAgaWYgKCF2YWxpZGF0ZSgpKSB7CiAgICAgICAgICByZXNUb3RhbC50ZXh0Q29udGVudCA9ICfigJQnOwogICAgICAgICAgcmVzRGlzY3MudGV4dENvbnRlbnQgPSAn4oCUJzsKICAgICAgICAgIHJlc1dvcmsudGV4dENvbnRlbnQgPSAn4oCUJzsKICAgICAgICAgIHJlc0V4dHJhLnRleHRDb250ZW50ID0gJ+KAlCc7CiAgICAgICAgICByZXNTYXZpbmcudGV4dENvbnRlbnQgPSAnJzsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CgogICAgICAgIHZhciBjb3VudCA9IHBhcnNlSW50KGRpc2NDb3VudElucHV0LnZhbHVlLCAxMCk7CiAgICAgICAgdmFyIGRpc2NQcmljZSA9IHBhcnNlRmxvYXQoZGlzY1ByaWNlSW5wdXQudmFsdWUpOwogICAgICAgIHZhciB3b3JrUHJpY2VPbmUgPSBwYXJzZUZsb2F0KHdvcmtQcmljZU9uZUlucHV0LnZhbHVlKTsKICAgICAgICB2YXIgaXNTZXJ2aWNlID0gcmVwbGFjZVR5cGVTZWxlY3QudmFsdWUgPT09ICdzZXJ2aWNlJzsKCiAgICAgICAgdmFyIGRpc2NDb3N0ID0gZGlzY1ByaWNlICogY291bnQ7CiAgICAgICAgdmFyIHdvcmtDb3N0ID0gaXNTZXJ2aWNlID8gd29ya1ByaWNlT25lICogY291bnQgOiAwOwoKICAgICAgICB2YXIgZXh0cmFDb3N0ID0gMDsKICAgICAgICBpZiAob3B0UGFkcy5jaGVja2VkKSB7CiAgICAgICAgICBleHRyYUNvc3QgKz0gMjIwMCAqIChjb3VudCA8PSAyID8gMSA6IDIpOwogICAgICAgIH0KICAgICAgICBpZiAob3B0U2Vuc29yLmNoZWNrZWQpIHsKICAgICAgICAgIGV4dHJhQ29zdCArPSA4MDAgKiAoY291bnQgPD0gMiA/IDEgOiAyKTsKICAgICAgICB9CiAgICAgICAgaWYgKG9wdEdyZWFzZS5jaGVja2VkKSB7CiAgICAgICAgICBleHRyYUNvc3QgKz0gNDAwOwogICAgICAgIH0KICAgICAgICBpZiAob3B0Q2xlYW5lci5jaGVja2VkKSB7CiAgICAgICAgICBleHRyYUNvc3QgKz0gMzAwOwogICAgICAgIH0KCiAgICAgICAgdmFyIHRvdGFsQ29zdCA9IGRpc2NDb3N0ICsgd29ya0Nvc3QgKyBleHRyYUNvc3Q7CgogICAgICAgIHJlc0Rpc2NzLnRleHRDb250ZW50ID0gZm9ybWF0UnViKGRpc2NDb3N0KTsKICAgICAgICByZXNXb3JrLnRleHRDb250ZW50ID0gZm9ybWF0UnViKHdvcmtDb3N0KTsKICAgICAgICByZXNFeHRyYS50ZXh0Q29udGVudCA9IGZvcm1hdFJ1YihleHRyYUNvc3QpOwogICAgICAgIHJlc1RvdGFsLnRleHRDb250ZW50ID0gZm9ybWF0UnViKHRvdGFsQ29zdCk7CgogICAgICAgIGlmICghaXNTZXJ2aWNlKSB7CiAgICAgICAgICB2YXIgc2VydmljZVdvcmtDb3N0ID0gd29ya1ByaWNlT25lICogY291bnQ7CiAgICAgICAgICB2YXIgc2VydmljZVRvdGFsID0gZGlzY0Nvc3QgKyBzZXJ2aWNlV29ya0Nvc3QgKyBleHRyYUNvc3Q7CiAgICAgICAgICB2YXIgc2F2aW5nID0gc2VydmljZVRvdGFsIC0gdG90YWxDb3N0OwogICAgICAgICAgaWYgKHNhdmluZyA+IDApIHsKICAgICAgICAgICAgcmVzU2F2aW5nLnRleHRDb250ZW50ID0gJ9Ct0LrQvtC90L7QvNC40Y8g0L/QviDRgdGA0LDQstC90LXQvdC40Y4g0YEg0YHQtdGA0LLQuNGB0L7QvDogficgKyBmb3JtYXRSdWIoc2F2aW5nKSArICcg4oK9JzsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJlc1NhdmluZy50ZXh0Q29udGVudCA9ICcnOwogICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXNTYXZpbmcudGV4dENvbnRlbnQgPSAnJzsKICAgICAgICB9CiAgICAgIH0KCiAgICAgIGNhckNsYXNzU2VsZWN0LmFkZEV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsIGZ1bmN0aW9uKCkgewogICAgICAgIHVwZGF0ZVdvcmtIaW50KCk7CiAgICAgIH0pOwoKICAgICAgd29ya1ByaWNlT25lSW5wdXQuYWRkRXZlbnRMaXN0ZW5lcignaW5wdXQnLCBmdW5jdGlvbigpIHsKICAgICAgICB3b3JrUHJpY2VPbmVJbnB1dC5kYXRhc2V0LnVzZXJDaGFuZ2VkID0gJ3RydWUnOwogICAgICB9KTsKCiAgICAgIHdvcmtQcmljZU9uZUlucHV0LmFkZEV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsIGZ1bmN0aW9uKCkgewogICAgICAgIGlmICh3b3JrUHJpY2VPbmVJbnB1dC52YWx1ZS50cmltKCkgPT09ICcnKSB7CiAgICAgICAgICB3b3JrUHJpY2VPbmVJbnB1dC5kYXRhc2V0LnVzZXJDaGFuZ2VkID0gJ2ZhbHNlJzsKICAgICAgICAgIHVwZGF0ZVdvcmtIaW50KCk7CiAgICAgICAgfQogICAgICB9KTsKCiAgICAgIGF4bGVTZWxlY3QuYWRkRXZlbnRMaXN0ZW5lcignY2hhbmdlJywgZnVuY3Rpb24oKSB7CiAgICAgICAgdXBkYXRlRGlzY0NvdW50KCk7CiAgICAgIH0pOwoKICAgICAgY2FsY0J0bi5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGZ1bmN0aW9uKCkgewogICAgICAgIGNhbGN1bGF0ZSgpOwogICAgICB9KTsKCiAgICAgIHJlc2V0QnRuLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgZnVuY3Rpb24oKSB7CiAgICAgICAgY2FyQ2xhc3NTZWxlY3QudmFsdWUgPSAncHJlbWl1bSc7CiAgICAgICAgYXhsZVNlbGVjdC52YWx1ZSA9ICdib3RoJzsKICAgICAgICBkaXNjQ291bnRJbnB1dC52YWx1ZSA9IDQ7CiAgICAgICAgZGlzY1ByaWNlSW5wdXQudmFsdWUgPSA0NTAwOwogICAgICAgIHdvcmtQcmljZU9uZUlucHV0LnZhbHVlID0gYmFzZVdvcmtQcmljZXNbJ3ByZW1pdW0nXTsKICAgICAgICB3b3JrUHJpY2VPbmVJbnB1dC5kYXRhc2V0LnVzZXJDaGFuZ2VkID0gJ2ZhbHNlJzsKICAgICAgICByZXBsYWNlVHlwZVNlbGVjdC52YWx1ZSA9ICdzZXJ2aWNlJzsKICAgICAgICBvcHRQYWRzLmNoZWNrZWQgPSB0cnVlOwogICAgICAgIG9wdFNlbnNvci5jaGVja2VkID0gdHJ1ZTsKICAgICAgICBvcHRHcmVhc2UuY2hlY2tlZCA9IGZhbHNlOwogICAgICAgIG9wdENsZWFuZXIuY2hlY2tlZCA9IGZhbHNlOwogICAgICAgIGhpZGVBbGxFcnJvcnMoKTsKICAgICAgICB1cGRhdGVXb3JrSGludCgpOwogICAgICAgIHJlc1RvdGFsLnRleHRDb250ZW50ID0gJzAnOwogICAgICAgIHJlc0Rpc2NzLnRleHRDb250ZW50ID0gJzAnOwogICAgICAgIHJlc1dvcmsudGV4dENvbnRlbnQgPSAnMCc7CiAgICAgICAgcmVzRXh0cmEudGV4dENvbnRlbnQgPSAnMCc7CiAgICAgICAgcmVzU2F2aW5nLnRleHRDb250ZW50ID0gJyc7CiAgICAgIH0pOwoKICAgICAgdXBkYXRlV29ya0hpbnQoKTsKICAgICAgdXBkYXRlRGlzY0NvdW50KCk7CiAgICB9KSgpOwogIA==