Калькулятор расстояния между капельницами
Рассчитайте оптимальное расстояние между капельницами в ряду, общий расход воды и необходимую длину капельной ленты для вашего участка.
—
Расстояние между капельницами
см
—
Количество капельниц
шт
—
Расход за сезон (20 нед)
л
—
Длина капельной ленты (запас 10%)
м
—
Рекомендуемое расстояние для выбранной почвы
см
Как пользоваться калькулятором
1
Измерьте длину грядки в метрах и посчитайте, сколько растений вы планируете высадить в один ряд. Например: грядка 8 метров, 30 кустов томатов.
2
Укажите отступ от края грядки (обычно 15–25 см), расход одной капельницы (типично 2–4 л/ч), длительность и частоту полива.
3
Выберите тип почвы — это повлияет на рекомендацию по расстоянию. Нажмите «Рассчитать».
4
Изучите результат. Основной показатель — расстояние между капельницами в сантиметрах. Дополнительно вы увидите общий расход воды и длину ленты с запасом 10%.
Примеры расчёта
Теплица с томатами, грядка 6 метров
Длина грядки — 6 м, 20 растений, отступ — 20 см, капельница 2 л/ч, полив 1,5 ч × 3 дня/нед, суглинистая почва.
Результат: расстояние ≈ 29,5 см между капельницами, 20 капельниц, общий расход ≈ 40 л/ч, за сезон ≈ 3600 л, лента ≈ 6,6 м.
Огуречная грядка в открытом грунте, 10 метров
Длина грядки — 10 м, 40 растений, отступ — 25 см, капельница 3 л/ч, полив 2 ч × 4 дня/нед, песчаная почва.
Результат: расстояние ≈ 24,4 см, 40 капельниц, общий расход ≈ 120 л/ч, за сезон ≈ 19200 л, лента ≈ 11 м. На песчаной почве рекомендуется уменьшать расстояние из-за быстрого ухода воды.
Ягодные кустарники, ряд 4 метра
Длина ряда — 4 м, 8 кустов смородины, отступ — 30 см, капельница 4 л/ч, полив 1 ч × 2 дня/нед, глинистая почва.
Результат: расстояние ≈ 48,6 см, 8 капельниц, общий расход ≈ 32 л/ч, за сезон ≈ 1280 л, лента ≈ 4,4 м. На глинистой почве расстояние можно увеличить — вода распространяется шире.
Нормы и ориентиры
Рекомендуемые расстояния между капельницами зависят от типа почвы и культуры. Ниже приведены ориентировочные диапазоны для типовых ситуаций.
| Тип почвы | Рекомендуемое расстояние | Особенность |
| Песчаная | 20–30 см | Вода уходит быстро, нужно располагать капельницы чаще |
| Супесчаная | 25–35 см | Умеренная скорость впитывания |
| Суглинистая | 30–45 см | Оптимальное удержание влаги, зона увлажнения шире |
| Глинистая | 40–60 см | Вода распространяется медленно, но широко — можно реже |
Расход капельниц обычно составляет 1–4 л/ч для точечных и 1–2 л/ч на 30 см для ленточных. Точные характеристики всегда указаны на упаковке капельной ленты или в паспорте капельницы.
Для разных культур ориентировочные расстояния: томаты и перцы — 30–50 см, огурцы — 25–40 см, клубника — 20–30 см, ягодные кустарники — 50–80 см, плодовые деревья — 100–150 см (обычно 2–4 капельницы на дерево).
Что влияет на результат
- Тип почвы. На песчаных почвах вода уходит вертикально вниз, зона бокового увлажнения мала — капельницы ставят чаще. На глинистых — зона растекания шире, расстояние можно увеличить.
- Культура и сорт. Растения с мощной корневой системой (томаты, баклажаны) требуют больше воды и могут размещаться реже. Огурцы и зелень — чаще.
- Климат и погода. В жаркую и сухую погоду поливают чаще и обильнее. В прохладную — реже. В ветреных регионах испарение выше.
- Мульчирование. Мульча (солома, сено, агроволокно) существенно снижает испарение — расход воды можно уменьшить на 20–40%.
- Фаза роста. Молодые растения с небольшой корневой системой поливают чаще, но меньшими объёмами. Взрослые — реже, но обильнее.
- Рельеф участка. На склонах вода может стекать — требуется корректировка расхода и расстояния, иногда установка компенсированных капельниц.
Важные нюансы
- При количестве растений 1 расчёт расстояния не производится — одна капельница устанавливается непосредственно у растения.
- Отступ от края грядки не должен превышать половину длины грядки. Обычно достаточно 15–30 см.
- Капельная лента бывает с разным шагом капельниц: 10, 20, 30, 40, 50 см. Если ваш расчёт дал промежуточное значение — выбирайте ленту с ближайшим меньшим шагом, чтобы не обделить растения водой.
- Запас ленты 10% покрывает подводку к магистрали и возможные изгибы. Для сложных конфигураций грядок заложите 15–20%.
- Всегда проверяйте реальный расход капельниц перед массовой установкой — напор воды и длина магистрали могут влиять на фактический расход.
- Для систем капельного полива с удобрительным узлом (фертигация) обязательно сверяйте дозировку удобрений с инструкцией производителя и не превышайте рекомендованные концентрации.
Частые ошибки
- Игнорирование типа почвы. Расстановка капельниц «на глаз» без учёта почвы приводит к переувлажнению или пересыханию корневой зоны.
- Отсутствие запаса ленты. Покупка ленты «метр в метр» без запаса — самая частая причина нехватки материала при монтаже.
- Слишком редкая установка капельниц. Расстояние больше 60 см на лёгких почвах создаёт сухие зоны между растениями.
- Превышение длины одной линии. Для ленточных систем линия длиннее 50–70 метров может испытывать падение давления — крайние капельницы дают меньше воды.
- Полив в жару по листу. Капельный полив подаёт воду под корень. При поливе днём в жару часть воды испаряется, не достигнув корней. Лучшее время — утро или вечер.
- Пренебрежение фильтрацией. Без фильтра капельницы быстро забиваются — расход воды падает, растения недополучают влагу.
Ответы на частые вопросы
Как измерить реальный расход капельницы?
Возьмите мерную ёмкость, подставьте под капельницу на 1 минуту. Замерьте объём в миллилитрах, умножьте на 60 и разделите на 1000 — получите расход в л/ч. Например, 33 мл за минуту = 33 × 60 / 1000 ≈ 2 л/ч.
Можно ли использовать одну капельную ленту на два ряда растений?
Да, если расстояние между рядами не превышает 30–40 см, а лента укладывается посередине. Но лучше прокладывать отдельную линию на каждый ряд — так полив равномернее.
Какой шаг капельниц выбрать, если расчёт дал 27 см?
Выбирайте ленту с шагом 20 см — лучше чуть чаще, чем реже. Растение получит достаточно воды, а небольшой перерасход компенсируется здоровьем посадок.
Нужно ли менять расстояние для разных сортов одной культуры?
Да. Высокорослые сорта томатов сажают реже (40–50 см), низкорослые — чаще (25–35 см). Соответственно и капельницы размещают под каждое растение с тем же шагом.
Сколько капельниц нужно на одно дерево?
Для молодых деревьев — 1–2 капельницы на расстоянии 30–50 см от ствола. Для взрослых — 3–5 капельниц по окружности кроны. Расход каждой — 4–8 л/ч.
Влияет ли давление воды на расстояние между капельницами?
На расстояние — нет. Но на расход — да. При низком давлении капельницы выдают меньше воды. Используйте компенсированные по давлению капельницы, если длина линии превышает 30 метров или участок с перепадом высот.
Источники и справочные данные
- Агрономические справочные нормы полива овощных, плодовых и декоративных культур для различных типов почв.
- Инструкции производителей капельной ленты и точечных капельниц (типовые значения расхода: 1–4 л/ч).
- Рекомендации по проектированию систем капельного орошения для приусадебных участков и теплиц.
- Практические нормы расхода воды и схемы посадки, обобщённые по данным садоводов и огородников.
- Окончательные параметры полива всегда корректируйте под конкретные условия: микроклимат участка, сорт растений, фактический напор воды в системе.
Калькулятор расстояния между капельницами помогает спланировать систему капельного полива для грядок, теплиц и садовых участков любой площади. Достаточно ввести длину ряда, количество растений и тип почвы — и вы получите точное расстояние между капельницами, общий расход воды за час, день, неделю и сезон, а также необходимую длину капельной ленты с запасом. Инструмент учитывает отступы от краёв и рекомендует оптимальный шаг в зависимости от песчаной, супесчаной, суглинистой или глинистой почвы. Расчёт основан на агрономических нормах и практическом опыте садоводов, что делает его полезным как для начинающих, так и для опытных огородников.
CihmdW5jdGlvbigpewogIHZhciBiZWRMZW5ndGhJbnB1dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdiZWQtbGVuZ3RoJyk7CiAgdmFyIHBsYW50Q291bnRJbnB1dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdwbGFudC1jb3VudCcpOwogIHZhciBlZGdlT2Zmc2V0SW5wdXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZWRnZS1vZmZzZXQnKTsKICB2YXIgZHJpcHBlckZsb3dJbnB1dCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkcmlwcGVyLWZsb3cnKTsKICB2YXIgd2F0ZXJIb3Vyc0lucHV0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3dhdGVyLWhvdXJzJyk7CiAgdmFyIHdhdGVyRGF5c0lucHV0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3dhdGVyLWRheXMnKTsKICB2YXIgc29pbFR5cGVTZWxlY3QgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnc29pbC10eXBlJyk7CgogIHZhciBlcnJvckJlZExlbmd0aCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdlcnJvci1iZWQtbGVuZ3RoJyk7CiAgdmFyIGVycm9yUGxhbnRDb3VudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdlcnJvci1wbGFudC1jb3VudCcpOwogIHZhciBlcnJvckVkZ2VPZmZzZXQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZXJyb3ItZWRnZS1vZmZzZXQnKTsKICB2YXIgZXJyb3JEcmlwcGVyRmxvdyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdlcnJvci1kcmlwcGVyLWZsb3cnKTsKICB2YXIgZXJyb3JXYXRlckhvdXJzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2Vycm9yLXdhdGVyLWhvdXJzJyk7CiAgdmFyIGVycm9yV2F0ZXJEYXlzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2Vycm9yLXdhdGVyLWRheXMnKTsKCiAgdmFyIHJlc3VsdFNwYWNpbmcgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVzdWx0LXNwYWNpbmcnKTsKICB2YXIgcmVzdWx0RHJpcHBlckNvdW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jlc3VsdC1kcmlwcGVyLWNvdW50Jyk7CiAgdmFyIHJlc3VsdEZsb3dIb3VyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jlc3VsdC1mbG93LWhvdXInKTsKICB2YXIgcmVzdWx0Rmxvd0RheSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdyZXN1bHQtZmxvdy1kYXknKTsKICB2YXIgcmVzdWx0Rmxvd1dlZWsgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVzdWx0LWZsb3ctd2VlaycpOwogIHZhciByZXN1bHRGbG93U2Vhc29uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jlc3VsdC1mbG93LXNlYXNvbicpOwogIHZhciByZXN1bHRUYXBlTGVuZ3RoID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jlc3VsdC10YXBlLWxlbmd0aCcpOwogIHZhciByZXN1bHRSZWNvbW1lbmRTcGFjaW5nID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jlc3VsdC1yZWNvbW1lbmQtc3BhY2luZycpOwoKICB2YXIgY2FsY3VsYXRlQnRuID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2NhbGN1bGF0ZS1idG4nKTsKICB2YXIgcmVzZXRCdG4gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncmVzZXQtYnRuJyk7CgogIHZhciBhbGxFcnJvcnMgPSBbZXJyb3JCZWRMZW5ndGgsIGVycm9yUGxhbnRDb3VudCwgZXJyb3JFZGdlT2Zmc2V0LCBlcnJvckRyaXBwZXJGbG93LCBlcnJvcldhdGVySG91cnMsIGVycm9yV2F0ZXJEYXlzXTsKCiAgZnVuY3Rpb24gaGlkZUFsbEVycm9ycygpIHsKICAgIGFsbEVycm9ycy5mb3JFYWNoKGZ1bmN0aW9uKGVsKSB7CiAgICAgIGVsLnRleHRDb250ZW50ID0gJyc7CiAgICAgIGVsLmNsYXNzTGlzdC5yZW1vdmUoJ25uLWdlbi12aXNpYmxlJyk7CiAgICB9KTsKICB9CgogIGZ1bmN0aW9uIHNob3dFcnJvcihlbCwgbXNnKSB7CiAgICBlbC50ZXh0Q29udGVudCA9IG1zZzsKICAgIGVsLmNsYXNzTGlzdC5hZGQoJ25uLWdlbi12aXNpYmxlJyk7CiAgfQoKICBmdW5jdGlvbiBnZXRSZWNvbW1lbmRTcGFjaW5nKHNvaWxUeXBlKSB7CiAgICBzd2l0Y2ggKHNvaWxUeXBlKSB7CiAgICAgIGNhc2UgJ3NhbmR5JzogcmV0dXJuICcyMOKAkzMwJzsKICAgICAgY2FzZSAnbG9hbXktc2FuZCc6IHJldHVybiAnMjXigJMzNSc7CiAgICAgIGNhc2UgJ2xvYW0nOiByZXR1cm4gJzMw4oCTNDUnOwogICAgICBjYXNlICdjbGF5JzogcmV0dXJuICc0MOKAkzYwJzsKICAgICAgZGVmYXVsdDogcmV0dXJuICczMOKAkzQ1JzsKICAgIH0KICB9CgogIGZ1bmN0aW9uIHJlc2V0UmVzdWx0cygpIHsKICAgIHZhciBkYXNoID0gJ+KAlCc7CiAgICByZXN1bHRTcGFjaW5nLnRleHRDb250ZW50ID0gZGFzaDsKICAgIHJlc3VsdERyaXBwZXJDb3VudC50ZXh0Q29udGVudCA9IGRhc2g7CiAgICByZXN1bHRGbG93SG91ci50ZXh0Q29udGVudCA9IGRhc2g7CiAgICByZXN1bHRGbG93RGF5LnRleHRDb250ZW50ID0gZGFzaDsKICAgIHJlc3VsdEZsb3dXZWVrLnRleHRDb250ZW50ID0gZGFzaDsKICAgIHJlc3VsdEZsb3dTZWFzb24udGV4dENvbnRlbnQgPSBkYXNoOwogICAgcmVzdWx0VGFwZUxlbmd0aC50ZXh0Q29udGVudCA9IGRhc2g7CiAgICByZXN1bHRSZWNvbW1lbmRTcGFjaW5nLnRleHRDb250ZW50ID0gZGFzaDsKICB9CgogIGZ1bmN0aW9uIGNhbGN1bGF0ZSgpIHsKICAgIGhpZGVBbGxFcnJvcnMoKTsKICAgIHJlc2V0UmVzdWx0cygpOwoKICAgIHZhciBiZWRMZW5ndGhSYXcgPSBiZWRMZW5ndGhJbnB1dC52YWx1ZS50cmltKCk7CiAgICB2YXIgcGxhbnRDb3VudFJhdyA9IHBsYW50Q291bnRJbnB1dC52YWx1ZS50cmltKCk7CiAgICB2YXIgZWRnZU9mZnNldFJhdyA9IGVkZ2VPZmZzZXRJbnB1dC52YWx1ZS50cmltKCk7CiAgICB2YXIgZHJpcHBlckZsb3dSYXcgPSBkcmlwcGVyRmxvd0lucHV0LnZhbHVlLnRyaW0oKTsKICAgIHZhciB3YXRlckhvdXJzUmF3ID0gd2F0ZXJIb3Vyc0lucHV0LnZhbHVlLnRyaW0oKTsKICAgIHZhciB3YXRlckRheXNSYXcgPSB3YXRlckRheXNJbnB1dC52YWx1ZS50cmltKCk7CiAgICB2YXIgc29pbFR5cGUgPSBzb2lsVHlwZVNlbGVjdC52YWx1ZTsKCiAgICB2YXIgaGFzRXJyb3IgPSBmYWxzZTsKCiAgICB2YXIgYmVkTGVuZ3RoID0gcGFyc2VGbG9hdChiZWRMZW5ndGhSYXcpOwogICAgaWYgKGJlZExlbmd0aFJhdyA9PT0gJycgfHwgaXNOYU4oYmVkTGVuZ3RoKSB8fCBiZWRMZW5ndGggPD0gMCkgewogICAgICBzaG93RXJyb3IoZXJyb3JCZWRMZW5ndGgsICfQktCy0LXQtNC40YLQtSDQv9C+0LvQvtC20LjRgtC10LvRjNC90YPRjiDQtNC70LjQvdGDINCz0YDRj9C00LrQuC4nKTsKICAgICAgaGFzRXJyb3IgPSB0cnVlOwogICAgfQoKICAgIHZhciBwbGFudENvdW50ID0gcGFyc2VJbnQocGxhbnRDb3VudFJhdywgMTApOwogICAgaWYgKHBsYW50Q291bnRSYXcgPT09ICcnIHx8IGlzTmFOKHBsYW50Q291bnQpIHx8IHBsYW50Q291bnQgPCAxKSB7CiAgICAgIHNob3dFcnJvcihlcnJvclBsYW50Q291bnQsICfQktCy0LXQtNC40YLQtSDQutC+0LvQuNGH0LXRgdGC0LLQviDRgNCw0YHRgtC10L3QuNC5ICjQvNC40L3QuNC80YPQvCAxKS4nKTsKICAgICAgaGFzRXJyb3IgPSB0cnVlOwogICAgfSBlbHNlIGlmICghTnVtYmVyLmlzSW50ZWdlcihwbGFudENvdW50KSkgewogICAgICBzaG93RXJyb3IoZXJyb3JQbGFudENvdW50LCAn0JrQvtC70LjRh9C10YHRgtCy0L4g0YDQsNGB0YLQtdC90LjQuSDQtNC+0LvQttC90L4g0LHRi9GC0Ywg0YbQtdC70YvQvCDRh9C40YHQu9C+0LwuJyk7CiAgICAgIGhhc0Vycm9yID0gdHJ1ZTsKICAgIH0KCiAgICB2YXIgZWRnZU9mZnNldCA9IHBhcnNlRmxvYXQoZWRnZU9mZnNldFJhdyk7CiAgICBpZiAoZWRnZU9mZnNldFJhdyA9PT0gJycgfHwgaXNOYU4oZWRnZU9mZnNldCkgfHwgZWRnZU9mZnNldCA8IDApIHsKICAgICAgc2hvd0Vycm9yKGVycm9yRWRnZU9mZnNldCwgJ9CS0LLQtdC00LjRgtC1INC90LXQvtGC0YDQuNGG0LDRgtC10LvRjNC90YvQuSDQvtGC0YHRgtGD0L8uJyk7CiAgICAgIGhhc0Vycm9yID0gdHJ1ZTsKICAgIH0KCiAgICB2YXIgZHJpcHBlckZsb3cgPSBwYXJzZUZsb2F0KGRyaXBwZXJGbG93UmF3KTsKICAgIGlmIChkcmlwcGVyRmxvd1JhdyA9PT0gJycgfHwgaXNOYU4oZHJpcHBlckZsb3cpIHx8IGRyaXBwZXJGbG93IDw9IDApIHsKICAgICAgc2hvd0Vycm9yKGVycm9yRHJpcHBlckZsb3csICfQktCy0LXQtNC40YLQtSDQv9C+0LvQvtC20LjRgtC10LvRjNC90YvQuSDRgNCw0YHRhdC+0LQg0LrQsNC/0LXQu9GM0L3QuNGG0YsuJyk7CiAgICAgIGhhc0Vycm9yID0gdHJ1ZTsKICAgIH0KCiAgICB2YXIgd2F0ZXJIb3VycyA9IHBhcnNlRmxvYXQod2F0ZXJIb3Vyc1Jhdyk7CiAgICBpZiAod2F0ZXJIb3Vyc1JhdyA9PT0gJycgfHwgaXNOYU4od2F0ZXJIb3VycykgfHwgd2F0ZXJIb3VycyA8PSAwKSB7CiAgICAgIHNob3dFcnJvcihlcnJvcldhdGVySG91cnMsICfQktCy0LXQtNC40YLQtSDQv9C+0LvQvtC20LjRgtC10LvRjNC90YPRjiDQtNC70LjRgtC10LvRjNC90L7RgdGC0Ywg0L/QvtC70LjQstCwLicpOwogICAgICBoYXNFcnJvciA9IHRydWU7CiAgICB9CgogICAgdmFyIHdhdGVyRGF5cyA9IHBhcnNlSW50KHdhdGVyRGF5c1JhdywgMTApOwogICAgaWYgKHdhdGVyRGF5c1JhdyA9PT0gJycgfHwgaXNOYU4od2F0ZXJEYXlzKSB8fCB3YXRlckRheXMgPCAxIHx8IHdhdGVyRGF5cyA+IDcpIHsKICAgICAgc2hvd0Vycm9yKGVycm9yV2F0ZXJEYXlzLCAn0JLQstC10LTQuNGC0LUg0YfQsNGB0YLQvtGC0YMg0L/QvtC70LjQstCwINC+0YIgMSDQtNC+IDcg0LTQvdC10Lkg0LIg0L3QtdC00LXQu9GOLicpOwogICAgICBoYXNFcnJvciA9IHRydWU7CiAgICB9CgogICAgaWYgKCFoYXNFcnJvciAmJiAhaXNOYU4oYmVkTGVuZ3RoKSAmJiAhaXNOYU4oZWRnZU9mZnNldCkgJiYgYmVkTGVuZ3RoID4gMCAmJiBlZGdlT2Zmc2V0ID49IDApIHsKICAgICAgdmFyIGJlZExlbmd0aENtID0gYmVkTGVuZ3RoICogMTAwOwogICAgICBpZiAoZWRnZU9mZnNldCAqIDIgPj0gYmVkTGVuZ3RoQ20pIHsKICAgICAgICBzaG93RXJyb3IoZXJyb3JFZGdlT2Zmc2V0LCAn0J7RgtGB0YLRg9C/INC90LUg0LzQvtC20LXRgiDQsdGL0YLRjCDQsdC+0LvRjNGI0LUg0LjQu9C4INGA0LDQstC10L0g0L/QvtC70L7QstC40L3QtSDQtNC70LjQvdGLINCz0YDRj9C00LrQuC4nKTsKICAgICAgICBoYXNFcnJvciA9IHRydWU7CiAgICAgIH0KICAgIH0KCiAgICBpZiAoaGFzRXJyb3IpIHsKICAgICAgcmV0dXJuOwogICAgfQoKICAgIHZhciBzcGFjaW5nQ20gPSBudWxsOwogICAgaWYgKHBsYW50Q291bnQgPiAxKSB7CiAgICAgIHZhciB3b3JraW5nTGVuZ3RoQ20gPSBiZWRMZW5ndGggKiAxMDAgLSAyICogZWRnZU9mZnNldDsKICAgICAgc3BhY2luZ0NtID0gd29ya2luZ0xlbmd0aENtIC8gKHBsYW50Q291bnQgLSAxKTsKICAgICAgaWYgKHNwYWNpbmdDbSA8IDApIHsKICAgICAgICBzcGFjaW5nQ20gPSAwOwogICAgICB9CiAgICB9CgogICAgdmFyIGRyaXBwZXJDb3VudCA9IHBsYW50Q291bnQ7CiAgICB2YXIgdG90YWxGbG93UGVySG91ciA9IGRyaXBwZXJDb3VudCAqIGRyaXBwZXJGbG93OwogICAgdmFyIGZsb3dQZXJEYXkgPSB0b3RhbEZsb3dQZXJIb3VyICogd2F0ZXJIb3VyczsKICAgIHZhciBmbG93UGVyV2VlayA9IGZsb3dQZXJEYXkgKiB3YXRlckRheXM7CiAgICB2YXIgd2Vla3NJblNlYXNvbiA9IDIwOwogICAgdmFyIGZsb3dQZXJTZWFzb24gPSBmbG93UGVyV2VlayAqIHdlZWtzSW5TZWFzb247CiAgICB2YXIgdGFwZUxlbmd0aCA9IGJlZExlbmd0aCAqIDEuMTsKICAgIHZhciByZWNvbW1lbmRTcGFjaW5nID0gZ2V0UmVjb21tZW5kU3BhY2luZyhzb2lsVHlwZSk7CgogICAgaWYgKHNwYWNpbmdDbSAhPT0gbnVsbCAmJiBzcGFjaW5nQ20gPj0gMCkgewogICAgICByZXN1bHRTcGFjaW5nLnRleHRDb250ZW50ID0gc3BhY2luZ0NtLnRvRml4ZWQoMSk7CiAgICB9IGVsc2UgewogICAgICByZXN1bHRTcGFjaW5nLnRleHRDb250ZW50ID0gJ+KAlCAoMSDRgNCw0YHRgtC10L3QuNC1KSc7CiAgICB9CiAgICByZXN1bHREcmlwcGVyQ291bnQudGV4dENvbnRlbnQgPSBkcmlwcGVyQ291bnQ7CiAgICByZXN1bHRGbG93SG91ci50ZXh0Q29udGVudCA9IHRvdGFsRmxvd1BlckhvdXIudG9GaXhlZCgxKTsKICAgIHJlc3VsdEZsb3dEYXkudGV4dENvbnRlbnQgPSBmbG93UGVyRGF5LnRvRml4ZWQoMSk7CiAgICByZXN1bHRGbG93V2Vlay50ZXh0Q29udGVudCA9IGZsb3dQZXJXZWVrLnRvRml4ZWQoMSk7CiAgICByZXN1bHRGbG93U2Vhc29uLnRleHRDb250ZW50ID0gZmxvd1BlclNlYXNvbi50b0ZpeGVkKDApOwogICAgcmVzdWx0VGFwZUxlbmd0aC50ZXh0Q29udGVudCA9IHRhcGVMZW5ndGgudG9GaXhlZCgxKTsKICAgIHJlc3VsdFJlY29tbWVuZFNwYWNpbmcudGV4dENvbnRlbnQgPSByZWNvbW1lbmRTcGFjaW5nOwogIH0KCiAgZnVuY3Rpb24gcmVzZXRGb3JtKCkgewogICAgYmVkTGVuZ3RoSW5wdXQudmFsdWUgPSAnJzsKICAgIHBsYW50Q291bnRJbnB1dC52YWx1ZSA9ICcnOwogICAgZWRnZU9mZnNldElucHV0LnZhbHVlID0gJzIwJzsKICAgIGRyaXBwZXJGbG93SW5wdXQudmFsdWUgPSAnMic7CiAgICB3YXRlckhvdXJzSW5wdXQudmFsdWUgPSAnMS41JzsKICAgIHdhdGVyRGF5c0lucHV0LnZhbHVlID0gJzMnOwogICAgc29pbFR5cGVTZWxlY3QudmFsdWUgPSAnbG9hbSc7CiAgICBoaWRlQWxsRXJyb3JzKCk7CiAgICByZXNldFJlc3VsdHMoKTsKICB9CgogIGNhbGN1bGF0ZUJ0bi5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGNhbGN1bGF0ZSk7CiAgcmVzZXRCdG4uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCByZXNldEZvcm0pOwoKICBzb2lsVHlwZVNlbGVjdC5hZGRFdmVudExpc3RlbmVyKCdjaGFuZ2UnLCBmdW5jdGlvbigpIHsKICAgIGlmIChyZXN1bHRSZWNvbW1lbmRTcGFjaW5nLnRleHRDb250ZW50ICE9PSAn4oCUJykgewogICAgICB2YXIgc29pbFR5cGUgPSBzb2lsVHlwZVNlbGVjdC52YWx1ZTsKICAgICAgcmVzdWx0UmVjb21tZW5kU3BhY2luZy50ZXh0Q29udGVudCA9IGdldFJlY29tbWVuZFNwYWNpbmcoc29pbFR5cGUpOwogICAgfQogIH0pOwp9KSgpOwo=