Калькулятор стоимости лида
Рассчитайте стоимость привлечения одного лида (CPL) на основе ваших рекламных расходов и количества полученных заявок — быстро и наглядно.
—
Стоимость лида (CPL)
руб.
—
Стоимость клиента (CAC)
руб.
Как пользоваться калькулятором
1
Укажите общую сумму расходов на рекламу и маркетинг за выбранный период (например, 100 000 рублей).
2
Введите точное количество лидов, полученных за этот же период (например, 250 заявок).
3
При желании добавьте конверсию лида в клиента и средний доход с клиента — калькулятор покажет полную картину окупаемости.
4
Нажмите «Рассчитать» и сразу увидите стоимость лида, стоимость привлечения клиента и ROI.
Примеры расчёта
Контекстная реклама в Яндекс.Директ
Бюджет: 60 000 руб. | Лиды: 150 | Конверсия: 8% | Чек: 5 000 руб.
CPL = 400 руб. | CAC = 5 000 руб. | ROI = –20%
Таргетированная реклама ВКонтакте
Бюджет: 30 000 руб. | Лиды: 200 | Конверсия: 12% | Чек: 3 500 руб.
CPL = 150 руб. | CAC = 1 250 руб. | ROI = 180%
Контент-маркетинг (SEO + блог)
Бюджет: 45 000 руб. | Лиды: 90 | Конверсия: 15% | Чек: 12 000 руб.
CPL = 500 руб. | CAC = 3 333 руб. | ROI = 260%
Формулы расчёта
Калькулятор использует базовые формулы юнит-экономики. Результат округляется до двух знаков после запятой.
CPL = Расходы на маркетинг / Количество лидов
CAC = CPL / Конверсия × 100
ROI = ((Доход с клиента − CAC) / CAC) × 100%
CAC — стоимость привлечения одного платящего клиента. Если поля конверсии или дохода не заполнены, CAC и ROI не рассчитываются.
Пошаговое объяснение
Сначала калькулятор делит все маркетинговые расходы на число заявок — так получается чистая стоимость одного лида (CPL).
Затем, если вы задали процент конверсии, он вычисляет стоимость клиента: CPL делится на долю конверсии.
На последнем шаге программа сравнивает доход с одного клиента и затраты на его привлечение, чтобы определить рентабельность инвестиций (ROI) в процентах.
Где применяется
- Оценка эффективности рекламных каналов — сравнение CPL для Яндекс.Директа, VK Ads, Telegram Ads и др.
- Планирование бюджета — сколько нужно потратить, чтобы получить плановое число лидов.
- Расчёт юнит-экономики — воронка от лида до прибыли в одном окне.
- Анализ отделов продаж — как конверсия влияет на итоговую стоимость клиента.
- Запуск новых продуктов — быстрый онлайн расчет конверсии и допустимой цены лида.
- Подготовка отчётов — для инвесторов и руководителей.
Важные нюансы
- Калькулятор считает прямую стоимость лида без учёта зарплат сотрудников и накладных расходов.
- Конверсию указывайте в процентах от 0.01 до 100. Значение 5 означает, что 5% лидов становятся покупателями.
- Все поля должны быть заполнены положительными числами. Отрицательные значения или ноль в количестве лидов вызовут ошибку.
- Результат по ROI может быть отрицательным — это сигнал, что канал убыточен, и его нужно оптимизировать или отключить.
- Округление до двух знаков после запятой может давать небольшую погрешность при очень крупных суммах.
- Для полноценного управленческого учёта учитывайте LTV, возвраты и цикл сделки — наш калькулятор даёт быстрый оперативный срез.
Частые ошибки
- Смешивание периодов. Если бюджет взят за месяц, а лиды — за квартал, CPL будет искажён. Всегда берите данные за один период.
- Не все лиды учитываются. Звонки, чаты и формы на сайте должны суммироваться в одном месте, иначе цифра занижена.
- Игнорирование возвратов. Часть лидов может быть некачественной — делайте поправку на брак.
- Некорректная конверсия. Не используйте среднюю конверсию по рынку, подставляйте свою реальную аналитику.
- Нулевая конверсия при заполненном доходе. Калькулятор выдаст ошибку деления на ноль — проверьте введённые данные.
- Ожидание мгновенной окупаемости. В сложных B2B-продуктах сделка может закрываться месяцами, ROI нужно считать с учётом отсрочки.
Ответы на частые вопросы
Что такое CPL?
CPL (Cost Per Lead) — это стоимость одного лида, то есть сумма, которую вы платите за каждую заявку от потенциального клиента. Если потратили 50 000 рублей и получили 100 лидов, CPL = 500 рублей.
Чем CPL отличается от CAC?
CPL — цена заявки, CAC (Customer Acquisition Cost) — цена платящего клиента. CAC всегда выше или равен CPL, так как не все лиды покупают.
Можно ли использовать калькулятор для расчёта конверсии?
Да, наш инструмент работает как калькулятор конверсии: задав бюджет, лиды и чек, вы видите, как конверсия влияет на итоговую экономику.
Какой CPL считается хорошим?
Норма зависит от ниши. Для инфобизнеса CPL может быть 200–500 рублей, для сложных B2B-услуг — 1 500–5 000 рублей. Ориентируйтесь на допустимую долю маркетинговых расходов в чеке.
Чем этот калькулятор лучше других?
Мы объединили простой калькулятор конверсии онлайн и полноценный расчёт юнит-экономики: сразу видите CPL, CAC и ROI.
Нужно ли учитывать НДС?
Калькулятор оперирует суммами, которые вы вводите. Если работаете с НДС, приводите все цифры к единой базе (с НДС или без).
Источники и справочные данные
Расчёт основан на общепринятых формулах юнит-экономики и маркетинговой аналитики. Методика соответствует подходам, используемым в сервисах сквозной аналитики (Roistat, Calltouch) и рекомендациям Яндекс.Метрики. Все вычисления выполняются на стороне браузера, данные не передаются на сервер.
Стоимость лида (CPL): что это, как считать и снижать
Стоимость лида — один из главных показателей в интернет-маркетинге. Без понимания CPL невозможно оценить, насколько эффективно работают рекламные каналы, и куда лучше направить бюджет. В этой статье разберём простые формулы, реальные примеры и практические приёмы, которые помогут вам управлять затратами на привлечение клиентов.
Что такое лид и почему его стоимость важна
Лид — это потенциальный клиент, оставивший контактные данные: заполнил форму, позвонил, написал в чат. Стоимость лида показывает, сколько денег вы тратите, чтобы получить одну такую заявку. Если CPL слишком высок, бизнес может работать в минус даже при хороших продажах.
Многие предприниматели ошибочно смотрят только на количество заявок, игнорируя цену. Но 500 лидов по 200 рублей и 200 лидов по 600 рублей — это совершенно разные экономические сценарии. Калькулятор стоимости лида помогает быстро сравнить эти варианты.
Формула расчёта CPL
Базовая формула проста: CPL = Расходы на рекламу / Количество лидов. Например, за месяц вы потратили 80 000 рублей на таргет и получили 400 заявок. CPL = 200 рублей. Это и есть ваш чистый показатель.
Но для полной картины стоит копнуть глубже. Калькулятор конверсии онлайн, встроенный в наш инструмент, добавляет уровень конверсии и дохода — так вы сразу видите, окупается ли канал. Это уже полноценный калькулятор юнит экономики.
Как конверсия влияет на стоимость клиента
CPL — только вершина айсберга. Допустим, CPL = 300 рублей, а в покупку превращаются 5% лидов. Тогда стоимость клиента CAC = 300 / 0,05 = 6 000 рублей. Если средний чек ниже этой суммы, бизнес теряет деньги. Вот почему конверсия калькулятор онлайн — обязательный этап анализа.
Увеличив конверсию с 5% до 10%, вы снижаете CAC вдвое — до 3 000 рублей. Именно поэтому важно работать не только с трафиком, но и с качеством обработки заявок.
Сравнение каналов: где CPL ниже
На практике стоимость лида сильно различается по каналам:
- Поисковая реклама (Яндекс.Директ) — CPL от 300 до 1 500 руб., зависит от ниши и конкуренции.
- Таргетированная реклама ВКонтакте — CPL от 100 до 600 руб. для массовых товаров, для сложных B2B — выше 1 000 руб.
- Telegram Ads — CPL от 150 до 800 руб., качество лидов часто выше, чем в соцсетях.
- SEO и контент-маркетинг — CPL сложно оценить напрямую, но после выхода в топ стоимость заявки может стремиться к нулю.
Онлайн расчет конверсии и CPL помогает выбрать самые выгодные площадки и вовремя отключать убыточные.
Как снизить стоимость лида: 5 рабочих способов
1. Улучшите рекламные объявления. Тестируйте заголовки, изображения и офферы. Разница в CTR на 1% может изменить CPL на 20–30%.
2. Настройте ретаргетинг. Пользователи, уже знакомые с брендом, конвертируются дешевле. Отдельный бюджет на тёплую аудиторию снижает общий CPL.
3. Оптимизируйте посадочную страницу. Ускорьте загрузку, уберите лишние поля в форме, добавьте отзывы — конверсия вырастет, а CPL упадёт.
4. Сегментируйте аудиторию. Не лейте всё на широкую публику. Дробите кампании по интересам, возрасту, гео.
5. Работайте с лидогенерацией. Лид-магниты (чек-листы, вебинары, тест-драйвы) часто дают более дешёвые заявки, чем прямая продажа.
Когда CPL не главное
Гнаться только за низкой стоимостью лида опасно. Дешёвые заявки могут быть нецелевыми: люди скачивают бесплатный материал и забывают о вас. Важнее смотреть на конечную стоимость клиента и ROI. Иногда CPL 800 рублей с конверсией 20% выгоднее, чем CPL 200 рублей с конверсией 2%.
Используйте наш калькулятор конверсии, чтобы просчитать разные комбинации и найти баланс между ценой и качеством лидов.
Часто задаваемые вопросы предпринимателей
Можно ли считать CPL без CRM? Да, на старте достаточно сводки из рекламного кабинета и таблицы с заявками. Но с ростом бизнеса CRM становится необходимостью для точного учёта.
Как учитывать офлайн-лиды? Звонки и визиты в офис тоже лиды. Подключайте коллтрекинг и просите менеджеров фиксировать источник обращения.
Что делать, если CPL растёт? Проверьте сезонность, конкуренцию и выгорание аудитории. Возможно, пора обновить креативы или сменить площадку.
Заключение
Стоимость лида — базовый, но мощный показатель. Регулярный онлайн расчет конверсии и CPL помогает держать руку на пульсе и вовремя корректировать стратегию. Начните с простого: занесите свои цифры в калькулятор стоимости лида на этой странице и посмотрите, как изменение конверсии или чека повлияет на прибыль. Цифры удивят.
CiAgICAgICAgKGZ1bmN0aW9uKCkgewogICAgICAgICAgICAvLyDQrdC70LXQvNC10L3RgtGLINGE0L7RgNC80YsKICAgICAgICAgICAgY29uc3QgaW5wdXRDb3N0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2NwbC1jb3N0Jyk7CiAgICAgICAgICAgIGNvbnN0IGlucHV0TGVhZHMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnY3BsLWxlYWRzJyk7CiAgICAgICAgICAgIGNvbnN0IGlucHV0Q29udiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjcGwtY29udicpOwogICAgICAgICAgICBjb25zdCBpbnB1dFJldmVudWUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnY3BsLXJldmVudWUnKTsKCiAgICAgICAgICAgIC8vINCt0LvQtdC80LXQvdGC0Ysg0L7RiNC40LHQvtC6CiAgICAgICAgICAgIGNvbnN0IGVyckNvc3QgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZXJyLWNvc3QnKTsKICAgICAgICAgICAgY29uc3QgZXJyTGVhZHMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZXJyLWxlYWRzJyk7CiAgICAgICAgICAgIGNvbnN0IGVyckNvbnYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZXJyLWNvbnYnKTsKICAgICAgICAgICAgY29uc3QgZXJyUmV2ZW51ZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdlcnItcmV2ZW51ZScpOwoKICAgICAgICAgICAgLy8g0K3Qu9C10LzQtdC90YLRiyDRgNC10LfRg9C70YzRgtCw0YLQvtCyCiAgICAgICAgICAgIGNvbnN0IHJlc0NwbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyZXMtY3BsJyk7CiAgICAgICAgICAgIGNvbnN0IHJlc0NhYyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyZXMtY2FjJyk7CiAgICAgICAgICAgIGNvbnN0IHJlc1JvaSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyZXMtcm9pJyk7CiAgICAgICAgICAgIGNvbnN0IHJlc1Byb2ZpdCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyZXMtcHJvZml0Jyk7CgogICAgICAgICAgICAvLyDQmtC90L7Qv9C60LgKICAgICAgICAgICAgY29uc3QgYnRuQ2FsY3VsYXRlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2J0bi1jYWxjdWxhdGUnKTsKICAgICAgICAgICAgY29uc3QgYnRuUmVzZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnYnRuLXJlc2V0Jyk7CgogICAgICAgICAgICBmdW5jdGlvbiBoaWRlQWxsRXJyb3JzKCkgewogICAgICAgICAgICAgICAgW2VyckNvc3QsIGVyckxlYWRzLCBlcnJDb252LCBlcnJSZXZlbnVlXS5mb3JFYWNoKGVsID0+IGVsLmNsYXNzTGlzdC5yZW1vdmUoJ3Zpc2libGUnKSk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZ1bmN0aW9uIHJlc2V0UmVzdWx0cygpIHsKICAgICAgICAgICAgICAgIHJlc0NwbC50ZXh0Q29udGVudCA9ICfigJQnOwogICAgICAgICAgICAgICAgcmVzQ2FjLnRleHRDb250ZW50ID0gJ+KAlCc7CiAgICAgICAgICAgICAgICByZXNSb2kudGV4dENvbnRlbnQgPSAn4oCUJzsKICAgICAgICAgICAgICAgIHJlc1Byb2ZpdC50ZXh0Q29udGVudCA9ICfigJQnOwogICAgICAgICAgICB9CgogICAgICAgICAgICBmdW5jdGlvbiBmb3JtYXROdW1iZXIobnVtKSB7CiAgICAgICAgICAgICAgICBpZiAoaXNOYU4obnVtKSB8fCAhaXNGaW5pdGUobnVtKSkgcmV0dXJuICfigJQnOwogICAgICAgICAgICAgICAgcmV0dXJuIHBhcnNlRmxvYXQobnVtLnRvRml4ZWQoMikpLnRvU3RyaW5nKCk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZ1bmN0aW9uIGNhbGN1bGF0ZSgpIHsKICAgICAgICAgICAgICAgIGhpZGVBbGxFcnJvcnMoKTsKICAgICAgICAgICAgICAgIGxldCB2YWxpZCA9IHRydWU7CgogICAgICAgICAgICAgICAgLy8g0JLQsNC70LjQtNCw0YbQuNGPINC+0LHRj9C30LDRgtC10LvRjNC90YvRhSDQv9C+0LvQtdC5CiAgICAgICAgICAgICAgICBjb25zdCBjb3N0UmF3ID0gaW5wdXRDb3N0LnZhbHVlLnRyaW0oKTsKICAgICAgICAgICAgICAgIGNvbnN0IGxlYWRzUmF3ID0gaW5wdXRMZWFkcy52YWx1ZS50cmltKCk7CgogICAgICAgICAgICAgICAgY29uc3QgY29zdCA9IHBhcnNlRmxvYXQoY29zdFJhdyk7CiAgICAgICAgICAgICAgICBpZiAoY29zdFJhdyA9PT0gJycgfHwgaXNOYU4oY29zdCkgfHwgY29zdCA8PSAwKSB7CiAgICAgICAgICAgICAgICAgICAgZXJyQ29zdC5jbGFzc0xpc3QuYWRkKCd2aXNpYmxlJyk7CiAgICAgICAgICAgICAgICAgICAgdmFsaWQgPSBmYWxzZTsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBjb25zdCBsZWFkcyA9IHBhcnNlRmxvYXQobGVhZHNSYXcpOwogICAgICAgICAgICAgICAgaWYgKGxlYWRzUmF3ID09PSAnJyB8fCBpc05hTihsZWFkcykgfHwgbGVhZHMgPD0gMCB8fCAhTnVtYmVyLmlzSW50ZWdlcihsZWFkcykpIHsKICAgICAgICAgICAgICAgICAgICBlcnJMZWFkcy5jbGFzc0xpc3QuYWRkKCd2aXNpYmxlJyk7CiAgICAgICAgICAgICAgICAgICAgdmFsaWQgPSBmYWxzZTsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAvLyDQntC/0YbQuNC+0L3QsNC70YzQvdGL0LUg0L/QvtC70Y8KICAgICAgICAgICAgICAgIGxldCBjb252ID0gbnVsbDsKICAgICAgICAgICAgICAgIGNvbnN0IGNvbnZSYXcgPSBpbnB1dENvbnYudmFsdWUudHJpbSgpOwogICAgICAgICAgICAgICAgaWYgKGNvbnZSYXcgIT09ICcnKSB7CiAgICAgICAgICAgICAgICAgICAgY29udiA9IHBhcnNlRmxvYXQoY29udlJhdyk7CiAgICAgICAgICAgICAgICAgICAgaWYgKGlzTmFOKGNvbnYpIHx8IGNvbnYgPD0gMCB8fCBjb252ID4gMTAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGVyckNvbnYuY2xhc3NMaXN0LmFkZCgndmlzaWJsZScpOwogICAgICAgICAgICAgICAgICAgICAgICB2YWxpZCA9IGZhbHNlOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBsZXQgcmV2ZW51ZSA9IG51bGw7CiAgICAgICAgICAgICAgICBjb25zdCByZXZlbnVlUmF3ID0gaW5wdXRSZXZlbnVlLnZhbHVlLnRyaW0oKTsKICAgICAgICAgICAgICAgIGlmIChyZXZlbnVlUmF3ICE9PSAnJykgewogICAgICAgICAgICAgICAgICAgIHJldmVudWUgPSBwYXJzZUZsb2F0KHJldmVudWVSYXcpOwogICAgICAgICAgICAgICAgICAgIGlmIChpc05hTihyZXZlbnVlKSB8fCByZXZlbnVlIDw9IDApIHsKICAgICAgICAgICAgICAgICAgICAgICAgZXJyUmV2ZW51ZS5jbGFzc0xpc3QuYWRkKCd2aXNpYmxlJyk7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhbGlkID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGlmICghdmFsaWQpIHsKICAgICAgICAgICAgICAgICAgICByZXNldFJlc3VsdHMoKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgLy8g0KDQsNGB0YfRkdGCIENQTAogICAgICAgICAgICAgICAgY29uc3QgY3BsID0gY29zdCAvIGxlYWRzOwogICAgICAgICAgICAgICAgcmVzQ3BsLnRleHRDb250ZW50ID0gZm9ybWF0TnVtYmVyKGNwbCk7CgogICAgICAgICAgICAgICAgLy8g0KDQsNGB0YfRkdGCIENBQwogICAgICAgICAgICAgICAgaWYgKGNvbnYgIT09IG51bGwpIHsKICAgICAgICAgICAgICAgICAgICBjb25zdCBjb252RGVjaW1hbCA9IGNvbnYgLyAxMDA7CiAgICAgICAgICAgICAgICAgICAgaWYgKGNvbnZEZWNpbWFsID09PSAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJlc0NhYy50ZXh0Q29udGVudCA9ICfigJQnOwogICAgICAgICAgICAgICAgICAgICAgICByZXNSb2kudGV4dENvbnRlbnQgPSAn4oCUJzsKICAgICAgICAgICAgICAgICAgICAgICAgcmVzUHJvZml0LnRleHRDb250ZW50ID0gJ+KAlCc7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgY29uc3QgY2FjID0gY3BsIC8gY29udkRlY2ltYWw7CiAgICAgICAgICAgICAgICAgICAgcmVzQ2FjLnRleHRDb250ZW50ID0gZm9ybWF0TnVtYmVyKGNhYyk7CgogICAgICAgICAgICAgICAgICAgIC8vINCg0LDRgdGH0ZHRgiBST0kg0Lgg0L/RgNC40LHRi9C70LgKICAgICAgICAgICAgICAgICAgICBpZiAocmV2ZW51ZSAhPT0gbnVsbCkgewogICAgICAgICAgICAgICAgICAgICAgICBjb25zdCByb2kgPSAoKHJldmVudWUgLSBjYWMpIC8gY2FjKSAqIDEwMDsKICAgICAgICAgICAgICAgICAgICAgICAgcmVzUm9pLnRleHRDb250ZW50ID0gZm9ybWF0TnVtYmVyKHJvaSk7CiAgICAgICAgICAgICAgICAgICAgICAgIC8vINCf0YDQuNCx0YvQu9GMOiAo0LTQvtGF0L7QtCAtIENBQykgKiDQutC+0LvQuNGH0LXRgdGC0LLQviDQutC70LjQtdC90YLQvtCyCiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNsaWVudHMgPSBsZWFkcyAqIGNvbnZEZWNpbWFsOwogICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB0b3RhbFByb2ZpdCA9IChyZXZlbnVlIC0gY2FjKSAqIGNsaWVudHM7CiAgICAgICAgICAgICAgICAgICAgICAgIHJlc1Byb2ZpdC50ZXh0Q29udGVudCA9IGZvcm1hdE51bWJlcih0b3RhbFByb2ZpdCk7CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmVzUm9pLnRleHRDb250ZW50ID0gJ+KAlCc7CiAgICAgICAgICAgICAgICAgICAgICAgIHJlc1Byb2ZpdC50ZXh0Q29udGVudCA9ICfigJQnOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgcmVzQ2FjLnRleHRDb250ZW50ID0gJ+KAlCc7CiAgICAgICAgICAgICAgICAgICAgcmVzUm9pLnRleHRDb250ZW50ID0gJ+KAlCc7CiAgICAgICAgICAgICAgICAgICAgcmVzUHJvZml0LnRleHRDb250ZW50ID0gJ+KAlCc7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZ1bmN0aW9uIHJlc2V0Rm9ybSgpIHsKICAgICAgICAgICAgICAgIGlucHV0Q29zdC52YWx1ZSA9ICcnOwogICAgICAgICAgICAgICAgaW5wdXRMZWFkcy52YWx1ZSA9ICcnOwogICAgICAgICAgICAgICAgaW5wdXRDb252LnZhbHVlID0gJyc7CiAgICAgICAgICAgICAgICBpbnB1dFJldmVudWUudmFsdWUgPSAnJzsKICAgICAgICAgICAgICAgIGhpZGVBbGxFcnJvcnMoKTsKICAgICAgICAgICAgICAgIHJlc2V0UmVzdWx0cygpOwogICAgICAgICAgICB9CgogICAgICAgICAgICBidG5DYWxjdWxhdGUuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBjYWxjdWxhdGUpOwogICAgICAgICAgICBidG5SZXNldC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIHJlc2V0Rm9ybSk7CiAgICAgICAgfSkoKTsKICAgIA==