31,648 script coding Иллюстрации и векторы доступно RF.

Эта векторная иллюстрация представляет голову робота с тегами кода на лице, что символизирует программирование, написание кода или разработку программного обеспечения для искусственного интеллекта. Она передает концепцию создания, разработки или внедрения алгоритмов и робототехнических функций с помощью кода и языков программирования.
Эта векторная иллюстрация представляет голову робота с тегами кода на лице, что символизирует программирование, написание кода или разработку программного обеспечения для искусственного интеллекта. Она передает концепцию создания, разработки или внедрения алгоритмов и робототехнических функций с помощью кода и языков программирования.
Системная плата шрифт печатная плата psb технология тип компьютера электронный алфавит. Футуристические абк буквы цифры и символы кибергарнитура высоких технологий цифровых и инновационных персонажей.
Системная плата шрифт печатная плата psb технология тип компьютера электронный алфавит. Футуристические абк буквы цифры и символы кибергарнитура высоких технологий цифровых и инновационных персонажей.
Эта чистая векторная иллюстрация представляет собой прямоугольный интерфейс с горизонтальными линиями, символизирующими данные или текст. В нижней части по центру расположена стрелка, указывающая вверх, что обозначает действие загрузки или передачи. Дизайн выполнен в мягкой цветовой гамме с темными контурами, что создает современную и профессиональную эстетику, подходящую для сферы технологий.
Эта чистая векторная иллюстрация представляет собой прямоугольный интерфейс с горизонтальными линиями, символизирующими данные или текст. В нижней части по центру расположена стрелка, указывающая вверх, что обозначает действие загрузки или передачи. Дизайн выполнен в мягкой цветовой гамме с темными контурами, что создает современную и профессиональную эстетику, подходящую для сферы технологий.
Разработчик исправляет программную ошибку в системе корзины покупок онлайн-магазина для баннера целевой страницы. Программирование, отладка, электронная коммерция, техническая поддержка, веб-разработка, цифровое обслуживание.
Разработчик исправляет программную ошибку в системе корзины покупок онлайн-магазина для баннера целевой страницы. Программирование, отладка, электронная коммерция, техническая поддержка, веб-разработка, цифровое обслуживание.
Крупный план цветного кода компьютерной программы на экране, представляющий разработку программного обеспечения или программирование.
Крупный план цветного кода компьютерной программы на экране, представляющий разработку программного обеспечения или программирование.
Набор векторных иллюстраций с символами программирования, иконками атомов и портфелем для баннера веб-страницы. Программирование, наука, бизнес, технологии, образование, цифровое развитие. Программная инженерия.
Набор векторных иллюстраций с символами программирования, иконками атомов и портфелем для баннера веб-страницы. Программирование, наука, бизнес, технологии, образование, цифровое развитие. Программная инженерия.
Высококонтрастная динамическая графика с двоичным кодом, текущим по эффектному градиентному фону.
Высококонтрастная динамическая графика с двоичным кодом, текущим по эффектному градиентному фону.
Динамичная графика в глубоких синих тонах с белыми и серыми двоичными кодами, плавно движущимися на насыщенном темно-синем фоне.
Динамичная графика в глубоких синих тонах с белыми и серыми двоичными кодами, плавно движущимися на насыщенном темно-синем фоне.
Мужчина указывает на программную ошибку рядом с иконкой шестеренки для баннера целевой страницы веб-сайта. Разработка ПО, техническая поддержка, устранение неполадок, отладка, программирование, цифровое обслуживание. Разработчик.
Мужчина указывает на программную ошибку рядом с иконкой шестеренки для баннера целевой страницы веб-сайта. Разработка ПО, техническая поддержка, устранение неполадок, отладка, программирование, цифровое обслуживание. Разработчик.
Современный экран ноутбука отображает строки кода на деревянном столе. Также видны настольная лампа и компьютерный монитор, создающие рабочую атмосферу.
Современный экран ноутбука отображает строки кода на деревянном столе. Также видны настольная лампа и компьютерный монитор, создающие рабочую атмосферу.
Яркая 3D-визуализация демонстрирует пару смелых красных фигурных скобок, также известных как вьющиеся скобки, выделяющихся на чистом светло-сером фоне. Гладкая глянцевая отделка символов создает современный и эффектный визуальный образ. Этот культовый знак препинания широко известен в языках программирования, математике и логике для определения блоков кода.
Яркая 3D-визуализация демонстрирует пару смелых красных фигурных скобок, также известных как вьющиеся скобки, выделяющихся на чистом светло-сером фоне. Гладкая глянцевая отделка символов создает современный и эффектный визуальный образ. Этот культовый знак препинания широко известен в языках программирования, математике и логике для определения блоков кода.
Набор баннеров для целевых страниц веб-разработки, HTML-код, валютные монеты и диаграммы данных. Программирование, финансы, цифровой маркетинг, рост бизнеса, разработка программного обеспечения, инвестиции. Интерфейс кодирования.
Набор баннеров для целевых страниц веб-разработки, HTML-код, валютные монеты и диаграммы данных. Программирование, финансы, цифровой маркетинг, рост бизнеса, разработка программного обеспечения, инвестиции. Интерфейс кодирования.
Набор целевых страниц веб-разработки и анализа данных, код программирования и графики роста бизнеса. Разработка программного обеспечения, цифровой маркетинг, рост стартапов, кодирование, аналитика, технологии. Программист.
Набор целевых страниц веб-разработки и анализа данных, код программирования и графики роста бизнеса. Разработка программного обеспечения, цифровой маркетинг, рост стартапов, кодирование, аналитика, технологии. Программист.
Векторная иллюстрация команды разработчиков программного обеспечения, работающей с технологиями баз данных PHP и MySQL. Программирование, веб-программирование, управление базами данных, криптовалюта, рост бизнеса, цифровой маркетинг. Web.
Векторная иллюстрация команды разработчиков программного обеспечения, работающей с технологиями баз данных PHP и MySQL. Программирование, веб-программирование, управление базами данных, криптовалюта, рост бизнеса, цифровой маркетинг. Web.
Минималистичная анимированная графика из тонкого серого и белого двоичного кода, плавно перетекающего на фоне градиента от светло-голубого к белому.
Минималистичная анимированная графика из тонкого серого и белого двоичного кода, плавно перетекающего на фоне градиента от светло-голубого к белому.
Концепция цифровой безопасности, иллюстрирующая заражение программного интерфейса вредоносным кодом. Плоский векторный стиль с изображением багов и микробов.
Концепция цифровой безопасности, иллюстрирующая заражение программного интерфейса вредоносным кодом. Плоский векторный стиль с изображением багов и микробов.
Разработчик программного обеспечения печатает на клавиатуре ноутбука, работая с исходным кодом ночью.
Разработчик программного обеспечения печатает на клавиатуре ноутбука, работая с исходным кодом ночью.
Иконка синего замка и скобки программного кода, отображаемые в виде баннера целевой страницы. Разработка программного обеспечения, защита данных, сетевая безопасность, веб-шифрование, цифровая конфиденциальность, доступ к системе. Безопасно.
Иконка синего замка и скобки программного кода, отображаемые в виде баннера целевой страницы. Разработка программного обеспечения, защита данных, сетевая безопасность, веб-шифрование, цифровая конфиденциальность, доступ к системе. Безопасно.
Обширное нелинейное распределение бинарных символов и искаженных знаков на суровом полотне данных. Композиция визуализирует необработанную, нефильтрованную сущность неструктурированных данных, дрейфующих в виртуальном вакууме. Перспектива.
Обширное нелинейное распределение бинарных символов и искаженных знаков на суровом полотне данных. Композиция визуализирует необработанную, нефильтрованную сущность неструктурированных данных, дрейфующих в виртуальном вакууме. Перспектива.
Обширное нелинейное распределение бинарных символов и абстрактных глифов, дрейфующих по пустому полю данных. Эта композиция визуализирует потоки необработанных данных и органическую сложность некартографированных информационных систем. Перспектива.
Обширное нелинейное распределение бинарных символов и абстрактных глифов, дрейфующих по пустому полю данных. Эта композиция визуализирует потоки необработанных данных и органическую сложность некартографированных информационных систем. Перспектива.
Человек, исправляющий программную ошибку с идеей в виде лампочки для баннера целевой страницы веб-сайта. Разработка, поиск и устранение неисправностей, кодирование, инновации, решение задач, техническая поддержка. Разработчик в процессе исправления.
Человек, исправляющий программную ошибку с идеей в виде лампочки для баннера целевой страницы веб-сайта. Разработка, поиск и устранение неисправностей, кодирование, инновации, решение задач, техническая поддержка. Разработчик в процессе исправления.
Яркая и современная сцена с несколькими открытыми ноутбуками, на экранах которых отображается светящийся цифровой код. Изображение излучает высокотехнологичную кибер-атмосферу с ярким розовым и фиолетовым освещением, подчеркивая инновации и технологии. Идеально подходит для контекстов, связанных с программированием, разработкой программного обеспечения, кибербезопасностью, цифровой трансформацией и будущим.
Яркая и современная сцена с несколькими открытыми ноутбуками, на экранах которых отображается светящийся цифровой код. Изображение излучает высокотехнологичную кибер-атмосферу с ярким розовым и фиолетовым освещением, подчеркивая инновации и технологии. Идеально подходит для контекстов, связанных с программированием, разработкой программного обеспечения, кибербезопасностью, цифровой трансформацией и будущим.
Логотип отладки ПО создает исследовательский имидж для компаний, специализирующихся на проверке кода, и этот логотип отладки ПО гарантирует целостность кода. Как специализированный логотип отладки ПО, этот символ эффективно демонстрирует клиентам, ищущим ПО без ошибок, тщательность сканирования.
Логотип отладки ПО создает исследовательский имидж для компаний, специализирующихся на проверке кода, и этот логотип отладки ПО гарантирует целостность кода. Как специализированный логотип отладки ПО, этот символ эффективно демонстрирует клиентам, ищущим ПО без ошибок, тщательность сканирования.
Чистая черно-белая линейная иконка, изображающая лупу, рассматривающую фрагмент кода и документ. Лупа выделяет теги программирования `< >`, а на документе показаны строки текста и знак 'X', символизирующий ошибки или проблемы. Эта векторная иллюстрация представляет такие понятия, как проверка кода, отладка, анализ программного обеспечения и обнаружение ошибок.
Чистая черно-белая линейная иконка, изображающая лупу, рассматривающую фрагмент кода и документ. Лупа выделяет теги программирования `< >`, а на документе показаны строки текста и знак 'X', символизирующий ошибки или проблемы. Эта векторная иллюстрация представляет такие понятия, как проверка кода, отладка, анализ программного обеспечения и обнаружение ошибок.
Драматичная и темная динамическая графика с ярким синим двоичным кодом, текущим по градиенту глубокого индиго и темно-фиолетового.
Драматичная и темная динамическая графика с ярким синим двоичным кодом, текущим по градиенту глубокого индиго и темно-фиолетового.
Обширное, нелинейное распределение двоичных символов и глючных символов на суровой цифровой канве. Композиция визуализирует сырую, нефильтрованную сущность неструктурированных данных, дрейфующих в виртуальном вакууме. Перспектива.
Обширное, нелинейное распределение двоичных символов и глючных символов на суровой цифровой канве. Композиция визуализирует сырую, нефильтрованную сущность неструктурированных данных, дрейфующих в виртуальном вакууме. Перспектива.
Коллекция векторных иллюстраций с компьютерными мониторами, интерфейсами программирования и оранжевым автомобилем для баннеров веб-лендингов. Программная инженерия, автомобильные технологии, веб-разработка, цифровой.
Коллекция векторных иллюстраций с компьютерными мониторами, интерфейсами программирования и оранжевым автомобилем для баннеров веб-лендингов. Программная инженерия, автомобильные технологии, веб-разработка, цифровой.
Коллекция черно-белых линейных иконок, представляющих различные концепции разработки программного обеспечения и программирования.
Коллекция черно-белых линейных иконок, представляющих различные концепции разработки программного обеспечения и программирования.
Плоская векторная иллюстрация открытого ноутбука, на экране которого отображается сложный программный код, рядом стоит чашка кофе на темном фоне. Создано ИИ.
Плоская векторная иллюстрация открытого ноутбука, на экране которого отображается сложный программный код, рядом стоит чашка кофе на темном фоне. Создано ИИ.
Иллюстрация женщины, работающей за ноутбуком, вероятно, программиста или разработчика. Она сидит за столом, рядом стоит чашка кофе. На экране ноутбука отображаются символы кода. Общий дизайн чистый и современный, подходит для представления удаленной работы, разработки программного обеспечения или концепций, связанных с технологиями.
Иллюстрация женщины, работающей за ноутбуком, вероятно, программиста или разработчика. Она сидит за столом, рядом стоит чашка кофе. На экране ноутбука отображаются символы кода. Общий дизайн чистый и современный, подходит для представления удаленной работы, разработки программного обеспечения или концепций, связанных с технологиями.
Векторный значок разработки. Знак иллюстрации программирования. Символ разработчика программного обеспечения. Логотип кода программы. Может использоваться для веб-сайтов и мобильных устройств.
Векторный значок разработки. Знак иллюстрации программирования. Символ разработчика программного обеспечения. Логотип кода программы. Может использоваться для веб-сайтов и мобильных устройств.
Векторный значок разработки. Знак иллюстрации программирования. Символ разработчика программного обеспечения. Логотип кода программы. Может использоваться для веб-сайтов и мобильных устройств.
Векторный значок разработки. Знак иллюстрации программирования. Символ разработчика программного обеспечения. Логотип кода программы. Может использоваться для веб-сайтов и мобильных устройств.
Векторный значок разработки. Знак иллюстрации программирования. Символ разработчика программного обеспечения. Логотип кода программы. Может использоваться для веб-сайтов и мобильных устройств.
Векторный значок разработки. Знак иллюстрации программирования. Символ разработчика программного обеспечения. Логотип кода программы. Может использоваться для веб-сайтов и мобильных устройств.
Векторный значок разработки. Знак иллюстрации программирования. Символ разработчика программного обеспечения. Логотип кода программы. Может использоваться для веб-сайтов и мобильных устройств.
Векторный значок разработки. Знак иллюстрации программирования. Символ разработчика программного обеспечения. Логотип кода программы. Может использоваться для веб-сайтов и мобильных устройств.
Вектор иконки разработки. Знак иллюстрации программирования. Символ разработчика ПО. Логотип программного кода. Можно использовать для веб-сайтов и мобильных устройств.
Вектор иконки разработки. Знак иллюстрации программирования. Символ разработчика ПО. Логотип программного кода. Можно использовать для веб-сайтов и мобильных устройств.
Векторный значок разработки. Знак иллюстрации программирования. Символ разработчика программного обеспечения. Логотип кода программы. Может использоваться для веб-сайтов и мобильных устройств.
Векторный значок разработки. Знак иллюстрации программирования. Символ разработчика программного обеспечения. Логотип кода программы. Может использоваться для веб-сайтов и мобильных устройств.
Векторный значок разработки. Знак иллюстрации программирования. Символ разработчика программного обеспечения. Логотип кода программы. Может использоваться для веб-сайтов и мобильных устройств.
Векторный значок разработки. Знак иллюстрации программирования. Символ разработчика программного обеспечения. Логотип кода программы. Может использоваться для веб-сайтов и мобильных устройств.
Векторный значок разработки. Знак иллюстрации программирования. Символ разработчика программного обеспечения. Логотип кода программы. Может использоваться для веб-сайтов и мобильных устройств.
Векторный значок разработки. Знак иллюстрации программирования. Символ разработчика программного обеспечения. Логотип кода программы. Может использоваться для веб-сайтов и мобильных устройств.
Вектор иконки разработки. Иллюстрация программирования. Символ разработчика ПО. Логотип программного кода. Можно использовать для веб-сайтов и мобильных устройств.
Вектор иконки разработки. Иллюстрация программирования. Символ разработчика ПО. Логотип программного кода. Можно использовать для веб-сайтов и мобильных устройств.
Вектор иконки разработки. Иллюстрация программирования. Символ разработчика ПО. Логотип программного кода. Можно использовать для веб-сайтов и мобильных устройств.
Вектор иконки разработки. Иллюстрация программирования. Символ разработчика ПО. Логотип программного кода. Можно использовать для веб-сайтов и мобильных устройств.
Вектор иконки разработки. Знак иллюстрации программирования. Символ разработчика ПО. Логотип программного кода. Можно использовать для веб-сайтов и мобильных устройств.
Вектор иконки разработки. Знак иллюстрации программирования. Символ разработчика ПО. Логотип программного кода. Можно использовать для веб-сайтов и мобильных устройств.
Крупный план показывает сосредоточенного разработчика, интенсивно печатающего код на клавиатуре ноутбука в темное время суток. Эта сцена идеально передает интенсивность удаленной работы и разработки программного обеспечения. Создано ИИ, теплое контровое освещение резко контрастирует с синим свечением экрана, подчеркивая преданность делу и продуктивность. Программист эффективно работает над созданием новых цифровых решений.
Крупный план показывает сосредоточенного разработчика, интенсивно печатающего код на клавиатуре ноутбука в темное время суток. Эта сцена идеально передает интенсивность удаленной работы и разработки программного обеспечения. Создано ИИ, теплое контровое освещение резко контрастирует с синим свечением экрана, подчеркивая преданность делу и продуктивность. Программист эффективно работает над созданием новых цифровых решений.
На левой стороне монитора отображается HTML-код с тегами внутри черного интерфейса. Код включает типичные HTML-элементы, такие как `<html>`, `<head>` и `<title>`. На правой стороне экрана расположено изображение заснеженных гор во время рассвета или заката, представляющее собой живописный вид.
На левой стороне монитора отображается HTML-код с тегами внутри черного интерфейса. Код включает типичные HTML-элементы, такие как ``, `` и ``. На правой стороне экрана расположено изображение заснеженных гор во время рассвета или заката, представляющее собой живописный вид.</figcaption> </figure> </a> <div class="item__info"> <p class="item__title js-item-title"> <a href="https://ru.dreamstime.com/монитор-компьютера-с-html-кодом-и-изображением-гор-image461385037" > Монитор компьютера с HTML-кодом и изображением гор. На левой стороне монитора отображается HTML-код с тегами внутри черного интерфейса. Код включает типичные HTML-элементы, такие как `<html>`, `<head>` и `<title>`. На правой стороне экрана расположено изображение заснеженных гор во время рассвета или заката, представляющее собой живописный вид. </a> </p> </div> </article> <article class="item item69 item-photo js-listing-item" data-id="426597078" data-type="image" data-dt-id="#ilc1" data-dt-on-mouseenter="" data-dt-on-touchstart="" > <div class="item__actions"> <a href="https://ru.dreamstime.com/search.php?srh_field=крупный+план+человека+рассматривающего&s_il=y" class="item__similars-link js-similars-link" rel="nofollow" target="_blank" aria-label="Показать аналогичные результаты" data-dt-id="item-similars-link" data-dt-on-mouseenter="" data-dt-on-touchstart=""><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16"><path fill="#fff" fill-rule="evenodd" d="M0 1a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1zm4 4.072c0 1.694 1.404 3.071 3.13 3.071l.178-.004c.55-.03 1.061-.2 1.5-.474l2.16 2.166a.625.625 0 0 0 .855 0 .585.585 0 0 0 0-.838L9.685 6.847a3 3 0 0 0 .576-1.775C10.261 3.378 8.857 2 7.131 2 5.403 2 4 3.378 4 5.072m1.208 0c0-1.04.863-1.887 1.922-1.887l.15.006c.99.076 1.773.89 1.773 1.881 0 .528-.223 1.007-.58 1.35l-.039.028a.1.1 0 0 0-.016.021 1.94 1.94 0 0 1-1.288.487c-1.06 0-1.922-.846-1.922-1.886M2 13h12a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1m2 2h8a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1"/></svg></a> <button class="item__lightbox-btn js-item-lightbox-add-btn" type="button" data-id="426597078" data-lb-state="add" aria-label="Добавить в лайтбокс" data-aria-label-add="Добавить в лайтбокс" data-aria-label-remove="Удалить из лайтбокса" data-dt-id="item-lightbox-btn" data-dt-on-click="" data-dt-on-mouseenter="" data-dt-on-touchstart=""><svg xmlns="http://www.w3.org/2000/svg"><path fill="#fff" d="M6 0h4v16H6V0Z"/><path fill="#fff" d="m0 10-1.7e-7-4 16-7e-7 1.7e-7 4L0 10Z"/></svg></button> <a class="item-btn-trial btn btn--green" href="https://ru.dreamstime.com/securecredits2.php?subscriptionid=816&packagetype=0" rel="nofollow" aria-label="Бесплатно с пробной версией"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 13.998"><path fill-rule="evenodd" d="M14 13.998H0v-3h1.5v1.5h11v-1.5H14v3ZM6.2 0v4.904H3.528L7 9.996l3.472-5.092H7.8V0H6.2Z"/></svg><span>Бесплатно с пробной версией</span></a> </div> <a href="https://ru.dreamstime.com/разработчик-изучает-код-с-помощью-лупы-image426597078" class="item__url js-item-title-wrapper" aria-label="Разработчик изучает код с помощью лупы" target="_blank"> <figure> <img class="item__thumb" src="https://thumbs.dreamstime.com/b/разработчик-изучает-код-с-помощью-лупы-426597078.jpg" loading="lazy" alt="Крупный план человека, рассматривающего код на экране компьютера с помощью лупы." srcset="https://thumbs.dreamstime.com/b/разработчик-изучает-код-с-помощью-лупы-426597078.jpg?w=360 360w, https://thumbs.dreamstime.com/b/разработчик-изучает-код-с-помощью-лупы-426597078.jpg?w=400 400w, https://thumbs.dreamstime.com/b/разработчик-изучает-код-с-помощью-лупы-426597078.jpg?w=450 450w, https://thumbs.dreamstime.com/b/разработчик-изучает-код-с-помощью-лупы-426597078.jpg?w=576 576w, https://thumbs.dreamstime.com/b/разработчик-изучает-код-с-помощью-лупы-426597078.jpg?w=768 768w" sizes="(max-width: 359.98px) 360px, (min-width: 360px) and (max-width: 399.98px) 400px, (min-width: 400px) and (max-width: 449.98px) 450px, (min-width: 450px) and (max-width: 575.98px) 576px, 768px"> <figcaption class="item__caption">Крупный план человека, рассматривающего код на экране компьютера с помощью лупы.</figcaption> </figure> </a> <div class="item__info"> <p class="item__title js-item-title"> <a href="https://ru.dreamstime.com/разработчик-изучает-код-с-помощью-лупы-image426597078" > Разработчик изучает код с помощью лупы. Крупный план человека, рассматривающего код на экране компьютера с помощью лупы </a> </p> </div> </article> <article class="item item70 item-photo js-listing-item" data-id="407788608" data-type="image" data-dt-id="#ilc1" data-dt-on-mouseenter="" data-dt-on-touchstart="" > <div class="item__actions"> <a href="https://ru.dreamstime.com/search.php?srh_field=сосредоточенный+молодой+женский+разработчик&s_il=y" class="item__similars-link js-similars-link" rel="nofollow" target="_blank" aria-label="Показать аналогичные результаты" data-dt-id="item-similars-link" data-dt-on-mouseenter="" data-dt-on-touchstart=""><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16"><path fill="#fff" fill-rule="evenodd" d="M0 1a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1zm4 4.072c0 1.694 1.404 3.071 3.13 3.071l.178-.004c.55-.03 1.061-.2 1.5-.474l2.16 2.166a.625.625 0 0 0 .855 0 .585.585 0 0 0 0-.838L9.685 6.847a3 3 0 0 0 .576-1.775C10.261 3.378 8.857 2 7.131 2 5.403 2 4 3.378 4 5.072m1.208 0c0-1.04.863-1.887 1.922-1.887l.15.006c.99.076 1.773.89 1.773 1.881 0 .528-.223 1.007-.58 1.35l-.039.028a.1.1 0 0 0-.016.021 1.94 1.94 0 0 1-1.288.487c-1.06 0-1.922-.846-1.922-1.886M2 13h12a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1m2 2h8a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1"/></svg></a> <button class="item__lightbox-btn js-item-lightbox-add-btn" type="button" data-id="407788608" data-lb-state="add" aria-label="Добавить в лайтбокс" data-aria-label-add="Добавить в лайтбокс" data-aria-label-remove="Удалить из лайтбокса" data-dt-id="item-lightbox-btn" data-dt-on-click="" data-dt-on-mouseenter="" data-dt-on-touchstart=""><svg xmlns="http://www.w3.org/2000/svg"><path fill="#fff" d="M6 0h4v16H6V0Z"/><path fill="#fff" d="m0 10-1.7e-7-4 16-7e-7 1.7e-7 4L0 10Z"/></svg></button> <a class="item-btn-trial btn btn--green" href="https://ru.dreamstime.com/securecredits2.php?subscriptionid=816&packagetype=0" rel="nofollow" aria-label="Бесплатно с пробной версией"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 13.998"><path fill-rule="evenodd" d="M14 13.998H0v-3h1.5v1.5h11v-1.5H14v3ZM6.2 0v4.904H3.528L7 9.996l3.472-5.092H7.8V0H6.2Z"/></svg><span>Бесплатно с пробной версией</span></a> </div> <a href="https://ru.dreamstime.com/выделенная-женщина-программист-работает-поздно-ночью-сосредоточенная-image407788608" class="item__url js-item-title-wrapper" aria-label="Преданная своему делу программистка, работающая допоздна ночью" target="_blank"> <figure> <img class="item__thumb" src="https://thumbs.dreamstime.com/b/выделенная-женщина-программист-работает-поздно-ночью-сосредоточенная-407788608.jpg" loading="lazy" alt="Сосредоточенный молодой женский разработчик программного обеспечения, работающий допоздна ночью в современном офисе. Она внимательно следит за экраном своего компьютера, на котором отображаются строки кода программы, одновременно печатая на клавиатуре. Сцена слабо освещена настольной лампой, создавая серьезную и преданную атмосферу. Через окно размытые огни города создают красивый фон. Это изображение символизирует тяжелый труд, преданность делу, технологии, программирование, кибербезопасность и женщин в STEM, идеально подходящее для иллюстрации современной цифровой рабочей силы и проектов с жесткими сроками." srcset="https://thumbs.dreamstime.com/b/выделенная-женщина-программист-работает-поздно-ночью-сосредоточенная-407788608.jpg?w=360 360w, https://thumbs.dreamstime.com/b/выделенная-женщина-программист-работает-поздно-ночью-сосредоточенная-407788608.jpg?w=400 400w, https://thumbs.dreamstime.com/b/выделенная-женщина-программист-работает-поздно-ночью-сосредоточенная-407788608.jpg?w=450 450w, https://thumbs.dreamstime.com/b/выделенная-женщина-программист-работает-поздно-ночью-сосредоточенная-407788608.jpg?w=576 576w, https://thumbs.dreamstime.com/b/выделенная-женщина-программист-работает-поздно-ночью-сосредоточенная-407788608.jpg?w=768 768w, https://thumbs.dreamstime.com/b/выделенная-женщина-программист-работает-поздно-ночью-сосредоточенная-407788608.jpg?w=992 992w" sizes="(max-width: 359.98px) 360px, (min-width: 360px) and (max-width: 399.98px) 400px, (min-width: 400px) and (max-width: 449.98px) 450px, (min-width: 450px) and (max-width: 575.98px) 576px, (min-width: 576px) and (max-width: 767.98px) 768px, 992px"> <figcaption class="item__caption">Сосредоточенный молодой женский разработчик программного обеспечения, работающий допоздна ночью в современном офисе. Она внимательно следит за экраном своего компьютера, на котором отображаются строки кода программы, одновременно печатая на клавиатуре. Сцена слабо освещена настольной лампой, создавая серьезную и преданную атмосферу. Через окно размытые огни города создают красивый фон. Это изображение символизирует тяжелый труд, преданность делу, технологии, программирование, кибербезопасность и женщин в STEM, идеально подходящее для иллюстрации современной цифровой рабочей силы и проектов с жесткими сроками.</figcaption> </figure> </a> <div class="item__info"> <p class="item__title js-item-title"> <a href="https://ru.dreamstime.com/выделенная-женщина-программист-работает-поздно-ночью-сосредоточенная-image407788608" > Преданная своему делу программистка, работающая допоздна ночью. Сосредоточенный молодой женский разработчик программного обеспечения, работающий допоздна ночью в современном офисе. Она внимательно следит за экраном своего компьютера, на котором отображаются строки кода программы, одновременно печатая на клавиатуре. Сцена слабо освещена настольной лампой, создавая серьезную и преданную атмосферу. Через окно размытые огни города создают красивый фон. Это изображение символизирует тяжелый труд, преданность делу, технологии, программирование, кибербезопасность и женщин в STEM, идеально подходящее для иллюстрации современной цифровой рабочей силы и проектов с жесткими сроками. </a> </p> </div> </article> <article class="item item71 item-photo js-listing-item" data-id="423029472" data-type="image" data-dt-id="#ilc1" data-dt-on-mouseenter="" data-dt-on-touchstart="" data-vertical-icons="" > <div class="item__actions"> <a href="https://ru.dreamstime.com/search.php?srh_field=простой+понятный+векторный+значок&s_il=y" class="item__similars-link js-similars-link" rel="nofollow" target="_blank" aria-label="Показать аналогичные результаты" data-dt-id="item-similars-link" data-dt-on-mouseenter="" data-dt-on-touchstart=""><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16"><path fill="#fff" fill-rule="evenodd" d="M0 1a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1zm4 4.072c0 1.694 1.404 3.071 3.13 3.071l.178-.004c.55-.03 1.061-.2 1.5-.474l2.16 2.166a.625.625 0 0 0 .855 0 .585.585 0 0 0 0-.838L9.685 6.847a3 3 0 0 0 .576-1.775C10.261 3.378 8.857 2 7.131 2 5.403 2 4 3.378 4 5.072m1.208 0c0-1.04.863-1.887 1.922-1.887l.15.006c.99.076 1.773.89 1.773 1.881 0 .528-.223 1.007-.58 1.35l-.039.028a.1.1 0 0 0-.016.021 1.94 1.94 0 0 1-1.288.487c-1.06 0-1.922-.846-1.922-1.886M2 13h12a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1m2 2h8a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1"/></svg></a> <button class="item__lightbox-btn js-item-lightbox-add-btn" type="button" data-id="423029472" data-lb-state="add" aria-label="Добавить в лайтбокс" data-aria-label-add="Добавить в лайтбокс" data-aria-label-remove="Удалить из лайтбокса" data-dt-id="item-lightbox-btn" data-dt-on-click="" data-dt-on-mouseenter="" data-dt-on-touchstart=""><svg xmlns="http://www.w3.org/2000/svg"><path fill="#fff" d="M6 0h4v16H6V0Z"/><path fill="#fff" d="m0 10-1.7e-7-4 16-7e-7 1.7e-7 4L0 10Z"/></svg></button> <a class="item-btn-trial btn btn--green" href="https://ru.dreamstime.com/securecredits2.php?subscriptionid=816&packagetype=0" rel="nofollow" aria-label="Бесплатно с пробной версией"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 13.998"><path fill-rule="evenodd" d="M14 13.998H0v-3h1.5v1.5h11v-1.5H14v3ZM6.2 0v4.904H3.528L7 9.996l3.472-5.092H7.8V0H6.2Z"/></svg><span>Бесплатно с пробной версией</span></a> </div> <a href="https://ru.dreamstime.com/веб-разработка-image423029472" class="item__url js-item-title-wrapper" aria-label="Веб-разработка" target="_blank"> <figure> <img class="item__thumb" src="https://thumbs.dreamstime.com/b/веб-разработка-423029472.jpg" loading="lazy" alt="Простой и понятный векторный значок, иллюстрирующий основную идею или функцию." srcset="https://thumbs.dreamstime.com/b/веб-разработка-423029472.jpg?w=360 360w, https://thumbs.dreamstime.com/b/веб-разработка-423029472.jpg?w=400 400w, https://thumbs.dreamstime.com/b/веб-разработка-423029472.jpg?w=450 450w, https://thumbs.dreamstime.com/b/веб-разработка-423029472.jpg?w=576 576w, https://thumbs.dreamstime.com/b/веб-разработка-423029472.jpg?w=768 768w" sizes="(max-width: 359.98px) 360px, (min-width: 360px) and (max-width: 399.98px) 400px, (min-width: 400px) and (max-width: 449.98px) 450px, (min-width: 450px) and (max-width: 575.98px) 576px, 768px"> <figcaption class="item__caption">Простой и понятный векторный значок, иллюстрирующий основную идею или функцию.</figcaption> </figure> </a> <div class="item__info"> <p class="item__title js-item-title"> <a href="https://ru.dreamstime.com/веб-разработка-image423029472" > Веб-разработка. Простой и понятный векторный значок, иллюстрирующий основную идею или функцию </a> </p> </div> </article> <article class="item item72 item-photo js-listing-item" data-id="461695650" data-type="image" data-dt-id="#ilc1" data-dt-on-mouseenter="" data-dt-on-touchstart="" > <div class="item__actions"> <a href="https://ru.dreamstime.com/search.php?srh_field=графический+дизайн+иконки+программиста&s_il=y" class="item__similars-link js-similars-link" rel="nofollow" target="_blank" aria-label="Показать аналогичные результаты" data-dt-id="item-similars-link" data-dt-on-mouseenter="" data-dt-on-touchstart=""><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16"><path fill="#fff" fill-rule="evenodd" d="M0 1a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1zm4 4.072c0 1.694 1.404 3.071 3.13 3.071l.178-.004c.55-.03 1.061-.2 1.5-.474l2.16 2.166a.625.625 0 0 0 .855 0 .585.585 0 0 0 0-.838L9.685 6.847a3 3 0 0 0 .576-1.775C10.261 3.378 8.857 2 7.131 2 5.403 2 4 3.378 4 5.072m1.208 0c0-1.04.863-1.887 1.922-1.887l.15.006c.99.076 1.773.89 1.773 1.881 0 .528-.223 1.007-.58 1.35l-.039.028a.1.1 0 0 0-.016.021 1.94 1.94 0 0 1-1.288.487c-1.06 0-1.922-.846-1.922-1.886M2 13h12a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1m2 2h8a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1"/></svg></a> <button class="item__lightbox-btn js-item-lightbox-add-btn" type="button" data-id="461695650" data-lb-state="add" aria-label="Добавить в лайтбокс" data-aria-label-add="Добавить в лайтбокс" data-aria-label-remove="Удалить из лайтбокса" data-dt-id="item-lightbox-btn" data-dt-on-click="" data-dt-on-mouseenter="" data-dt-on-touchstart=""><svg xmlns="http://www.w3.org/2000/svg"><path fill="#fff" d="M6 0h4v16H6V0Z"/><path fill="#fff" d="m0 10-1.7e-7-4 16-7e-7 1.7e-7 4L0 10Z"/></svg></button> <a class="item-btn-trial btn btn--green" href="https://ru.dreamstime.com/securecredits2.php?subscriptionid=816&packagetype=0" rel="nofollow" aria-label="Бесплатно с пробной версией"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 13.998"><path fill-rule="evenodd" d="M14 13.998H0v-3h1.5v1.5h11v-1.5H14v3ZM6.2 0v4.904H3.528L7 9.996l3.472-5.092H7.8V0H6.2Z"/></svg><span>Бесплатно с пробной версией</span></a> </div> <a href="https://ru.dreamstime.com/графический-дизайн-иконки-программиста-векторные-веб-image461695650" class="item__url js-item-title-wrapper" aria-label="Графический дизайн иконки программиста. векторные веб-иконки" target="_blank"> <figure> <img class="item__thumb" src="https://thumbs.dreamstime.com/b/графический-дизайн-иконки-программиста-векторные-веб-461695650.jpg" loading="lazy" alt="Графический дизайн иконки программиста. векторные веб-иконки" srcset="https://thumbs.dreamstime.com/b/графический-дизайн-иконки-программиста-векторные-веб-461695650.jpg?w=360 360w, https://thumbs.dreamstime.com/b/графический-дизайн-иконки-программиста-векторные-веб-461695650.jpg?w=400 400w, https://thumbs.dreamstime.com/b/графический-дизайн-иконки-программиста-векторные-веб-461695650.jpg?w=450 450w, https://thumbs.dreamstime.com/b/графический-дизайн-иконки-программиста-векторные-веб-461695650.jpg?w=576 576w, https://thumbs.dreamstime.com/b/графический-дизайн-иконки-программиста-векторные-веб-461695650.jpg?w=768 768w, https://thumbs.dreamstime.com/b/графический-дизайн-иконки-программиста-векторные-веб-461695650.jpg?w=992 992w, https://thumbs.dreamstime.com/b/графический-дизайн-иконки-программиста-векторные-веб-461695650.jpg?w=1200 1200w, https://thumbs.dreamstime.com/b/графический-дизайн-иконки-программиста-векторные-веб-461695650.jpg?w=1400 1400w" sizes="(max-width: 359.98px) 360px, (min-width: 360px) and (max-width: 399.98px) 400px, (min-width: 400px) and (max-width: 449.98px) 450px, (min-width: 450px) and (max-width: 575.98px) 576px, (min-width: 576px) and (max-width: 767.98px) 768px, (min-width: 768px) and (max-width: 991.98px) 992px, (min-width: 992px) and (max-width: 1199.98px) 1200px, 1400px"> <figcaption class="item__caption">Графический дизайн иконки программиста. векторные веб-иконки</figcaption> </figure> </a> <div class="item__info"> <p class="item__title js-item-title"> <a href="https://ru.dreamstime.com/графический-дизайн-иконки-программиста-векторные-веб-image461695650" > Графический дизайн иконки программиста. векторные веб-иконки </a> </p> </div> </article> <article class="item item73 item-photo js-listing-item" data-id="459349330" data-type="image" data-dt-id="#ilc1" data-dt-on-mouseenter="" data-dt-on-touchstart="" > <div class="item__actions"> <a href="https://ru.dreamstime.com/search.php?srh_field=интерфейс+темного+редактора+кода&s_il=y" class="item__similars-link js-similars-link" rel="nofollow" target="_blank" aria-label="Показать аналогичные результаты" data-dt-id="item-similars-link" data-dt-on-mouseenter="" data-dt-on-touchstart=""><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16"><path fill="#fff" fill-rule="evenodd" d="M0 1a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1zm4 4.072c0 1.694 1.404 3.071 3.13 3.071l.178-.004c.55-.03 1.061-.2 1.5-.474l2.16 2.166a.625.625 0 0 0 .855 0 .585.585 0 0 0 0-.838L9.685 6.847a3 3 0 0 0 .576-1.775C10.261 3.378 8.857 2 7.131 2 5.403 2 4 3.378 4 5.072m1.208 0c0-1.04.863-1.887 1.922-1.887l.15.006c.99.076 1.773.89 1.773 1.881 0 .528-.223 1.007-.58 1.35l-.039.028a.1.1 0 0 0-.016.021 1.94 1.94 0 0 1-1.288.487c-1.06 0-1.922-.846-1.922-1.886M2 13h12a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1m2 2h8a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1"/></svg></a> <button class="item__lightbox-btn js-item-lightbox-add-btn" type="button" data-id="459349330" data-lb-state="add" aria-label="Добавить в лайтбокс" data-aria-label-add="Добавить в лайтбокс" data-aria-label-remove="Удалить из лайтбокса" data-dt-id="item-lightbox-btn" data-dt-on-click="" data-dt-on-mouseenter="" data-dt-on-touchstart=""><svg xmlns="http://www.w3.org/2000/svg"><path fill="#fff" d="M6 0h4v16H6V0Z"/><path fill="#fff" d="m0 10-1.7e-7-4 16-7e-7 1.7e-7 4L0 10Z"/></svg></button> <a class="item-btn-trial btn btn--green" href="https://ru.dreamstime.com/securecredits2.php?subscriptionid=816&packagetype=0" rel="nofollow" aria-label="Бесплатно с пробной версией"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 13.998"><path fill-rule="evenodd" d="M14 13.998H0v-3h1.5v1.5h11v-1.5H14v3ZM6.2 0v4.904H3.528L7 9.996l3.472-5.092H7.8V0H6.2Z"/></svg><span>Бесплатно с пробной версией</span></a> </div> <a href="https://ru.dreamstime.com/технологии-—-интерфейс-отладки-кода-на-базе-ии-с-красной-иконкой-жука-image459349330" class="item__url js-item-title-wrapper" aria-label="Технологии — интерфейс отладки кода на базе ИИ с красной иконкой жука на темном экране редактора кода" target="_blank"> <figure> <img class="item__thumb" src="https://thumbs.dreamstime.com/b/технологии-—-интерфейс-отладки-кода-на-базе-ии-с-красной-иконкой-жука-459349330.jpg" loading="lazy" alt="Интерфейс темного редактора кода с разметкой ИИ, отображающий цветную подсветку синтаксиса с красной иконкой жука, символизирующей отладку программного обеспечения." srcset="https://thumbs.dreamstime.com/b/технологии-—-интерфейс-отладки-кода-на-базе-ии-с-красной-иконкой-жука-459349330.jpg?w=360 360w, https://thumbs.dreamstime.com/b/технологии-—-интерфейс-отладки-кода-на-базе-ии-с-красной-иконкой-жука-459349330.jpg?w=400 400w, https://thumbs.dreamstime.com/b/технологии-—-интерфейс-отладки-кода-на-базе-ии-с-красной-иконкой-жука-459349330.jpg?w=450 450w, https://thumbs.dreamstime.com/b/технологии-—-интерфейс-отладки-кода-на-базе-ии-с-красной-иконкой-жука-459349330.jpg?w=576 576w, https://thumbs.dreamstime.com/b/технологии-—-интерфейс-отладки-кода-на-базе-ии-с-красной-иконкой-жука-459349330.jpg?w=768 768w, https://thumbs.dreamstime.com/b/технологии-—-интерфейс-отладки-кода-на-базе-ии-с-красной-иконкой-жука-459349330.jpg?w=992 992w" sizes="(max-width: 359.98px) 360px, (min-width: 360px) and (max-width: 399.98px) 400px, (min-width: 400px) and (max-width: 449.98px) 450px, (min-width: 450px) and (max-width: 575.98px) 576px, (min-width: 576px) and (max-width: 767.98px) 768px, 992px"> <figcaption class="item__caption">Интерфейс темного редактора кода с разметкой ИИ, отображающий цветную подсветку синтаксиса с красной иконкой жука, символизирующей отладку программного обеспечения.</figcaption> </figure> </a> <div class="item__info"> <p class="item__title js-item-title"> <a href="https://ru.dreamstime.com/технологии-—-интерфейс-отладки-кода-на-базе-ии-с-красной-иконкой-жука-image459349330" > Технологии — интерфейс отладки кода на базе ИИ с красной иконкой жука на темном экране редактора кода. Интерфейс темного редактора кода с разметкой ИИ, отображающий цветную подсветку синтаксиса с красной иконкой жука, символизирующей отладку программного обеспечения </a> </p> </div> </article> <article class="item item74 item-photo js-listing-item" data-id="482330818" data-type="image" data-dt-id="#ilc1" data-dt-on-mouseenter="" data-dt-on-touchstart="" > <div class="item__actions"> <a href="https://ru.dreamstime.com/search.php?srh_field=black+white+code+icon&s_il=y" class="item__similars-link js-similars-link" rel="nofollow" target="_blank" aria-label="Показать аналогичные результаты" data-dt-id="item-similars-link" data-dt-on-mouseenter="" data-dt-on-touchstart=""><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16"><path fill="#fff" fill-rule="evenodd" d="M0 1a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1H1a1 1 0 0 1-1-1zm4 4.072c0 1.694 1.404 3.071 3.13 3.071l.178-.004c.55-.03 1.061-.2 1.5-.474l2.16 2.166a.625.625 0 0 0 .855 0 .585.585 0 0 0 0-.838L9.685 6.847a3 3 0 0 0 .576-1.775C10.261 3.378 8.857 2 7.131 2 5.403 2 4 3.378 4 5.072m1.208 0c0-1.04.863-1.887 1.922-1.887l.15.006c.99.076 1.773.89 1.773 1.881 0 .528-.223 1.007-.58 1.35l-.039.028a.1.1 0 0 0-.016.021 1.94 1.94 0 0 1-1.288.487c-1.06 0-1.922-.846-1.922-1.886M2 13h12a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1m2 2h8a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1"/></svg></a> <button class="item__lightbox-btn js-item-lightbox-add-btn" type="button" data-id="482330818" data-lb-state="add" aria-label="Добавить в лайтбокс" data-aria-label-add="Добавить в лайтбокс" data-aria-label-remove="Удалить из лайтбокса" data-dt-id="item-lightbox-btn" data-dt-on-click="" data-dt-on-mouseenter="" data-dt-on-touchstart=""><svg xmlns="http://www.w3.org/2000/svg"><path fill="#fff" d="M6 0h4v16H6V0Z"/><path fill="#fff" d="m0 10-1.7e-7-4 16-7e-7 1.7e-7 4L0 10Z"/></svg></button> <a class="item-btn-trial btn btn--green" href="https://ru.dreamstime.com/securecredits2.php?subscriptionid=816&packagetype=0" rel="nofollow" aria-label="Бесплатно с пробной версией"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 13.998"><path fill-rule="evenodd" d="M14 13.998H0v-3h1.5v1.5h11v-1.5H14v3ZM6.2 0v4.904H3.528L7 9.996l3.472-5.092H7.8V0H6.2Z"/></svg><span>Бесплатно с пробной версией</span></a> </div> <a href="https://www.dreamstime.com/black-white-code-icon-showing-terminal-window-command-prompt-lines-text-depicts-graphic-displayed-plain-image482330818" class="item__url js-item-title-wrapper" aria-label="black and white code icon showing a terminal window with command prompt lines of text depicts the graphic is displayed on plain" target="_blank"> <figure> <img class="item__thumb" src="https://thumbs.dreamstime.com/b/black-white-code-icon-showing-terminal-window-command-prompt-lines-text-depicts-graphic-displayed-plain-482330818.jpg" loading="lazy" alt="Black and white code icon showing a terminal window with command prompt lines of text depicts the graphic is displayed on plain" srcset="https://thumbs.dreamstime.com/b/black-white-code-icon-showing-terminal-window-command-prompt-lines-text-depicts-graphic-displayed-plain-482330818.jpg?w=360 360w, https://thumbs.dreamstime.com/b/black-white-code-icon-showing-terminal-window-command-prompt-lines-text-depicts-graphic-displayed-plain-482330818.jpg?w=400 400w, https://thumbs.dreamstime.com/b/black-white-code-icon-showing-terminal-window-command-prompt-lines-text-depicts-graphic-displayed-plain-482330818.jpg?w=450 450w, https://thumbs.dreamstime.com/b/black-white-code-icon-showing-terminal-window-command-prompt-lines-text-depicts-graphic-displayed-plain-482330818.jpg?w=576 576w, https://thumbs.dreamstime.com/b/black-white-code-icon-showing-terminal-window-command-prompt-lines-text-depicts-graphic-displayed-plain-482330818.jpg?w=768 768w" sizes="(max-width: 359.98px) 360px, (min-width: 360px) and (max-width: 399.98px) 400px, (min-width: 400px) and (max-width: 449.98px) 450px, (min-width: 450px) and (max-width: 575.98px) 576px, 768px"> <figcaption class="item__caption">Black and white code icon showing a terminal window with command prompt lines of text depicts the graphic is displayed on plain</figcaption> </figure> </a> <div class="item__info"> <p class="item__title js-item-title"> <a href="https://www.dreamstime.com/black-white-code-icon-showing-terminal-window-command-prompt-lines-text-depicts-graphic-displayed-plain-image482330818" > black and white code icon showing a terminal window with command prompt lines of text depicts the graphic is displayed on plain. </a> </p> </div> </article> <article class="item-last js-item-last"></article> </div> </div> <div class="search-btm"> <div class="container-fluid"> <div class="row"> <div class="col-sm-12 col-md-4 order-md-1"> <a class="next-button js-next-page-button" href="https://ru.dreamstime.com/illustration/script-coding.html?pg=83" title="Страница 83" data-dt-id="next-page-button" data-dt-root="" data-dt-on-document-key-arrowright="" data-dt-dispatch-target="original" data-dt-js="44"> <div class="next-button__keynav"></div> <div class="next-button__label">Следующая страница.</div> <svg class="next-button__big" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 26 26"><path fill-rule="evenodd" d="M24.87 14.82 2.947 25.78A2.037 2.037 0 0 1 0 23.96V2.036A2.037 2.037 0 0 1 2.947.215L24.87 11.176a2.037 2.037 0 0 1 0 3.644Z"/></svg></a> </div> <div class="col-sm-12 col-md-8"> <nav class="pagination pagination--list" aria-label="Пагинация"> <a class="pagination__item pagination__item--prev js-pagination-prev" href="https://ru.dreamstime.com/illustration/script-coding.html?pg=81" title="Страница 81" ><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 6 10"><path fill-rule="nonzero" d="M6 8.694 4.757 10 1.243 6.306 0 5l1.243-1.306L4.757 0 6 1.306 2.486 5 6 8.694Z"/></svg></a> <ul class="pagination__list js-pagination-list" > <li> <a class="pagination__item pagination__item--page js-pg-list-item" href="https://ru.dreamstime.com/illustration/script-coding.html?pg=78" title="Перейти на страницу 78" >78</a> </li> <li> <a class="pagination__item pagination__item--page js-pg-list-item" href="https://ru.dreamstime.com/illustration/script-coding.html?pg=79" title="Перейти на страницу 79" >79</a> </li> <li> <a class="pagination__item pagination__item--page js-pg-list-item" href="https://ru.dreamstime.com/illustration/script-coding.html?pg=80" title="Перейти на страницу 80" >80</a> </li> <li> <a class="pagination__item pagination__item--page js-pg-list-item" href="https://ru.dreamstime.com/illustration/script-coding.html?pg=81" title="Перейти на страницу 81" >81</a> </li> <li> <a class="pagination__item pagination__item--page js-pg-list-item" href="https://ru.dreamstime.com/illustration/script-coding.html?pg=82" title="Текущая страница, Страница 82" aria-current="page" data-state="active" >82</a> </li> <li> <a class="pagination__item pagination__item--page js-pg-list-item" href="https://ru.dreamstime.com/illustration/script-coding.html?pg=83" title="Перейти на страницу 83" >83</a> </li> <li> <a class="pagination__item pagination__item--page js-pg-list-item" href="https://ru.dreamstime.com/illustration/script-coding.html?pg=84" title="Перейти на страницу 84" >84</a> </li> <li> <a class="pagination__item pagination__item--page js-pg-list-item" href="https://ru.dreamstime.com/illustration/script-coding.html?pg=85" title="Перейти на страницу 85" >85</a> </li> <li> <a class="pagination__item pagination__item--page js-pg-list-item" href="https://ru.dreamstime.com/illustration/script-coding.html?pg=86" title="Перейти на страницу 86" >86</a> </li> <li> <a class="pagination__item pagination__item--page js-pg-list-item" href="https://ru.dreamstime.com/illustration/script-coding.html?pg=87" title="Перейти на страницу 87" >87</a> </li> </ul> <a class="pagination__item pagination__item--next js-pagination-next" href="https://ru.dreamstime.com/illustration/script-coding.html?pg=83" title="Страница 83" ><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 6 10"><path fill-rule="nonzero" d="M-.003 8.694 1.24 10l3.515-3.694L5.997 5 4.755 3.694 1.24 0-.003 1.306 3.511 5-.003 8.694Z"/></svg></a> </nav> </div> </div> </div> </div> <div class="share-btn-wrapper share-btn-wrapper--icn search-share"> <button type="button" class="share-btn js-share-btn" data-dt-id="share-btn" data-dt-on-click="" data-dt-show-loading="" data-dt-loading-type="area" data-dt-loading-theme="dark" data-dt-loading-relative="" data-dt-loading-size="sml" data-dt-root="" data-dt-css="45,46,47,48,49,50,51,52,53" data-dt-js="54,29,30,55,56" aria-label="Поделиться" > <svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" viewBox="0 0 22 16"><path d="M12.7 0 14 1.1l7.3 6.3.7.5-.6.5-7.4 6.4-1.3 1.1v-4.8h-2c-4 0-6.9 1.1-9.2 3.3L0 16l.4-2.3v-.3c.4-2.2 1.5-4.1 3.2-5.6l.2-.2C6 5.8 8.9 4.8 12.5 4.8h.3L12.7 0zm1.6 3.3v3h-.8c-3.6-.2-6.6.7-8.7 2.4l-.2.2c-.9.8-1.5 1.7-2 2.7l-.1.2.2-.2c2.1-1.3 4.7-2 7.7-2H14.3v3L19.7 8l-5.4-4.7z"/></svg> </button> </div> </main> <div data-state="hidden" data-dt-id="popup-freetrial" data-dt-root="" data-dt-on-document-mouseleave="" data-dt-priority="high" data-dt-dispatch-target="document" data-dt-js="4,6,65" data-dt-js-order="8,9" data-dt-css="10,11,66"></div> <div class = "js-signup-popup-interaction" data-state="hidden" data-deps="{"js":"4,5,6,7","js-order":"8,9","css":"10,11,12"}" data-dt-id="signup-popup-interaction" data-dt-root="" data-dt-on-document-mousemove="" data-dt-on-document-touchstart="" data-dt-on-window-scroll="" data-dt-on-click="" data-dt-on-keypress="" data-dt-js="67"></div> <footer > <div class="footer-main"> <div class="container"> <div class="row"> <div class="col-md-1 col-sm-12"> <a class="footer-logo" name="Дримстим" href="https://ru.dreamstime.com/" aria-label="Dreamstime homepage"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 31"><path fill-rule="evenodd" clip-rule="evenodd" fill="#50a901" d="M28.7 6.3c-6.1-9-19.2-7.4-25-.7C.8 8.9-.3 13.5.1 17.7.5 21 1.7 24 3.4 26c4.5 5.5 12.3 6.1 17.4 2.6 7.2-5 6.7-13.1 2.8-17.6-7-8-19-.1-14.5 9 1.1 2.2 3.6 3.4 5.9 3.4 3.2 0 5.7-3.8 4.2-6.1-1.5-2.4-4.1 0-3 1.8.9 1.4-1 2.2-1.8 2-2.1-.5-3.1-3.4-2.4-5.8.6-2.1 2.8-3.5 4.9-3.4 2.9.2 6.1 2.5 5.8 7.5-.7 8.1-11.3 9.6-15.5 3.8-6.6-9.3 1.2-21.8 13.1-18 6.1 2 10.6 9.2 7.8 16.9-1.1 2.9-1.7 4-1.8 5-.5 3.7 11.2-7.8 2.4-20.8z"/></svg> </a> </div> <div class="col-xl-8 col-md-11 col-sm-12"> <div class="footer-menu js-footer-menu-wrapper" data-list-initial="opened" data-state="opened"> <div class="row flex-sm-nowrap"> <div class="col-sm-3 col-6"> <div class="footer-menu__col"> <div class="footer-menu__title js-footer-menu-trigger" data-dt-id="footer-menu" data-dt-root="" data-dt-on-click="" data-dt-js="54" data-dt-js-order="1,68" data-dt-show-loading="" data-dt-loading-theme="light" data-dt-loading-type="area" data-dt-loading-relative="" data-dt-loading-size="sml" > <span>Нужна помощь?</span> <svg class="footer-menu__icn" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10 6"><path fill-rule="nonzero" d="m8.69 0 1.306 1.243-3.694 3.514L4.996 6 3.69 4.757-.004 1.243 1.302 0l3.694 3.514L8.69 0Z"/></svg> </div> <div class="footer-menu__list js-footer-menu-list"> <ul> <li><a class="footer-menu__url" href="https://ru.dreamstime.com/about-stock-image-licenses" title="О наших фотографиях">О наших фотографиях</a></li> <li><a class="footer-menu__url" href="https://ru.dreamstime.com/terms" title="Правила">Правила</a></li> <li><a class="footer-menu__url" href="https://ru.dreamstime.com/contact" title="Свяжитесь с нами">Свяжитесь с нами</a></li> <li><a class="footer-menu__url" href="https://ru.dreamstime.com/faq" title="Часто задаваемые вопросы">Часто задаваемые вопросы</a></li> <li><a class="footer-menu__url" href="https://ru.dreamstime.com/sitemap" title="Карта сайта">Карта сайта</a></li> <li><a class="footer-menu__url" href="https://ru.dreamstime.com/privacy" title="Политика конфиденциальности">Политика конфиденциальности</a></li> </ul> </div> </div> </div> <div class="col-sm-3 col-6"> <div class="footer-menu__col"> <div class="footer-menu__title js-footer-menu-trigger" data-dt-id="footer-menu" data-dt-root="" data-dt-on-click="" data-dt-js="54" data-dt-js-order="1,68" data-dt-show-loading="" data-dt-loading-theme="light" data-dt-loading-type="area" data-dt-loading-relative="" data-dt-loading-size="sml" > <span>Dreamstime</span> <svg class="footer-menu__icn" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10 6"><path fill-rule="nonzero" d="m8.69 0 1.306 1.243-3.694 3.514L4.996 6 3.69 4.757-.004 1.243 1.302 0l3.694 3.514L8.69 0Z"/></svg> </div> <div class="footer-menu__list js-footer-menu-list"> <ul> <li><a class="footer-menu__url" href="https://ru.dreamstime.com/extended-stock-photography-licenses" title="Последние изображения">Последние изображения</a></li> <li><a class="footer-menu__url" href="https://ru.dreamstime.com/about" title="О нас">О нас</a></li> <li><a class="footer-menu__url" href="https://ru.dreamstime.com/media-room" title="Медиа-центр">Медиа-центр</a></li> <li><a class="footer-menu__url" href="https://ru.dreamstime.com/careers" title="Карьера в Dreamstime">Карьера</a></li> <li><a class="footer-menu__url" href="https://ru.dreamstime.com/merchandise" title="Dreamstime Товары">Товары</a></li> </ul> </div> </div> </div> <div class="col-sm-3 col-6"> <div class="footer-menu__col"> <div class="footer-menu__title js-footer-menu-trigger" data-dt-id="footer-menu" data-dt-root="" data-dt-on-click="" data-dt-js="54" data-dt-js-order="1,68" data-dt-show-loading="" data-dt-loading-theme="light" data-dt-loading-type="area" data-dt-loading-relative="" data-dt-loading-size="sml" > <span>Cообщество</span> <svg class="footer-menu__icn" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10 6"><path fill-rule="nonzero" d="m8.69 0 1.306 1.243-3.694 3.514L4.996 6 3.69 4.757-.004 1.243 1.302 0l3.694 3.514L8.69 0Z"/></svg> </div> <div class="footer-menu__list js-footer-menu-list"> <ul> <li><a class="footer-menu__url" href="https://ru.dreamstime.com/sell-stock-photos-images" title="Продавайте изображения">Продавайте изображения</a></li> <li><a class="footer-menu__url" href="https://www.dreamstime.com/boards" title="Форум">Форум</a></li> <li><a class="footer-menu__url" href="https://ru.dreamstime.com/social-networking" title="Социальный центр">Социальный центр</a></li> <li><a class="footer-menu__url" href="https://ru.dreamstime.com/upload" title="Загрузить изображение">Загрузить изображение</a></li> <li><a data-dt-id="footer-menu-api-url" data-dt-root="" data-dt-on-click="" data-dt-on-auxclick="" data-dt-on-click-preventdefault="" data-dt-js="69" class="footer-menu__url footer-menu__url--highlighted js-footer-menu-url-api" href="https://ru.dreamstime.com/dreamstime-api" title="API">API</a> <span class="footer-menu__sep">/</span> <a class="footer-menu__url footer-menu__url--highlighted" href="https://ru.dreamstime.com/affiliate-referral-program" title="Реферальная программа">Реферальная программа</a></li> <li><a class="footer-menu__url" href="https://ru.dreamstime.com/contest" title="Конкурс">Конкурс</a></li> </ul> </div> </div> </div> <div class="col-sm-3 col-6"> <div class="footer-menu__col"> <div class="footer-menu__title js-footer-menu-trigger" data-dt-id="footer-menu" data-dt-root="" data-dt-on-click="" data-dt-js="54" data-dt-js-order="1,68" data-dt-show-loading="" data-dt-loading-theme="light" data-dt-loading-type="area" data-dt-loading-relative="" data-dt-loading-size="sml" > <span>Инструменты</span> <svg class="footer-menu__icn" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10 6"><path fill-rule="nonzero" d="m8.69 0 1.306 1.243-3.694 3.514L4.996 6 3.69 4.757-.004 1.243 1.302 0l3.694 3.514L8.69 0Z"/></svg> </div> <div class="footer-menu__list js-footer-menu-list"> <ul> <li><a class="footer-menu__url" href="https://ru.dreamstime.com/corporate" title="Корпоративные аккаунты">Корпоративные аккаунты</a></li> <li><a class="footer-menu__url" href="https://ru.dreamstime.com/world-stock-photos" title="Карта мира">Карта мира</a></li> <li><a class="footer-menu__url" href="https://ru.dreamstime.com/free-photos" title="Бесплатные фото">Бесплатные фото</a></li> <li><a class="footer-menu__url" href="https://ru.dreamstime.com/photographers" title="Наши фотографы">Наши фотографы</a></li> <li><a class="footer-menu__url" href="https://ru.dreamstime.com/photo-tools" title="Инструменты для фото">Инструменты для фото</a></li> </ul> </div> </div> </div> </div> </div> </div> <div class="col-xl-3 col-sm-12"> <div class="footer-tools"> <a class="footer-tools__item" href="https://ru.dreamstime.com/affiliate-referral-program" title="Реферальная программа"> <svg class="footer-tools__icn" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20.002 19.246"><path fill="#3A7307" d="m.002 19.246 2.06-4.78a9.622 9.622 0 1 1 3.478 3.477L.002 19.246Zm7.9-13.3a2.936 2.936 0 0 0-2.813 2.221c-.533 2.16 1.321 4.593 4.961 6.507a.5.5 0 0 0 .059.026l.27.127.269-.126a.411.411 0 0 0 .06-.027c4.443-2.336 5.071-4.657 5.049-5.833V8.8a2.859 2.859 0 0 0-3.163-2.84 2.678 2.678 0 0 0-.671.156l-.02.007h-.009a2.857 2.857 0 0 0-1.246.916l-.011.013-.011.013a3.193 3.193 0 0 0-.22.337 6.438 6.438 0 0 0-.161-.22.339.339 0 0 1-.084-.078 2.885 2.885 0 0 0-2.259-1.16Z"/></svg> <span>Присоединенный филиал / промежуточный продавец</span> </a> <a class="footer-tools__item" href="https://ru.dreamstime.com/upload" title="Загружайте и продавайте фото"> <svg class="footer-tools__icn" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path fill="#3A7307" d="M10 20a10 10 0 1 1 10-10 10.011 10.011 0 0 1-10 10Zm-4.466-6v2h9v-2Zm4.5-10-3.5 3.556h1.748V12h3.5V7.556h1.75L10.031 4Z"/></svg> <i class="icn icn--upload-f"></i> <span>Загружайте и продавайте фото</span> </a> </div> </div> </div> </div> </div> <div class="footer-bottom"> <div class="container"> <div class="row"> <div class="col-lg-3 col-sm-6"> <div class="footer-social"> <div class="social-links social-links--sg social-links--mdm" data-dt-id="social-row-analytics" data-dt-root="" data-dt-on-click="" data-dt-js="57"> <a class="social-links__item social-links__item--facebook js-social-link" target="_blank" data-name="Facebook" href="https://www.facebook.com/dreamstime" rel="noopener noreferrer"> <span class="social-links__wrapper"><svg class="social-links__icn" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 8 13" width="100%" height="100%"><path fill-rule="nonzero" d="M5.043 7.07h2.064l.31-2.31H5.042V3.283c0-.67.193-1.125 1.188-1.125H7.5V.09C7.28.063 6.527 0 5.651 0 3.821 0 2.57 1.077 2.57 3.055v1.704H.5v2.31h2.069V13h2.474V7.07Z"/></svg></span> <span class="screen-reader-text">Dreamstime Facebook</span> </a> <a class="social-links__item social-links__item--twitter js-social-link" target="_blank" data-name="X" href="https://x.com/dreamstime" rel="noopener noreferrer"> <span class="social-links__wrapper"><svg class="social-links__icn" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14" width="100%" height="100%"><path fill-rule="nonzero" d="M8.054 5.928 13.092 0h-1.194L7.524 5.147 4.03 0H0l5.284 7.784L0 14h1.194l4.62-5.436L9.504 14h4.03l-5.48-8.072ZM6.42 7.852l-.535-.775L1.624.91h1.834l3.437 4.977.536.775 4.468 6.47h-1.834L6.42 7.852Z"/></svg></span> <span class="screen-reader-text">Dreamstime Twitter</span> </a> <a class="social-links__item social-links__item--pinterest js-social-link" target="_blank" data-name="Pinterest" href="https://www.pinterest.com/dreamstime/" rel="noopener noreferrer"> <span class="social-links__wrapper"><svg class="social-links__icn" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14" width="100%" height="100%"><path fill-rule="evenodd" d="M6.997 0A6.994 6.994 0 0 0 0 6.997a7 7 0 0 0 4.446 6.52c-.063-.554-.115-1.406.023-2.01.127-.548.818-3.479.818-3.479s-.208-.42-.208-1.037c0-.973.565-1.699 1.267-1.699.6 0 .887.45.887.985 0 .6-.38 1.498-.581 2.333-.167.696.35 1.267 1.036 1.267 1.244 0 2.2-1.313 2.2-3.202 0-1.676-1.204-2.845-2.925-2.845C4.97 3.83 3.8 5.32 3.8 6.865c0 .599.23 1.244.518 1.595.058.069.064.132.046.201-.052.22-.173.697-.196.795-.028.127-.103.156-.236.092-.863-.414-1.405-1.693-1.405-2.718 0-2.206 1.601-4.233 4.625-4.233 2.424 0 4.313 1.728 4.313 4.043 0 2.413-1.52 4.354-3.628 4.354-.708 0-1.376-.369-1.601-.806l-.438 1.664c-.155.61-.581 1.37-.87 1.837A7.028 7.028 0 0 0 7.004 14 6.997 6.997 0 0 0 14 7.003C13.994 3.133 10.861 0 6.997 0"/></svg></span> <span class="screen-reader-text">Dreamstime Pinterest</span> </a> <a class="social-links__item social-links__item--instagram js-social-link" target="_blank" data-name="Instagram" href="https://www.instagram.com/dreamstime" rel="noopener noreferrer"> <span class="social-links__wrapper"><svg class="social-links__icn" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14" width="100%" height="100%"><path fill-rule="evenodd" d="M7.883.005c1.119.003 1.39.014 2 .042.745.033 1.254.152 1.699.325.46.179.85.418 1.24.807.388.389.627.78.806 1.24.173.444.292.953.325 1.698.03.645.04.91.042 2.195v1.38c-.001.88-.007 1.281-.02 1.654l-.005.172-.017.37c-.033.744-.152 1.253-.325 1.698a3.43 3.43 0 0 1-.807 1.24 3.43 3.43 0 0 1-1.24.807c-.444.173-.953.29-1.698.325l-.37.016-.171.006c-.373.013-.775.018-1.654.02h-1.38c-1.285-.003-1.55-.013-2.195-.042-.745-.034-1.254-.152-1.699-.325a3.43 3.43 0 0 1-1.24-.808 3.43 3.43 0 0 1-.807-1.239c-.173-.445-.29-.954-.325-1.699-.028-.61-.038-.88-.041-2v-1.77c.003-1.119.013-1.39.041-2 .034-.745.152-1.254.325-1.699.18-.46.418-.85.808-1.24A3.43 3.43 0 0 1 2.414.373C2.859.199 3.368.08 4.113.047c.61-.028.88-.039 2-.042Zm-.64 1.26h-.716l-.398.001c-.732.002-1.09.007-1.427.018l-.168.006-.364.016c-.682.031-1.053.145-1.3.241-.326.127-.56.279-.804.523a2.168 2.168 0 0 0-.523.805c-.096.247-.21.617-.241 1.3-.006.134-.012.25-.016.364l-.006.168c-.012.336-.017.695-.018 1.426v.399l-.001.47v.869c.002.732.007 1.09.019 1.427l.006.168.016.364c.03.682.145 1.053.24 1.3.128.326.28.56.524.804.245.245.478.396.805.523.246.096.617.21 1.3.241l.363.016.168.006c.365.013.755.017 1.618.019h1.356a50.112 50.112 0 0 0 1.617-.019l.168-.006.364-.016c.683-.03 1.053-.145 1.3-.24.327-.128.56-.28.805-.524.244-.245.396-.478.523-.805.096-.246.21-.617.24-1.3l.017-.363.006-.168c.012-.365.017-.755.018-1.618V6.324a50.118 50.118 0 0 0-.018-1.617l-.006-.168-.016-.364c-.031-.683-.145-1.053-.241-1.3a2.168 2.168 0 0 0-.523-.805 2.168 2.168 0 0 0-.805-.523c-.247-.096-.617-.21-1.3-.24a61.756 61.756 0 0 0-.364-.017l-.168-.006a44.89 44.89 0 0 0-1.426-.018h-.869Zm-.26 2.152a3.593 3.593 0 1 1 0 7.187 3.593 3.593 0 0 1 0-7.187Zm0 1.26a2.333 2.333 0 1 0 0 4.666 2.333 2.333 0 0 0 0-4.665Zm3.746-2.233a.84.84 0 1 1 0 1.68.84.84 0 0 1 0-1.68Z"/></svg></span> <span class="screen-reader-text">Dreamstime Instagram</span> </a> <a class="social-links__item social-links__item--linkedin js-social-link" target="_blank" data-name="LinkedIn" href="https://www.linkedin.com/company/dreamstime" rel="noopener noreferrer"> <span class="social-links__wrapper"><svg class="social-links__icn" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14" width="100%" height="100%"><path fill-rule="evenodd" d="M11.93 11.93H9.855V8.68c0-.774-.015-1.77-1.08-1.77-1.08 0-1.245.843-1.245 1.715v3.305H5.455V5.249h1.992v.912h.027c.277-.525.955-1.079 1.965-1.079 2.103 0 2.49 1.384 2.49 3.183v3.665ZM3.114 4.335a1.204 1.204 0 1 1 0-2.408 1.204 1.204 0 0 1 0 2.408ZM2.076 11.93h2.076V5.249H2.076v6.68ZM12.964 0H1.034C.463 0 0 .452 0 1.01v11.98C0 13.547.463 14 1.033 14h11.93c.572 0 1.037-.453 1.037-1.01V1.01C14 .451 13.535 0 12.964 0Z"/></svg></span> <span class="screen-reader-text">Dreamstime Linkedin</span> </a> <a class="social-links__item social-links__item--youtube js-social-link" target="_blank" data-name="Youtube" href="https://www.youtube.com/@dreamstime?sub_confirmation=1" rel="noopener noreferrer"> <span class="social-links__wrapper"><svg class="social-links__icn" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 17 11" width="100%" height="100%"><path fill-rule="evenodd" d="M8.29.001c.501.003 1.603.013 2.745.052l.49.018c1.142.047 2.243.126 2.743.257.69.181 1.232.714 1.416 1.39.298 1.089.33 3.23.334 3.693v.178c-.003.463-.036 2.604-.334 3.693a1.987 1.987 0 0 1-1.416 1.39c-1.107.29-5.163.324-6.075.328h-.367c-.912-.004-4.969-.038-6.075-.328a1.987 1.987 0 0 1-1.416-1.39C.05 8.238.007 6.228 0 5.656v-.312c.006-.572.049-2.582.334-3.626A1.987 1.987 0 0 1 1.75.328c.5-.131 1.6-.21 2.743-.257l.49-.018C6.125.013 7.227.003 7.728 0ZM6.461 3.234v4.714l4.162-2.357L6.46 3.234Z"/></svg></span> <span class="screen-reader-text">Dreamstime Youtube</span> </a> </div> </div> </div> <div class="col-lg-3 order-lg-3 col-sm-6"> <div class="footer-language"> <div class="language-select"> <label class="language-select__label" for="footer-lang-select"> Язык </label> <button class="language-select__btn js-lang-select-trigger" id="footer-lang-select" type="button" aria-haspopup="menu" aria-expanded="false" aria-label="Переключить модальное окно выбора языка" data-loading-theme="light" data-dt-id="footer-lang-select" data-dt-root="" data-dt-on-click="" data-dt-js="70"> <span class="language-select__flag" aria-hidden="true"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 21 14"><g fill="none" fill-rule="evenodd"><path fill="#FFF" d="M0 0h21v4.5H0z"/><path fill="#0039A6" d="M0 4.5h21v5H0z"/><path fill="#D52B1E" d="M0 9.5h21V14H0z"/></g></svg> </span> <span class="language-select__lang">Pусский</span> <span class="language-select__icon js-lang-select-icon" aria-hidden="true"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 6 10"><path fill-rule="nonzero" d="M-.003 8.694 1.24 10l3.515-3.694L5.997 5 4.755 3.694 1.24 0-.003 1.306 3.511 5-.003 8.694Z"/></svg> </span> </button> </div> </div> </div> <div class="col-lg-6 order-lg-2 col-sm-12"> <div class="footer-copy"> Авторское право © 2000-2026 Dreamstime. Все права защищены. </div> </div> </div> </div> </div> </footer> <template data-state="hidden" data-dt-id="form-switch" data-dt-root="" data-dt-on-ready="" data-dt-js="71"></template> <template data-dt-id="item-similars-link" data-dt-root="" data-dt-css="58,72" data-dt-js="60" data-dt-js-order="61,62,63,73" ></template> <template class="js-item-lightbox-add-btn-config" data-aria-label-add="Добавить в лайтбокс" data-aria-label-remove="Удалить из лайтбокса" data-dt-id="item-lightbox-btn" data-dt-root="" data-dt-css="58,72,45,46" data-dt-js="60,54,29,30,55" data-dt-js-order="61,62,63,74,75" ></template> <script type="application/ld+json"> [{ "@context":"https://schema.org", "@type":"WebSite", "url":"https://ru.dreamstime.com/", "potentialAction":{ "@type":"SearchAction", "target":"https://ru.dreamstime.com/search.php?srh_field={search_term}&s_all=y&s_ph=y&s_il=y&s_video=y&s_audio=y", "query-input":"required name=search_term" } }, { "@context":"https://schema.org", "@type":"Organization", "name":"Dreamstime", "url":"https://ru.dreamstime.com/", "logo":"https://ru.dreamstime.com/img/logo-dreamstime-400x102.png", "sameAs":[ "https://www.facebook.com/dreamstime", "https://x.com/dreamstime", "https://www.pinterest.com/dreamstime/", "https://www.instagram.com/dreamstime/", "https://www.linkedin.com/company/dreamstime", "https://www.youtube.com/@dreamstime?sub_confirmation=1" ] } ] </script><script type="application/ld+json"> { "@context": "https://schema.org", "@type": "ItemList", "itemListElement": [ { "@context":"https://schema.org", "@type":"ListItem", "position": 1, "name":"\u0413\u043e\u043b\u043e\u0432\u0430 \u0440\u043e\u0431\u043e\u0442\u0430 \u0441 \u0438\u043a\u043e\u043d\u043a\u043e\u0439 \u0442\u0435\u0433\u043e\u0432 \u043a\u043e\u0434\u0430 \u043d\u0430 \u043b\u0438\u0446\u0435, \u0441\u0438\u043c\u0432\u043e\u043b\u0438\u0437\u0438\u0440\u0443\u044e\u0449\u0430\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0438\u043b\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0443", "url": "https://ru.dreamstime.com/голова-робота-с-иконкой-тегов-кода-на-лице-символизирующая-image469064528" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 2, "name":"\u0422\u0438\u043f \u0433\u0430\u0440\u043d\u0438\u0442\u0443\u0440\u044b \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0439 \u043f\u043b\u0430\u0442\u044b ", "url": "https://ru.dreamstime.com/тип-гарнитуры-системной-платы-системная-плата-шрифт-печатная-psb-image387800606" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 3, "name":"\u041c\u0438\u043d\u0438\u043c\u0430\u043b\u0438\u0441\u0442\u0438\u0447\u043d\u0430\u044f \u0446\u0438\u0444\u0440\u043e\u0432\u0430\u044f \u0438\u043a\u043e\u043d\u043a\u0430, \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0430\u044f \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0444\u0430\u0439\u043b\u0430 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d\u0435", "url": "https://ru.dreamstime.com/минималистичная-цифровая-иконка-представляющая-процесс-загрузки-image457787093" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 4, "name":"\u041c\u0430\u043a\u0440\u043e\u0441\u044a\u0435\u043c\u043a\u0430 \u043f\u043e\u0432\u0435\u0440\u0445\u043d\u043e\u0441\u0442\u0438 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u043e\u0433\u043e \u043c\u0438\u043a\u0440\u043e\u0447\u0438\u043f\u0430", "url": "https://ru.dreamstime.com/макросъемка-поверхности-компьютерного-микрочипа-image421472838" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 5, "name":"Set of Flat Vector Illustrations Programming Code Symbols Business Success and Financial Growth", "url": "https://ru.dreamstime.com/set-flat-vector-illustrations-programming-code-symbols-business-success-financial-growth-image470166999" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 6, "name":"\u0412\u0435\u043a\u0442\u043e\u0440\u043d\u0430\u044f \u0438\u043b\u043b\u044e\u0441\u0442\u0440\u0430\u0446\u0438\u044f \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043e\u0448\u0438\u0431\u043e\u043a \u0438 \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u0441\u0430\u0439\u0442\u0430 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u043e\u0439 \u043a\u043e\u043c\u043c\u0435\u0440\u0446\u0438\u0438 \u0434\u043b\u044f \u0431\u0430\u043d\u043d\u0435\u0440\u0430 \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b", "url": "https://ru.dreamstime.com/векторная-иллюстрация-исправления-ошибок-и-технической-поддержки-image470615102" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 7, "name":"Software Development Debugging and Music Audio Processing Vector Illustration Landing Page Set", "url": "https://ru.dreamstime.com/software-development-debugging-music-audio-processing-vector-illustration-landing-page-set-image477524556" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 8, "name":"\u0426\u0432\u0435\u0442\u043d\u044b\u0439 \u041a\u043e\u0434 \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b", "url": "https://ru.dreamstime.com/код-цветной-программы-закрытие-цветного-кода-компьютерной-на-экране-image412115896" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 9, "name":"\u041d\u0430\u0431\u043e\u0440 \u0432\u0435\u043a\u0442\u043e\u0440\u043d\u044b\u0445 \u0438\u043b\u043b\u044e\u0441\u0442\u0440\u0430\u0446\u0438\u0439 \u043d\u0430 \u0442\u0435\u043c\u0443 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041f\u041e \u0438 \u043d\u0430\u0443\u0447\u043d\u044b\u0445 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0439 \u0434\u043b\u044f \u0431\u0430\u043d\u043d\u0435\u0440\u0430 \u0432\u0435\u0431-\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b", "url": "https://ru.dreamstime.com/набор-векторных-иллюстраций-на-тему-разработки-по-и-научных-image471662709" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 10, "name":"\u0424\u043e\u043d \u0433\u0440\u0430\u0434\u0438\u0435\u043d\u0442\u0430 \u0438\u0437 \u043d\u0435\u043e\u043d\u043e\u0432\u043e\u0433\u043e \u0446\u0438\u0430\u043d-\u0437\u0435\u043b\u0435\u043d\u043e\u0433\u043e \u0434\u0432\u043e\u0438\u0447\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u0432 \u0446\u0438\u043a\u043b\u0435", "url": "https://ru.dreamstime.com/фон-градиента-из-неонового-циан-зеленого-двоичного-кода-в-цикле-image414752583" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 11, "name":"\u0422\u0435\u043c\u043d\u043e-\u0441\u0438\u043d\u0438\u0439 \u0413\u043b\u0443\u0431\u043e\u043a\u0438\u0439 \u0414\u0432\u043e\u0438\u0447\u043d\u044b\u0439 \u041a\u043e\u0434 \u0426\u0438\u0444\u0440\u043e\u0432\u043e\u0439 \u0424\u043e\u043d", "url": "https://ru.dreamstime.com/темно-синий-глубокий-двоичный-код-цифровой-фон-динамичная-графика-в-image414752649" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 12, "name":"\u0412\u0435\u043a\u0442\u043e\u0440\u043d\u0430\u044f \u0438\u043b\u043b\u044e\u0441\u0442\u0440\u0430\u0446\u0438\u044f \u043e\u0442\u043b\u0430\u0434\u043a\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f \u0438 \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u043d\u0435\u0438\u0441\u043f\u0440\u0430\u0432\u043d\u043e\u0441\u0442\u0435\u0439 \u0434\u043b\u044f \u0431\u0430\u043d\u043d\u0435\u0440\u0430 \u0432\u0435\u0431-\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b", "url": "https://ru.dreamstime.com/векторная-иллюстрация-отладки-программного-обеспечения-и-image467424148" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 13, "name":"Fingerprint Biometric Authentication and Web Development Coding Landing Page Banner Illustration", "url": "https://ru.dreamstime.com/fingerprint-biometric-authentication-web-development-coding-landing-page-banner-illustration-image467852631" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 14, "name":"Developer working late at night on a laptop with glowing code on screen", "url": "https://ru.dreamstime.com/developer-working-late-night-laptop-glowing-code-screen-image457425904" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 15, "name":"\u043f\u0430\u0434\u0430\u044e\u0449\u0438\u0439 \u0446\u0438\u0444\u0440\u043e\u0432\u043e\u0439 \u0434\u0432\u043e\u0438\u0447\u043d\u044b\u0439 \u043a\u043e\u0434, \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0444\u043e\u043d \u0441 \u043d\u043e\u043c\u0435\u0440\u043e\u043c \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430", "url": "https://ru.dreamstime.com/падающий-цифровой-двоичный-код-технологический-фон-с-номером-image443221543" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 16, "name":"\u0421\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0439 \u043d\u043e\u0443\u0442\u0431\u0443\u043a, \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u044e\u0449\u0438\u0439 \u043a\u043e\u0434 \u043d\u0430 \u0434\u0435\u0440\u0435\u0432\u044f\u043d\u043d\u043e\u043c \u0441\u0442\u043e\u043b\u0435 \u0441 \u043d\u0430\u0441\u0442\u043e\u043b\u044c\u043d\u043e\u0439 \u043b\u0430\u043c\u043f\u043e\u0439 \u0438 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u043e\u043c", "url": "https://ru.dreamstime.com/современный-ноутбук-отображающий-код-на-деревянном-столе-с-настольной-image456739183" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 17, "name":"3D-\u0441\u0438\u043c\u0432\u043e\u043b \u043a\u0440\u0430\u0441\u043d\u044b\u0445 \u0444\u0438\u0433\u0443\u0440\u043d\u044b\u0445 \u0441\u043a\u043e\u0431\u043e\u043a \u043d\u0430 \u0441\u0435\u0440\u043e\u043c \u0444\u043e\u043d\u0435", "url": "https://ru.dreamstime.com/d-символ-красных-фигурных-скобок-на-сером-фоне-image419118043" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 18, "name":"\u041d\u0430\u0431\u043e\u0440 \u0431\u0430\u043d\u043d\u0435\u0440\u043e\u0432 \u0434\u043b\u044f \u0446\u0435\u043b\u0435\u0432\u044b\u0445 \u0441\u0442\u0440\u0430\u043d\u0438\u0446 \u043f\u043e \u0432\u0435\u0431-\u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0438 \u0444\u0438\u043d\u0430\u043d\u0441\u043e\u0432\u043e\u043c\u0443 \u0440\u043e\u0441\u0442\u0443 \u0441 HTML-\u043a\u043e\u0434\u043e\u043c \u0438 \u0438\u043a\u043e\u043d\u043a\u0430\u043c\u0438 \u0432\u0430\u043b\u044e\u0442\u043d\u044b\u0445 \u043c\u043e\u043d\u0435\u0442", "url": "https://ru.dreamstime.com/набор-баннеров-для-целевых-страниц-по-веб-разработке-и-финансовому-image475749639" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 19, "name":"\u041d\u0430\u0431\u043e\u0440 \u0446\u0435\u043b\u0435\u0432\u044b\u0445 \u0441\u0442\u0440\u0430\u043d\u0438\u0446 \u0434\u043b\u044f \u0432\u0435\u0431-\u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0438 \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0441 \u043a\u043e\u0434\u043e\u043c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0433\u0440\u0430\u0444\u0438\u043a\u0430\u043c\u0438 \u0440\u043e\u0441\u0442\u0430 \u0431\u0438\u0437\u043d\u0435\u0441\u0430", "url": "https://ru.dreamstime.com/набор-целевых-страниц-для-веб-разработки-и-анализа-данных-с-кодом-image475836571" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 20, "name":"\u0418\u043a\u043e\u043d\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u0430, \u0447\u0435\u0440\u043d\u044b\u0439 \u0432\u0435\u043a\u0442\u043e\u0440, \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043d\u0430 \u0431\u0435\u043b\u043e\u043c", "url": "https://ru.dreamstime.com/иконка-программиста-черный-вектор-изолированный-на-белом-image462810071" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 21, "name":"\u041a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f \u0441 \u0432\u0435\u043a\u0442\u043e\u0440\u043d\u043e\u0439 \u0438\u043b\u043b\u044e\u0441\u0442\u0440\u0430\u0446\u0438\u0435\u0439 \u0441\u043b\u043e\u043d\u0430 PHP \u0438 \u0434\u0435\u043b\u044c\u0444\u0438\u043d\u0430 MySQL", "url": "https://ru.dreamstime.com/концепция-разработки-программного-обеспечения-с-векторной-image470608755" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 22, "name":"A green screen with a lot of lines and numbers", "url": "https://ru.dreamstime.com/green-screen-lot-lines-numbers-image443392216" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 23, "name":"\u0421\u0432\u0435\u0442\u043b\u043e-\u0433\u043e\u043b\u0443\u0431\u043e\u0439 \u0431\u0435\u043b\u044b\u0439 \u0434\u0432\u043e\u0438\u0447\u043d\u044b\u0439 \u043a\u043e\u0434, \u0430\u0431\u0441\u0442\u0440\u0430\u043a\u0442\u043d\u044b\u0439 \u0444\u043e\u043d \u0434\u0430\u043d\u043d\u044b\u0445", "url": "https://ru.dreamstime.com/светло-голубой-белый-двоичный-код-абстрактный-фон-данных-image414752608" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 24, "name":"Web Development E-commerce Concept with Shopping Cart and HTML Code Icon for Landing Page Banner", "url": "https://ru.dreamstime.com/web-development-e-commerce-concept-shopping-cart-html-code-icon-landing-page-banner-image473580464" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 25, "name":"\u041e\u043a\u043d\u043e \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430 \u0441 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u043c \u043a\u043e\u0434\u0430, \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u043c \u0431\u0430\u043a\u0442\u0435\u0440\u0438\u044f\u043c\u0438 \u0432\u0438\u0440\u0443\u0441\u0430", "url": "https://ru.dreamstime.com/окно-браузера-с-символом-кода-окруженным-бактериями-вируса-image455447783" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 26, "name":"\u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u0442 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u044e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u0438, \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u044f\u044e\u0449\u0443\u044e \u0438\u043d\u0442\u0435\u043b\u043b\u0435\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u0430\u0433\u0435\u043d\u0442\u043e\u0432, \u043a\u043e\u0434 \u0438 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b.", "url": "https://ru.dreamstime.com/изображает-технологию-автоматизации-объединяющую-интеллектуальных-image478883035" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 27, "name":"Minimal line style collection of programming icons designed for web and mobile apps.", "url": "https://ru.dreamstime.com/minimal-line-style-collection-programming-icons-designed-web-mobile-apps-image468209883" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 28, "name":"\u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442 \u043f\u0438\u0448\u0435\u0442 \u043a\u043e\u0434 \u043d\u0430 \u043d\u043e\u0443\u0442\u0431\u0443\u043a\u0435 \u0432 \u0442\u0435\u043c\u043d\u043e\u0439 \u043a\u043e\u043c\u043d\u0430\u0442\u0435", "url": "https://ru.dreamstime.com/программист-пишет-код-на-ноутбуке-в-темной-комнате-image388335062" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 29, "name":"\u0412\u0435\u043a\u0442\u043e\u0440\u043d\u0430\u044f \u0438\u043b\u043b\u044e\u0441\u0442\u0440\u0430\u0446\u0438\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043a\u0438\u0431\u0435\u0440\u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u0441 \u0437\u0430\u043c\u043a\u043e\u043c \u0438 \u0441\u0438\u043c\u0432\u043e\u043b\u0430\u043c\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u0434\u043b\u044f \u0432\u0435\u0431-\u0434\u0438\u0437\u0430\u0439\u043d\u0430", "url": "https://ru.dreamstime.com/векторная-иллюстрация-программирования-кибербезопасности-с-замком-и-image469371091" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 30, "name":"\u041a\u043e\u0433\u043d\u0438\u0442\u0438\u0432\u043d\u044b\u0439 \u0445\u0430\u043e\u0441 \u2014 \u0434\u0435\u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043f\u0430\u0442\u0442\u0435\u0440\u043d \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0445 \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442\u043e\u0432 \u0438 \u0446\u0438\u0444\u0440\u043e\u0432\u043e\u0439 \u044d\u043d\u0442\u0440\u043e\u043f\u0438\u0438. \u041f\u0435\u0440\u0441\u043f\u0435\u043a\u0442\u0438\u0432\u0430", "url": "https://ru.dreamstime.com/когнитивный-хаос-—-децентрализованный-паттерн-бинарных-фрагментов-и-image455155926" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 31, "name":"\u041d\u0435\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u043b\u043e\u0433\u0438\u043a\u0430 \u2014 \u0434\u0435\u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u0435 \u043f\u043e\u043b\u0435 \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0445 \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442\u043e\u0432 \u0438 \u0446\u0438\u0444\u0440\u043e\u0432\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u044d\u043d\u0442\u0440\u043e\u043f\u0438\u0438. \u041f\u0435\u0440\u0441\u043f\u0435\u043a\u0442\u0438\u0432\u0430", "url": "https://ru.dreamstime.com/неструктурированная-логика-—-децентрализованное-поле-бинарных-image455155986" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 32, "name":"\u0412\u0435\u043a\u0442\u043e\u0440\u043d\u0430\u044f \u0438\u043b\u043b\u044e\u0441\u0442\u0440\u0430\u0446\u0438\u044f \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u0439 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u043e\u0442\u043b\u0430\u0434\u043a\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u0434\u0438\u0437\u0430\u0439\u043d\u0430 \u0431\u0430\u043d\u043d\u0435\u0440\u0430 \u0432\u0435\u0431-\u043b\u0435\u043d\u0434\u0438\u043d\u0433\u0430", "url": "https://ru.dreamstime.com/векторная-иллюстрация-концепций-программирования-и-отладки-image470201688" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 33, "name":"\u0424\u0443\u0442\u0443\u0440\u0438\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043d\u043e\u0443\u0442\u0431\u0443\u043a\u0438 \u0441 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043c \u0446\u0438\u0444\u0440\u043e\u0432\u043e\u0433\u043e \u043a\u043e\u0434\u0430", "url": "https://ru.dreamstime.com/футуристические-ноутбуки-с-отображением-цифрового-кода-image464115161" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 34, "name":"\u0420\u043e\u0431\u043e\u0442 \u0441 \u0418\u0418 \u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u0442 \u0433\u0440\u0430\u0444\u0438\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 HTML-\u043a\u043e\u0434", "url": "https://ru.dreamstime.com/робот-с-ии-анализирует-графики-данных-и-html-код-image478704367" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 35, "name":"\u041e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0445 \u043e\u0448\u0438\u0431\u043e\u043a|\u041f\u043e\u0438\u0441\u043a \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438|\u0410\u043d\u0430\u043b\u0438\u0437 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430|\u041b\u043e\u0433\u043e\u0442\u0438\u043f \u043e\u0442\u043b\u0430\u0434\u043a\u0438 \u041f\u041e", "url": "https://ru.dreamstime.com/обнаружение-программных-ошибок-поиск-безопасности-анализ-image466807112" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 36, "name":"\u0418\u043a\u043e\u043d\u043a\u0430 \u043b\u0443\u043f\u044b \u0434\u043b\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043a\u043e\u0434\u0430 \u0438 \u043e\u0442\u043b\u0430\u0434\u043a\u0438", "url": "https://ru.dreamstime.com/иконка-лупы-для-проверки-кода-и-отладки-image422840895" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 37, "name":"\u0413\u043b\u0443\u0431\u043e\u043a\u0438\u0439 \u0438\u043d\u0434\u0438\u0433\u043e-\u0441\u0438\u043d\u0438\u0439 \u0434\u0432\u043e\u0438\u0447\u043d\u044b\u0439 \u043a\u043e\u0434 \u0437\u0430\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0444\u043e\u043d", "url": "https://ru.dreamstime.com/глубокий-индиго-синий-двоичный-код-зашифрованные-данные-фон-image414752508" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 38, "name":"\u041a\u043e\u0433\u043d\u0438\u0442\u0438\u0432\u043d\u044b\u0439 \u0425\u0430\u043e\u0441 \u2013 \u0414\u0435\u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0443\u0437\u043e\u0440 \u0438\u0437 \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0445 \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442\u043e\u0432 \u0438 \u0446\u0438\u0444\u0440\u043e\u0432\u043e\u0439 \u044d\u043d\u0442\u0440\u043e\u043f\u0438\u0438. \u041f\u0435\u0440\u0441\u043f\u0435\u043a\u0442\u0438\u0432\u0430", "url": "https://ru.dreamstime.com/когнитивный-хаос-децентрализованный-узор-из-бинарных-фрагментов-и-image450324225" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 39, "name":"\u041d\u0430\u0431\u043e\u0440 \u0432\u0435\u043a\u0442\u043e\u0440\u043d\u044b\u0445 \u0438\u043b\u043b\u044e\u0441\u0442\u0440\u0430\u0446\u0438\u0439 \u043d\u0430 \u0442\u0435\u043c\u0443 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f \u0438 \u0430\u0432\u0442\u043e\u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0445 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0439 \u0434\u043b\u044f \u0434\u0438\u0437\u0430\u0439\u043d\u0430 \u0432\u0435\u0431-\u043b\u0435\u043d\u0434\u0438\u043d\u0433\u043e\u0432", "url": "https://ru.dreamstime.com/набор-векторных-иллюстраций-на-тему-разработки-программного-image467426174" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 40, "name":"\u041d\u0430\u0431\u043e\u0440 \u043b\u0438\u043d\u0435\u0439\u043d\u044b\u0445 \u0438\u043a\u043e\u043d\u043e\u043a \u0434\u043b\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432 \u0432 \u043e\u0431\u043b\u0430\u0441\u0442\u0438 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u044b\u0445 \u043d\u0430\u0443\u043a", "url": "https://ru.dreamstime.com/набор-линейных-иконок-для-программирования-и-разработки-программного-image476820138" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 41, "name":"\u042d\u043a\u0440\u0430\u043d \u043d\u043e\u0443\u0442\u0431\u0443\u043a\u0430 \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041f\u041e \u0441 \u043a\u043e\u0434\u043e\u043c \u0438 \u0447\u0430\u0448\u043a\u043e\u0439 \u043a\u043e\u0444\u0435 \u0440\u044f\u0434\u043e\u043c", "url": "https://ru.dreamstime.com/экран-ноутбука-для-разработки-по-с-кодом-и-чашкой-кофе-рядом-image453198646" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 42, "name":"Digital Pillars - Symmetrical Binary Data Stream Gradient on Deep Teal Background", "url": "https://ru.dreamstime.com/digital-pillars-symmetrical-binary-data-stream-gradient-deep-teal-background-image439334368" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 43, "name":"Digital Pillars - Symmetrical Binary Data Stream Gradient on Deep Teal Background", "url": "https://ru.dreamstime.com/digital-pillars-symmetrical-binary-data-stream-gradient-deep-teal-background-image439334428" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 44, "name":"Technology Icons Line Vector Illustration Set", "url": "https://ru.dreamstime.com/technology-icons-line-vector-illustration-set-image459686802" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 45, "name":"Abstract Blue Code Background with Light Rays", "url": "https://ru.dreamstime.com/abstract-blue-code-background-light-rays-image448884476" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 46, "name":"\u0416\u0435\u043d\u0449\u0438\u043d\u0430-\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442, \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0430\u044f \u0437\u0430 \u043d\u043e\u0443\u0442\u0431\u0443\u043a\u043e\u043c", "url": "https://ru.dreamstime.com/женщина-программист-работающая-за-ноутбуком-иллюстрация-женщины-image413304335" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 47, "name":"\u0412\u0435\u043a\u0442\u043e\u0440\u043d\u044b\u0439 \u0437\u043d\u0430\u0447\u043e\u043a \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438. \u0417\u043d\u0430\u043a \u0438\u043b\u043b\u044e\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u0421\u0438\u043c\u0432\u043e\u043b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f. \u041b\u043e\u0433\u043e\u0442\u0438\u043f \u043a\u043e\u0434\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c", "url": "https://ru.dreamstime.com/векторный-значок-разработки-знак-иллюстрации-программирования-символ-image455480978" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 48, "name":"\u0412\u0435\u043a\u0442\u043e\u0440\u043d\u044b\u0439 \u0437\u043d\u0430\u0447\u043e\u043a \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438. \u0417\u043d\u0430\u043a \u0438\u043b\u043b\u044e\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u0421\u0438\u043c\u0432\u043e\u043b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f. \u041b\u043e\u0433\u043e\u0442\u0438\u043f \u043a\u043e\u0434\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c", "url": "https://ru.dreamstime.com/векторный-значок-разработки-знак-иллюстрации-программирования-символ-image455480977" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 49, "name":"\u0412\u0435\u043a\u0442\u043e\u0440\u043d\u044b\u0439 \u0437\u043d\u0430\u0447\u043e\u043a \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438. \u0417\u043d\u0430\u043a \u0438\u043b\u043b\u044e\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u0421\u0438\u043c\u0432\u043e\u043b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f. \u041b\u043e\u0433\u043e\u0442\u0438\u043f \u043a\u043e\u0434\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c", "url": "https://ru.dreamstime.com/векторный-значок-разработки-знак-иллюстрации-программирования-символ-image455480986" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 50, "name":"\u0412\u0435\u043a\u0442\u043e\u0440\u043d\u044b\u0439 \u0437\u043d\u0430\u0447\u043e\u043a \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438. \u0417\u043d\u0430\u043a \u0438\u043b\u043b\u044e\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u0421\u0438\u043c\u0432\u043e\u043b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f. \u041b\u043e\u0433\u043e\u0442\u0438\u043f \u043a\u043e\u0434\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c", "url": "https://ru.dreamstime.com/векторный-значок-разработки-знак-иллюстрации-программирования-символ-image455480997" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 51, "name":"Development icon vector. Programming Illustration sign. Software developer symbol. Program code logo.", "url": "https://ru.dreamstime.com/development-icon-vector-programming-illustration-sign-software-developer-symbol-program-code-logo-image457131343" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 52, "name":"Development icon vector. Programming Illustration sign. Software developer symbol. Program code logo.", "url": "https://ru.dreamstime.com/development-icon-vector-programming-illustration-sign-software-developer-symbol-program-code-logo-image457131387" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 53, "name":"Development icon vector. Programming Illustration sign. Software developer symbol. Program code logo.", "url": "https://ru.dreamstime.com/development-icon-vector-programming-illustration-sign-software-developer-symbol-program-code-logo-image457131328" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 54, "name":"Development icon vector. Programming Illustration sign. Software developer symbol. Program code logo.", "url": "https://ru.dreamstime.com/development-icon-vector-programming-illustration-sign-software-developer-symbol-program-code-logo-image457131366" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 55, "name":"Development icon vector. Programming Illustration sign. Software developer symbol. Program code logo.", "url": "https://ru.dreamstime.com/development-icon-vector-programming-illustration-sign-software-developer-symbol-program-code-logo-image457131290" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 56, "name":"Development icon vector. Programming Illustration sign. Software developer symbol. Program code logo.", "url": "https://ru.dreamstime.com/development-icon-vector-programming-illustration-sign-software-developer-symbol-program-code-logo-image457131304" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 57, "name":"Development icon vector. Programming Illustration sign. Software developer symbol. Program code logo.", "url": "https://ru.dreamstime.com/development-icon-vector-programming-illustration-sign-software-developer-symbol-program-code-logo-image457131402" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 58, "name":"\u0412\u0435\u043a\u0442\u043e\u0440 \u0438\u043a\u043e\u043d\u043a\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438. \u0417\u043d\u0430\u043a \u0438\u043b\u043b\u044e\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u0421\u0438\u043c\u0432\u043e\u043b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u041f\u041e. \u041b\u043e\u0433\u043e\u0442\u0438\u043f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430.", "url": "https://ru.dreamstime.com/вектор-иконки-разработки-знак-иллюстрации-программирования-символ-image456619029" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 59, "name":"\u0412\u0435\u043a\u0442\u043e\u0440\u043d\u044b\u0439 \u0437\u043d\u0430\u0447\u043e\u043a \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438. \u0417\u043d\u0430\u043a \u0438\u043b\u043b\u044e\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u0421\u0438\u043c\u0432\u043e\u043b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f. \u041b\u043e\u0433\u043e\u0442\u0438\u043f \u043a\u043e\u0434\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c", "url": "https://ru.dreamstime.com/векторный-значок-разработки-знак-иллюстрации-программирования-символ-image456618859" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 60, "name":"\u0412\u0435\u043a\u0442\u043e\u0440\u043d\u044b\u0439 \u0437\u043d\u0430\u0447\u043e\u043a \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438. \u0417\u043d\u0430\u043a \u0438\u043b\u043b\u044e\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u0421\u0438\u043c\u0432\u043e\u043b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f. \u041b\u043e\u0433\u043e\u0442\u0438\u043f \u043a\u043e\u0434\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c", "url": "https://ru.dreamstime.com/векторный-значок-разработки-знак-иллюстрации-программирования-символ-image456618807" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 61, "name":"\u0412\u0435\u043a\u0442\u043e\u0440\u043d\u044b\u0439 \u0437\u043d\u0430\u0447\u043e\u043a \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438. \u0417\u043d\u0430\u043a \u0438\u043b\u043b\u044e\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u0421\u0438\u043c\u0432\u043e\u043b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f. \u041b\u043e\u0433\u043e\u0442\u0438\u043f \u043a\u043e\u0434\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c", "url": "https://ru.dreamstime.com/векторный-значок-разработки-знак-иллюстрации-программирования-символ-image456618949" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 62, "name":"\u0412\u0435\u043a\u0442\u043e\u0440 \u0438\u043a\u043e\u043d\u043a\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438. \u0418\u043b\u043b\u044e\u0441\u0442\u0440\u0430\u0446\u0438\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u0421\u0438\u043c\u0432\u043e\u043b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u041f\u041e. \u041b\u043e\u0433\u043e\u0442\u0438\u043f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430.", "url": "https://ru.dreamstime.com/вектор-иконки-разработки-иллюстрация-программирования-символ-image456619177" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 63, "name":"\u0412\u0435\u043a\u0442\u043e\u0440 \u0438\u043a\u043e\u043d\u043a\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438. \u0418\u043b\u043b\u044e\u0441\u0442\u0440\u0430\u0446\u0438\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u0421\u0438\u043c\u0432\u043e\u043b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u041f\u041e. \u041b\u043e\u0433\u043e\u0442\u0438\u043f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430.", "url": "https://ru.dreamstime.com/вектор-иконки-разработки-иллюстрация-программирования-символ-image456764487" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 64, "name":"\u0412\u0435\u043a\u0442\u043e\u0440 \u0438\u043a\u043e\u043d\u043a\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438. \u0417\u043d\u0430\u043a \u0438\u043b\u043b\u044e\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. \u0421\u0438\u043c\u0432\u043e\u043b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u041f\u041e. \u041b\u043e\u0433\u043e\u0442\u0438\u043f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430.", "url": "https://ru.dreamstime.com/вектор-иконки-разработки-знак-иллюстрации-программирования-символ-image456764478" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 65, "name":"Infographic review variety icon vector outline symbol", "url": "https://ru.dreamstime.com/infographic-review-variety-icon-vector-outline-symbol-image459664487" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 66, "name":"\u0412\u0435\u043a\u0442\u043e\u0440\u043d\u0430\u044f \u0438\u043a\u043e\u043d\u043a\u0430 \u0432\u0435\u043a\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u0442\u0435\u043a\u0441\u0442\u0430 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0418\u0418. \u0422\u0435\u043c\u043d\u043e-\u043a\u043e\u0440\u0438\u0447\u043d\u0435\u0432\u044b\u0439 \u0443\u0433\u043e\u043b\u044c\u043d\u044b\u0439 \u044d\u0441\u043a\u0438\u0437", "url": "https://ru.dreamstime.com/векторная-иконка-векторизации-текста-с-помощью-ии-темно-коричневый-image437496126" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 67, "name":"\u041f\u0440\u0435\u0434\u0430\u043d\u043d\u044b\u0439 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442 \u043f\u0438\u0448\u0435\u0442 \u043a\u043e\u0434 \u0434\u043e \u043f\u043e\u0437\u0434\u043d\u0435\u0439 \u043d\u043e\u0447\u0438", "url": "https://ru.dreamstime.com/преданный-программист-пишет-код-до-поздней-ночи-крупный-план-image415938722" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 68, "name":"\u041c\u043e\u043d\u0438\u0442\u043e\u0440 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0430 \u0441 HTML-\u043a\u043e\u0434\u043e\u043c \u0438 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043c \u0433\u043e\u0440", "url": "https://ru.dreamstime.com/монитор-компьютера-с-html-кодом-и-изображением-гор-image461385037" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 69, "name":"\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u0438\u0437\u0443\u0447\u0430\u0435\u0442 \u043a\u043e\u0434 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043b\u0443\u043f\u044b", "url": "https://ru.dreamstime.com/разработчик-изучает-код-с-помощью-лупы-image426597078" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 70, "name":"\u041f\u0440\u0435\u0434\u0430\u043d\u043d\u0430\u044f \u0441\u0432\u043e\u0435\u043c\u0443 \u0434\u0435\u043b\u0443 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u043a\u0430, \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0430\u044f \u0434\u043e\u043f\u043e\u0437\u0434\u043d\u0430 \u043d\u043e\u0447\u044c\u044e", "url": "https://ru.dreamstime.com/выделенная-женщина-программист-работает-поздно-ночью-сосредоточенная-image407788608" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 71, "name":"\u0412\u0435\u0431-\u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430", "url": "https://ru.dreamstime.com/веб-разработка-image423029472" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 72, "name":"\u0413\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0434\u0438\u0437\u0430\u0439\u043d \u0438\u043a\u043e\u043d\u043a\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0441\u0442\u0430. \u0432\u0435\u043a\u0442\u043e\u0440\u043d\u044b\u0435 \u0432\u0435\u0431-\u0438\u043a\u043e\u043d\u043a\u0438", "url": "https://ru.dreamstime.com/графический-дизайн-иконки-программиста-векторные-веб-image461695650" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 73, "name":"\u0422\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438 \u2014 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u043e\u0442\u043b\u0430\u0434\u043a\u0438 \u043a\u043e\u0434\u0430 \u043d\u0430 \u0431\u0430\u0437\u0435 \u0418\u0418 \u0441 \u043a\u0440\u0430\u0441\u043d\u043e\u0439 \u0438\u043a\u043e\u043d\u043a\u043e\u0439 \u0436\u0443\u043a\u0430 \u043d\u0430 \u0442\u0435\u043c\u043d\u043e\u043c \u044d\u043a\u0440\u0430\u043d\u0435 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0430 \u043a\u043e\u0434\u0430", "url": "https://ru.dreamstime.com/технологии-—-интерфейс-отладки-кода-на-базе-ии-с-красной-иконкой-жука-image459349330" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 74, "name":"Black and white code icon showing a terminal window with command prompt and lines of text", "url": "https://ru.dreamstime.com/black-white-code-icon-showing-terminal-window-command-prompt-lines-text-image482330818" } ] } </script><script id="json-html-share-modal-tpl" type="application/json">{"html":"<template class=\"js-modal-share-tpl\">\n <div\n class=\"modal js-modal js-modal-share modal--share\" aria-hidden=\"true\" data-state=\"closed\" data-name=\"share\" data-template=\"share\">\n <div class=\"modal__overlay js-modal-overlay\" tabindex=\"-1\">\n <div\n class=\"modal__container js-modal-container\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby=\"modal-share-title\"\n >\n\n <header class=\"modal__header js-modal-header\">\n <h2\n class=\"modal__title js-modal-title\"\n id=\"modal-share-title\"\n >\u041f\u043e\u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f \u044d\u0442\u043e\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435\u0439<\/h2>\n \n <button\n class=\"close-btn close-btn--big close-btn--l-grey js-close-btn modal__close js-modal-close-icon js-modal-close-trigger\" type=\"button\" aria-label=\"\u0417\u0430\u043a\u0440\u044b\u0442\u044c\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 10 10\"><path d=\"M3.511 5 0 8.511 1.489 10 5 6.489 8.511 10 10 8.511 6.489 5 10 1.489 8.511 0 5 3.511 1.489 0 0 1.489z\"\/><\/svg><\/button>\n <\/header>\n \n <div class=\"modal__content js-modal-content\">\n <div class=\"share-list\">\n <div\n class=\"share-list social-links social-links--ss social-links--huge\" data-dt-id=\"social-row-analytics\" data-dt-root=\"\" data-dt-on-click=\"\" data-dt-js=\"57\">\n <a class=\"social-links__item social-links__item--facebook js-social-link\" data-name=\"Facebook\" href=\"https:\/\/www.facebook.com\/sharer\/sharer.php?u=https%3A%2F%2Fru.dreamstime.com%2Fillustration%2Fscript-coding.html%3Fpg%3D82&description=%D0%A1%D0%BA%D0%B0%D1%87%D0%B0%D1%82%D1%8C+Script+Coding+%D0%97%D0%B0%D0%BF%D0%B5%D1%87%D0%B0%D1%82%D0%BB%D0%B8%D1%82%D0%B5+%D1%84%D0%BE%D1%82%D0%BE%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D0%B8+%D0%B8%D0%B7+Dreamstime+%D0%92%D0%B7%D0%B3%D0%BB%D1%8F%D0%BD%D0%B8%D1%82%D0%B5+%D0%BD%D0%B0+%D1%8D%D1%82%D0%B8+%D1%83%D0%B4%D0%B8%D0%B2%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5+%D0%B1%D0%B5%D1%81%D0%BF%D0%BB%D0%B0%D1%82%D0%BD%D1%8B%D0%B5+%D0%B8%D0%BB%D0%B8+%D0%B1%D0%B5%D1%81%D1%86%D0%B2%D0%B5%D1%82%D0%BD%D1%8B%D0%B5+%D1%84%D0%BE%D1%82%D0%BE%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D0%B8+%D0%BD%D0%B0+Dreamstime.\" rel=\"noopener noreferrer\" target=\"_blank\">\n <span class=\"social-links__wrapper\"><svg class=\"social-links__icn\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 8 13\" width=\"100%\" height=\"100%\"><path fill-rule=\"nonzero\" d=\"M5.043 7.07h2.064l.31-2.31H5.042V3.283c0-.67.193-1.125 1.188-1.125H7.5V.09C7.28.063 6.527 0 5.651 0 3.821 0 2.57 1.077 2.57 3.055v1.704H.5v2.31h2.069V13h2.474V7.07Z\"\/><\/svg><\/span>\n <span class=\"screen-reader-text\">Facebook<\/span>\n <\/a>\n <a class=\"social-links__item social-links__item--twitter js-social-link\" data-name=\"X\" href=\"https:\/\/x.com\/intent\/post?related=dreamstime&text=%D0%A1%D0%BA%D0%B0%D1%87%D0%B0%D1%82%D1%8C+Script+Coding+%D0%97%D0%B0%D0%BF%D0%B5%D1%87%D0%B0%D1%82%D0%BB%D0%B8%D1%82%D0%B5+%D1%84%D0%BE%D1%82%D0%BE%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D0%B8+%D0%B8%D0%B7+Dreamstime+%D0%92%D0%B7%D0%B3%D0%BB%D1%8F%D0%BD%D0%B8%D1%82%D0%B5+%D0%BD%D0%B0+%D1%8D%D1%82%D0%B8+%D1%83%D0%B4%D0%B8%D0%B2%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5+%D0%B1%D0%B5%D1%81%D0%BF%D0%BB%D0%B0%D1%82%D0%BD%D1%8B%D0%B5+%D0%B8%D0%BB%D0%B8+%D0%B1%D0%B5%D1%81%D1%86%D0%B2%D0%B5%D1%82%D0%BD%D1%8B%D0%B5+%D1%84%D0%BE%D1%82%D0%BE%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D0%B8+%D0%BD%D0%B0+Dreamstime.&url=https%3A%2F%2Fru.dreamstime.com%2Fillustration%2Fscript-coding.html%3Fpg%3D82\" rel=\"noopener noreferrer\" target=\"_blank\">\n <span class=\"social-links__wrapper\"><svg class=\"social-links__icn\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 14 14\" width=\"100%\" height=\"100%\"><path fill-rule=\"nonzero\" d=\"M8.054 5.928 13.092 0h-1.194L7.524 5.147 4.03 0H0l5.284 7.784L0 14h1.194l4.62-5.436L9.504 14h4.03l-5.48-8.072ZM6.42 7.852l-.535-.775L1.624.91h1.834l3.437 4.977.536.775 4.468 6.47h-1.834L6.42 7.852Z\"\/><\/svg><\/span>\n <span class=\"screen-reader-text\">X<\/span>\n <\/a>\n <a class=\"social-links__item social-links__item--linkedin js-social-link\" data-name=\"LinkedIn\" href=\"https:\/\/www.linkedin.com\/shareArticle?mini=true&url=https%3A%2F%2Fru.dreamstime.com%2Fillustration%2Fscript-coding.html%3Fpg%3D82&summary=%D0%A1%D0%BA%D0%B0%D1%87%D0%B0%D1%82%D1%8C+Script+Coding+%D0%97%D0%B0%D0%BF%D0%B5%D1%87%D0%B0%D1%82%D0%BB%D0%B8%D1%82%D0%B5+%D1%84%D0%BE%D1%82%D0%BE%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D0%B8+%D0%B8%D0%B7+Dreamstime+%D0%92%D0%B7%D0%B3%D0%BB%D1%8F%D0%BD%D0%B8%D1%82%D0%B5+%D0%BD%D0%B0+%D1%8D%D1%82%D0%B8+%D1%83%D0%B4%D0%B8%D0%B2%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5+%D0%B1%D0%B5%D1%81%D0%BF%D0%BB%D0%B0%D1%82%D0%BD%D1%8B%D0%B5+%D0%B8%D0%BB%D0%B8+%D0%B1%D0%B5%D1%81%D1%86%D0%B2%D0%B5%D1%82%D0%BD%D1%8B%D0%B5+%D1%84%D0%BE%D1%82%D0%BE%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D0%B8+%D0%BD%D0%B0+Dreamstime.\" rel=\"noopener noreferrer\" target=\"_blank\">\n <span class=\"social-links__wrapper\"><svg class=\"social-links__icn\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 14 14\" width=\"100%\" height=\"100%\"><path fill-rule=\"evenodd\" d=\"M11.93 11.93H9.855V8.68c0-.774-.015-1.77-1.08-1.77-1.08 0-1.245.843-1.245 1.715v3.305H5.455V5.249h1.992v.912h.027c.277-.525.955-1.079 1.965-1.079 2.103 0 2.49 1.384 2.49 3.183v3.665ZM3.114 4.335a1.204 1.204 0 1 1 0-2.408 1.204 1.204 0 0 1 0 2.408ZM2.076 11.93h2.076V5.249H2.076v6.68ZM12.964 0H1.034C.463 0 0 .452 0 1.01v11.98C0 13.547.463 14 1.033 14h11.93c.572 0 1.037-.453 1.037-1.01V1.01C14 .451 13.535 0 12.964 0Z\"\/><\/svg><\/span>\n <span class=\"screen-reader-text\">LinkedIn<\/span>\n <\/a>\n <a class=\"social-links__item social-links__item--pinterest js-social-link\" data-name=\"Pinterest\" href=\"http:\/\/www.pinterest.com\/pin\/create\/button\/?url=https%3A%2F%2Fru.dreamstime.com%2Fillustration%2Fscript-coding.html%3Fpg%3D82&media=https%3A%2F%2Fthumbs.dreamstime.com%2Fb%2F%D0%B3%D0%BE%D0%BB%D0%BE%D0%B2%D0%B0-%D1%80%D0%BE%D0%B1%D0%BE%D1%82%D0%B0-%D1%81-%D0%B8%D0%BA%D0%BE%D0%BD%D0%BA%D0%BE%D0%B9-%D1%82%D0%B5%D0%B3%D0%BE%D0%B2-%D0%BA%D0%BE%D0%B4%D0%B0-%D0%BD%D0%B0-%D0%BB%D0%B8%D1%86%D0%B5-%D1%81%D0%B8%D0%BC%D0%B2%D0%BE%D0%BB%D0%B8%D0%B7%D0%B8%D1%80%D1%83%D1%8E%D1%89%D0%B0%D1%8F-469064528.jpg&description=%D0%A1%D0%BA%D0%B0%D1%87%D0%B0%D1%82%D1%8C+Script+Coding+%D0%97%D0%B0%D0%BF%D0%B5%D1%87%D0%B0%D1%82%D0%BB%D0%B8%D1%82%D0%B5+%D1%84%D0%BE%D1%82%D0%BE%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D0%B8+%D0%B8%D0%B7+Dreamstime+%D0%92%D0%B7%D0%B3%D0%BB%D1%8F%D0%BD%D0%B8%D1%82%D0%B5+%D0%BD%D0%B0+%D1%8D%D1%82%D0%B8+%D1%83%D0%B4%D0%B8%D0%B2%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5+%D0%B1%D0%B5%D1%81%D0%BF%D0%BB%D0%B0%D1%82%D0%BD%D1%8B%D0%B5+%D0%B8%D0%BB%D0%B8+%D0%B1%D0%B5%D1%81%D1%86%D0%B2%D0%B5%D1%82%D0%BD%D1%8B%D0%B5+%D1%84%D0%BE%D1%82%D0%BE%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D0%B8+%D0%BD%D0%B0+Dreamstime.\" rel=\"noopener noreferrer\" target=\"_blank\">\n <span class=\"social-links__wrapper\"><svg class=\"social-links__icn\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 14 14\" width=\"100%\" height=\"100%\"><path fill-rule=\"evenodd\" d=\"M6.997 0A6.994 6.994 0 0 0 0 6.997a7 7 0 0 0 4.446 6.52c-.063-.554-.115-1.406.023-2.01.127-.548.818-3.479.818-3.479s-.208-.42-.208-1.037c0-.973.565-1.699 1.267-1.699.6 0 .887.45.887.985 0 .6-.38 1.498-.581 2.333-.167.696.35 1.267 1.036 1.267 1.244 0 2.2-1.313 2.2-3.202 0-1.676-1.204-2.845-2.925-2.845C4.97 3.83 3.8 5.32 3.8 6.865c0 .599.23 1.244.518 1.595.058.069.064.132.046.201-.052.22-.173.697-.196.795-.028.127-.103.156-.236.092-.863-.414-1.405-1.693-1.405-2.718 0-2.206 1.601-4.233 4.625-4.233 2.424 0 4.313 1.728 4.313 4.043 0 2.413-1.52 4.354-3.628 4.354-.708 0-1.376-.369-1.601-.806l-.438 1.664c-.155.61-.581 1.37-.87 1.837A7.028 7.028 0 0 0 7.004 14 6.997 6.997 0 0 0 14 7.003C13.994 3.133 10.861 0 6.997 0\"\/><\/svg><\/span>\n <span class=\"screen-reader-text\">Pinterest<\/span>\n <\/a>\n <a class=\"social-links__item social-links__item--whatsapp js-social-link\" data-name=\"WhatsApp\" href=\"https:\/\/api.whatsapp.com\/send\/?phone&text=https%3A%2F%2Fru.dreamstime.com%2Fillustration%2Fscript-coding.html%3Fpg%3D82\" rel=\"noopener noreferrer\" target=\"_blank\">\n <span class=\"social-links__wrapper\"><svg class=\"social-links__icn\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 13.995 13.996\" width=\"100%\" height=\"100%\"><path fill-rule=\"nonzero\" d=\"M10.204 8.387c-.174-.087-1.03-.506-1.19-.564-.16-.058-.275-.086-.392.087-.116.173-.45.564-.55.68-.102.115-.204.13-.378.043-.174-.087-.735-.27-1.4-.86a5.224 5.224 0 0 1-.969-1.2c-.102-.174-.01-.268.076-.354.079-.078.175-.203.262-.304.087-.101.116-.173.174-.289.058-.116.029-.217-.015-.304-.043-.086-.392-.94-.537-1.286-.141-.338-.285-.292-.391-.298a7.017 7.017 0 0 0-.334-.006.641.641 0 0 0-.464.217c-.16.173-.61.593-.61 1.446s.624 1.677.711 1.792c.087.116 1.228 1.866 2.975 2.617.415.178.74.285.992.365.417.132.797.113 1.097.069.334-.05 1.03-.42 1.175-.824.145-.405.145-.752.102-.824-.044-.073-.16-.116-.334-.203m-3.177 4.317h-.002a5.804 5.804 0 0 1-2.948-.803l-.212-.125-2.192.572.585-2.127-.137-.218a5.73 5.73 0 0 1-.886-3.068c.001-3.178 2.6-5.764 5.794-5.764 1.547 0 3.002.601 4.095 1.69A5.716 5.716 0 0 1 12.82 6.94c-.001 3.178-2.6 5.764-5.792 5.764m4.93-10.67A6.94 6.94 0 0 0 7.026 0C3.186 0 .06 3.111.058 6.935c0 1.222.32 2.415.93 3.467L0 13.996l3.694-.965a6.989 6.989 0 0 0 3.33.845h.003c3.84 0 6.967-3.112 6.968-6.936a6.877 6.877 0 0 0-2.039-4.906\"\/><\/svg><\/span>\n <span class=\"screen-reader-text\">WhatsApp<\/span>\n <\/a>\n <a class=\"social-links__item social-links__item--blogger js-social-link\" data-name=\"Blogger\" href=\"https:\/\/www.blogger.com\/blog-this.g?u=https%3A%2F%2Fru.dreamstime.com%2Fillustration%2Fscript-coding.html%3Fpg%3D82&t=%D0%A1%D0%BA%D0%B0%D1%87%D0%B0%D1%82%D1%8C+Script+Coding+%D0%97%D0%B0%D0%BF%D0%B5%D1%87%D0%B0%D1%82%D0%BB%D0%B8%D1%82%D0%B5+%D1%84%D0%BE%D1%82%D0%BE%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D0%B8+%D0%B8%D0%B7+Dreamstime+%D0%92%D0%B7%D0%B3%D0%BB%D1%8F%D0%BD%D0%B8%D1%82%D0%B5+%D0%BD%D0%B0+%D1%8D%D1%82%D0%B8+%D1%83%D0%B4%D0%B8%D0%B2%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5+%D0%B1%D0%B5%D1%81%D0%BF%D0%BB%D0%B0%D1%82%D0%BD%D1%8B%D0%B5+%D0%B8%D0%BB%D0%B8+%D0%B1%D0%B5%D1%81%D1%86%D0%B2%D0%B5%D1%82%D0%BD%D1%8B%D0%B5+%D1%84%D0%BE%D1%82%D0%BE%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D0%B8+%D0%BD%D0%B0+Dreamstime.\" rel=\"noopener noreferrer\" target=\"_blank\">\n <span class=\"social-links__wrapper\"><svg class=\"social-links__icn\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 14 14\" width=\"100%\" height=\"100%\"><path fill-rule=\"evenodd\" d=\"M13.999 9.48c0 2.496-2.038 4.52-4.55 4.52H4.55C2.037 14 0 11.976 0 9.48V4.52C0 2.025 2.037 0 4.55 0h2.297c2.513 0 4.55 2.024 4.55 4.52l.001.01c.033.47.427.84.908.84h.784c.502 0 .91.404.91.904l-.001 3.205ZM7.014 3.665H4.437a.872.872 0 0 0-.874.869c0 .48.391.869.874.869h2.577a.872.872 0 0 0 .875-.869.872.872 0 0 0-.875-.869Zm2.59 5.089H4.433a.825.825 0 0 0-.827.822c0 .454.37.822.827.822h5.173a.825.825 0 0 0 .827-.822.825.825 0 0 0-.827-.822Z\"\/><\/svg><\/span>\n <span class=\"screen-reader-text\">Blogger<\/span>\n <\/a>\n <a class=\"social-links__item social-links__item--tumblr js-social-link\" data-name=\"Tumblr\" href=\"https:\/\/www.tumblr.com\/share?u=https%3A%2F%2Fru.dreamstime.com%2Fillustration%2Fscript-coding.html%3Fpg%3D82&caption=Script+Coding+%D0%A4%D0%BE%D1%82%D0%BE%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D0%B8+%D0%B8%D0%B7+Dreamstime\" rel=\"noopener noreferrer\" target=\"_blank\">\n <span class=\"social-links__wrapper\"><svg class=\"social-links__icn\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 8 14\" width=\"100%\" height=\"100%\"><path fill-rule=\"evenodd\" d=\"M8 14H5.64c-2.125 0-3.709-1.083-3.709-3.675v-4.15H0V3.928C2.125 3.38 3.014 1.569 3.116 0h2.207v3.563h2.575v2.612H5.323V9.79c0 1.083.552 1.458 1.43 1.458H8V14Z\"\/><\/svg><\/span>\n <span class=\"screen-reader-text\">Tumblr<\/span>\n <\/a>\n <a class=\"social-links__item social-links__item--reddit js-social-link\" data-name=\"Reddit\" href=\"https:\/\/www.reddit.com\/submit?url=https%3A%2F%2Fru.dreamstime.com%2Fillustration%2Fscript-coding.html%3Fpg%3D82&title=Script+Coding+%D0%A4%D0%BE%D1%82%D0%BE%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D0%B8+%D0%B8%D0%B7+Dreamstime\" rel=\"noopener noreferrer\" target=\"_blank\">\n <span class=\"social-links__wrapper\"><svg class=\"social-links__icn\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 16 14\" width=\"100%\" height=\"100%\"><path fill-rule=\"evenodd\" d=\"M10.75 9.58c-.69 0-1.251-.552-1.251-1.229s.56-1.228 1.25-1.228S12 7.673 12 8.35a1.24 1.24 0 0 1-1.25 1.228m.22 2.017c-.854.837-2.49.902-2.97.902-.482 0-2.117-.065-2.97-.902a.314.314 0 0 1 0-.45.328.328 0 0 1 .459 0c.538.528 1.688.716 2.51.716.823 0 1.974-.188 2.513-.716a.329.329 0 0 1 .458 0 .314.314 0 0 1 0 .45M3.996 8.35c0-.677.561-1.228 1.251-1.228.69 0 1.25.55 1.25 1.228a1.24 1.24 0 0 1-1.25 1.228c-.69 0-1.25-.551-1.25-1.228M16 7.123c0-.95-.784-1.72-1.75-1.72-.473 0-.9.185-1.215.483-1.197-.848-2.846-1.396-4.683-1.459L9.15.742l2.606.544c.032.65.574 1.17 1.245 1.17.69 0 1.25-.55 1.25-1.228A1.24 1.24 0 0 0 13.001 0c-.492 0-.913.28-1.117.685L8.974.078a.315.315 0 0 0-.37.237l-.891 4.111c-1.864.05-3.54.6-4.751 1.457a1.76 1.76 0 0 0-1.211-.48C.784 5.403 0 6.173 0 7.123 0 7.82.425 8.42 1.035 8.69a3.32 3.32 0 0 0-.042.52c0 2.646 3.135 4.79 7.003 4.79C11.864 14 15 11.856 15 9.21a3.33 3.33 0 0 0-.042-.516A1.718 1.718 0 0 0 16 7.123\"\/><\/svg><\/span>\n <span class=\"screen-reader-text\">Reddit<\/span>\n <\/a>\n <a class=\"social-links__item social-links__item--mail js-social-link\" data-name=\"Email\" href=\"mailto:?subject=Script%20Coding%20%D0%98%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F%20%D0%B8%D0%B7%20Dreamstime&body=%D0%AD%D0%B9%21%20%D0%AF%20%D0%BD%D0%B0%D1%88%D1%91%D0%BB%20%D0%BD%D0%B5%D1%81%D0%BA%D0%BE%D0%BB%D1%8C%D0%BA%D0%BE%20%D1%83%D0%B4%D0%B8%D0%B2%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D1%85%20%D1%84%D0%BE%D1%82%D0%BE%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D0%B9%2C%20%D1%81%D0%B2%D1%8F%D0%B7%D0%B0%D0%BD%D0%BD%D1%8B%D1%85%20Script%20Coding%20%D0%BD%D0%B0%20Dreamstime.%20%D0%9F%D0%BE%D1%81%D0%BC%D0%BE%D1%82%D1%80%D0%B8%D1%82%D0%B5%3A%20https%3A%2F%2Fru.dreamstime.com%2Fillustration%2Fscript-coding.html%3Fpg%3D82\" rel=\"noopener noreferrer\" target=\"_blank\">\n <span class=\"social-links__wrapper\"><svg class=\"social-links__icn\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 14 10\" width=\"100%\" height=\"100%\"><path fill-rule=\"evenodd\" d=\"M2.873 4.935 0 2.062v5.746l2.873-2.873Zm8.254 0L14 7.808V2.062l-2.873 2.873Zm-7.665.682L.004 9.076A1 1 0 0 0 1 10h12a1 1 0 0 0 .996-.924l-3.458-3.459-2.536 2.536A1.407 1.407 0 0 1 7 8.568c-.379 0-.734-.148-1.002-.415L3.462 5.617ZM13.975.779 7.413 7.341a.597.597 0 0 1-.825 0L.025.78A1 1 0 0 1 1 0h12a1 1 0 0 1 .975.78Z\"\/><\/svg><\/span>\n <span class=\"screen-reader-text\">Email<\/span>\n <\/a>\n<\/div>\n <\/div>\n <div\n class=\"copy-line js-copy-line\"\n>\n <div class=\"copy-line__icon\">\n <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"14\" height=\"14\"><path fill=\"#656565\" fill-rule=\"evenodd\" d=\"M4.59 4.412a3.69 3.69 0 0 1 2.631-.282c1.263.328 2.06 1.466 2.195 1.67l.02.032-1.415 1.36s-.163-.828-1.01-1.185c-1.068-.45-1.785.155-1.912.275l-.02.02s-.595.585-1.251 1.239l-.608.607c-.543.546-1.013 1.027-1.084 1.129-.197.286-.76 1.739.382 2.536 1.28.893 2.454-.135 2.454-.135l.932-.933s.287.124.825.207c.538.084 1.491.049 1.491.049s-2.026 2.022-2.186 2.146c-.16.123-.532.5-1.102.681-.829.263-3.452.54-4.522-1.758-1.225-2.63.686-4.388.686-4.388l2.727-2.727c-.001 0 .569-.44.767-.543ZM7.81.953c.497-.594 3.208-1.884 5.114.148 2.306 2.574.191 4.98.191 4.98L11.262 7.96l-.047.045c-.236.233-1.315 1.289-1.54 1.415-1.605.893-2.487.607-3.451.281-.988-.333-1.693-1.488-1.693-1.488l1.39-1.36s.082.562.679.968c1.293.88 2.358-.162 2.358-.162l2.717-2.731s1.049-1.421-.035-2.51c-1.274-1.282-2.522-.171-2.682-.018l-.018.018-.894.899S7.738 3.17 7 3.037a3.215 3.215 0 0 0-1.243.01l-.032.009.045-.045.052-.052.254-.253C6.67 2.114 7.807.976 7.81.953Z\"\/><\/svg> <\/div>\n <div class=\"copy-line__content\">\n <span class=\"js-copy-line-content\">https:\/\/ru.dreamstime.com\/illustration\/script-coding.html?pg=82<\/span>\n <\/div>\n <button\n type=\"button\"\n class=\"copy-line__btn btn btn--green btn--big js-copy-line-btn\"\n data-tooltip-copied-txt=\"\u0421\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u0432 \u0431\u0443\u0444\u0435\u0440 \u043e\u0431\u043c\u0435\u043d\u0430!\"\n data-dt-id=\"copy-line\" data-dt-root=\"\" data-dt-on-click=\"\" data-dt-show-loading=\"\" data-dt-loading-type=\"btn\" data-dt-loading-theme=\"dark\" data-dt-css=\"58,59\" data-dt-js=\"60\" data-dt-js-order=\"61,62,63,64\" >\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0441\u044b\u043b\u043a\u0443<\/button>\n<\/div>\n <\/div>\n\n \n <\/div>\n <\/div>\n<\/div>\n<\/template>\n"}</script> <script id="modal-deps" type="application/json">{"deps":{"css":"45,46","js":"54,29,30,55"}}</script> <script id="lang-select" type="application/json">{"langLinks":{"en":"https:\/\/www.dreamstime.com\/illustration\/script-coding.html","pt":"https:\/\/pt.dreamstime.com\/illustration\/script-coding.html","de":"https:\/\/de.dreamstime.com\/illustration\/scripting.html","es":"https:\/\/es.dreamstime.com\/illustration\/script-coding.html","it":"https:\/\/it.dreamstime.com\/illustration\/script-coding.html","nl":"https:\/\/www.dreamstime.com\/nl\/illustration\/script-coding.html","fr":"https:\/\/fr.dreamstime.com\/illustration\/script-coding.html","ru":"https:\/\/ru.dreamstime.com\/illustration\/script-coding.html","gr":"https:\/\/gr.dreamstime.com\/illustration\/script-coding.html","cn":"https:\/\/cn.dreamstime.com\/illustration\/script-coding.html","pl":"https:\/\/pl.dreamstime.com\/illustration\/script-coding.html","se":"https:\/\/se.dreamstime.com\/illustration\/script-coding.html","ro":"https:\/\/ro.dreamstime.com\/illustration\/script-coding.html","sk":"https:\/\/sk.dreamstime.com\/illustration\/script-coding.html","cz":"https:\/\/cz.dreamstime.com\/illustration\/script-coding.html","jp":"https:\/\/www.dreamstime.com\/jp\/illustration\/script-coding.html","kr":"https:\/\/www.dreamstime.com\/kr\/illustration\/script-coding.html","ar":"https:\/\/ar.dreamstime.com\/illustration\/script-coding.html","hi":"https:\/\/hi.dreamstime.com\/illustration\/script-coding.html","tr":"https:\/\/tr.dreamstime.com\/illustration\/script-coding.html","id":"https:\/\/id.dreamstime.com\/illustration\/script-coding.html","dk":"https:\/\/dk.dreamstime.com\/illustration\/script-coding.html","no":"https:\/\/www.dreamstime.com\/no\/illustration\/script-coding.html","he":"https:\/\/www.dreamstime.com\/he\/illustration\/script-coding.html"},"modalUrl":"https:\/\/ru.dreamstime.com\/new\/components\/LanguageSelect\/modal_init.ajax.php"}</script> <noscript><iframe src="//www.googletagmanager.com/ns.html?id=GTM-PT44P2" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <script> const DT = { memberId: null, isAuth: false, usePrefetchWorker: true, prefetchWorkerUrl: '/new/js/prefetch_worker.min.js', useFetchPriority: true, cssVersion: 1283, jsVersion: 166205, cdnUrl: 'https://front.dreamstime.com/', siteUrl: 'https://ru.dreamstime.com/', isDev: false, isRtl: false, isLtr: false, enableLog: false, assetsBasePath: 'new/process-assets/', ajaxBase: 'https://ru.dreamstime.com/new/', componentsBasePath: 'https://ru.dreamstime.com/new/components/', _loadedScriptsOnce: {'js/scheduler_polyfill.js': true,'js/scheduler.js': true,'js/core.js': true,'js/ui.js': true,'js/dt_loader.js': true,'pages/pages.js': true,'components/Toast/init.js': true,'components/PasswordShow/PasswordShow.js': true,'components/Search/puzzle_paste.js': true,'templates/header/SearchAutocomplete/SearchAutocomplete.js': true,'components/Banner/banner.js': true,'templates/search/filters/filters_search_functions.js': true,'pages/search/sort_same_url.js': true,'components/SearchListing/swipe_title.js': true,'components/SearchListing/drag.js': true,'components/Modal/init.js': true,'js/ajax_html.js': true,'components/LightboxBar/init.js': true,'https://client.px-cloud.net/PX2e972lwZ/main.min.js': true,'https://www.googletagmanager.com/gtm.js?id=GTM-PT44P2': true}, _loadedStyleSheetsOnce: {'css/core.css': true,'templates/header.css': true,'templates/header/header_not-logged.css': true,'components/PasswordShow/PasswordShow.css': true,'templates/header/header_menu.css': true,'templates/header/header_no-hero.css': true,'components/Search/Search.css': true,'components/Search/search_dropdown.css': true,'components/Select/Select_default.css': true,'components/Dropdown/Dropdown.css': true,'components/Dropdown/Dropdown_right.css': true,'components/Dropdown/Dropdown_btm.css': true,'templates/header/header_sticky.css': true,'pages/search/search.css': true,'components/Banner/FreeTrial/FreeTrial.css': true,'components/Banner/Default/Default.css': true,'components/Banner/Default/Default_big.css': true,'components/Banner/FreeTrial/FreeTrial_container.css': true,'components/Breadcrumbs/Breadcrumbs.css': true,'components/Swiper/Swiper.css': true,'components/Swiper/Swiper_fading.css': true,'components/CloseButton/CloseButton.css': true,'templates/search/filters/OptionGroup/OptionGroup.css': true,'components/Form/FormCheckbox.css': true,'templates/search/filters/ButtonList.css': true,'components/Form/FormInput.css': true,'components/Form/FormColor.css': true,'components/Form/FormSelect.css': true,'components/Form/FormSwitch.css': true,'components/SearchListing/SearchListing.css': true,'components/SearchListing/SearchIcons.css': true,'components/SearchListing/SearchListingItem.css': true,'components/SearchListing/SearchListingItemLoggedOut.css': true,'components/SearchListing/swipe_title.css': true,'components/SearchListing/rounded_corners.css': true,'components/SearchListing/SimilarsLink.css': true,'components/SearchListing/LightboxButton/LightboxButton.css': true,'components/Pagination/NextPageButton.css': true,'components/Pagination/Pagination.css': true,'components/Pagination/PaginationList.css': true,'pages/search/share_button.css': true,'components/Share/Button/Button.css': true,'templates/footer.css': true,'components/SocialRow/SocialRow.css': true,'components/SocialRow/SocialRow_sg.css': true,'components/SocialRow/SocialRow_mdm.css': true,'components/LanguageSelect/LanguageSelect.css': true}, components: {}, /* DT old site constants */ fullCpage: 'search.php', cpage: 'search', securitycheck: '3c1e583bc816eafdf4bfcc928f2027ba', cacheDriver: 'ap', }; var securitycheck = '3c1e583bc816eafdf4bfcc928f2027ba'; var isRtl = false; var isLtr = false; try { DT.htmlLazyDeps = {"1":"js\/breakpoints.js","2":"templates\/header\/header_login.js","3":"js\/register.js","4":"js\/functions_cookie.js","5":"js\/pwd_strength.js","6":"components\/Popup\/Popup.js","7":"components\/Popup\/PopupSignup\/PopupSignup.js","8":"js\/jquery.js","9":"js\/plugins\/tooltipster.bundle.min.js","10":"css\/plugins\/tooltipster.bundle.min.css","11":"css\/plugins\/tooltipster.themes.css","12":"components\/Popup\/PopupSignup\/PopupSignup.css","13":"js\/functions_auth.js","14":"templates\/header\/header_not-logged.init.js","15":"templates\/header\/login.js","16":"templates\/header\/header_mobile_menu.js","17":"templates\/header\/header_sticky.js","18":"js\/plugins\/hermite.js","19":"js\/lang_cts.js.php?l=ru","20":"js\/plugins\/puzzle.js","21":"components\/Search\/Search.js","22":"components\/Search\/clear_input.js","23":"components\/Dropdown\/Dropdown.js","24":"components\/Dropdown\/Dropdown.init.js","25":"components\/Select\/Select.js","26":"components\/Select\/Select.init.js","27":"templates\/header\/SearchAutocomplete\/SearchAutocomplete2.css","28":"templates\/header\/SearchAutocomplete\/SearchAutocomplete_desktop.css","29":"js\/http.js","30":"js\/ajax_html.js","31":"components\/Swiper\/Swiper.js","32":"components\/Swiper\/Swiper.init.js","33":"templates\/search\/filters\/filters_search_functions.js","34":"templates\/search\/filters\/filters_search.js","35":"templates\/search\/filters\/filters_search_content_filters.js","36":"templates\/search\/filters\/filters.css","37":"templates\/search\/filters\/filters_search_people.js","38":"templates\/search\/filters\/filters_search_media.js","39":"components\/Form\/FormColor.js","40":"templates\/search\/filters\/filters_search_withinresults.js","41":"templates\/search\/filters\/filters_search_options.js","42":"templates\/search\/filters\/filters_search_safesearch.js","43":"components\/SearchListing\/SearchListingNew.js","44":"components\/Pagination\/NextPageButton.js","45":"components\/CloseButton\/CloseButton.css","46":"components\/Modal\/Modal.css","47":"components\/CopyLine\/CopyLine.css","48":"components\/CopyLine\/CopyLine_grey.css","49":"components\/CopyLine\/CopyLine_icon.css","50":"components\/Share\/Modal\/Modal.css","51":"components\/SocialRow\/SocialRow.css","52":"components\/SocialRow\/SocialRow_ss.css","53":"components\/SocialRow\/SocialRow_huge.css","54":"js\/animation.js","55":"components\/Modal\/Modal.js","56":"components\/Share\/Button\/Button.js","57":"components\/SocialRow\/SocialRow.js","58":"components\/Tooltip\/Tooltip.css","59":"components\/Tooltip\/Tooltip_green.css","60":"templates\/get_header_offset.js","61":"js\/floating_ui.js","62":"components\/Tooltip\/Tooltip.js","63":"components\/Tooltip\/Tooltip.init.js","64":"components\/CopyLine\/CopyLine.js","65":"components\/Popup\/PopupFreeTrial\/PopupFreeTrial.js","66":"components\/Popup\/PopupFreeTrial\/PopupFreeTrial.css","67":"templates\/footer\/popup_signup_interaction.js","68":"templates\/footer\/footer_toggle.js","69":"templates\/footer\/footer_menu.js","70":"components\/LanguageSelect\/LanguageSelect.js","71":"components\/Form\/FormSwitch.js","72":"components\/Tooltip\/Tooltip_grey.css","73":"components\/SearchListing\/SimilarsLink.js","74":"components\/SearchListing\/LightboxButton\/tooltip.js","75":"components\/SearchListing\/LightboxButton\/action.js"}; } catch (_) {}!function(){var i=["user-blocking","user-visible","background"];class t{constructor(){this.channel_=new MessageChannel,this.sendPort_=this.channel_.port2,this.messages_={},this.nextMessageHandle_=1,this.channel_.port1.onmessage=i=>this.onMessageReceived_(i)}queueCallback(i){var t=this.nextMessageHandle_++;return this.messages_[t]=i,this.sendPort_.postMessage(t),t}cancelCallback(i){delete this.messages_[i]}onMessageReceived_(i){var t=i.data;if(t in this.messages_){var e=this.messages_[t];delete this.messages_[t],e()}}}function e(){return e.instance_||(e.instance_=new t),e.instance_}class r{constructor(i,t,e){void 0===e&&(e=0),this.callback_=i,this.callbackType_=null,this.handle_=null,this.canceled_=!1,this.schedule_(t,e)}isIdleCallback(){return 0===this.callbackType_}isMessageChannelCallback(){return 2===this.callbackType_}cancel(){if(!this.canceled_)switch(this.canceled_=!0,this.callbackType_){case 0:cancelIdleCallback(this.handle_);break;case 1:clearTimeout(this.handle_);break;case 2:e().cancelCallback(this.handle_);break;default:throw new TypeError("Unknown CallbackType")}}schedule_(t,r){if(r&&r>0)return this.callbackType_=1,void(this.handle_=setTimeout((()=>{this.runCallback_()}),r));if(!i.includes(t))throw new TypeError("Invalid task priority : "+t);return"background"===t&&"function"==typeof requestIdleCallback?(this.callbackType_=0,void(this.handle_=requestIdleCallback((()=>{this.runCallback_()})))):"function"==typeof MessageChannel?(this.callbackType_=2,void(this.handle_=e().queueCallback((()=>{this.runCallback_()})))):(this.callbackType_=1,void(this.handle_=setTimeout((()=>{this.runCallback_()}))))}runCallback_(){this.canceled_||this.callback_()}}var s=0;class n{constructor(){this.head_=null,this.tail_=null}isEmpty(){return null==this.head_}push(i){if("object"!=typeof i)throw new TypeError("Task must be an Object");i.tq_sequence_=s++,this.isEmpty()?(i.tq_prev_=null,this.head_=i):(i.tq_prev_=this.tail_,this.tail_.tq_next_=i),i.tq_next_=null,this.tail_=i}takeNextTask(){if(this.isEmpty())return null;var i=this.head_;return this.remove_(i),i}merge(i,t){if("function"!=typeof t)throw new TypeError("Must provide a selector function.");if(null==i)throw new Error("sourceQueue cannot be null");for(var e=this.head_,r=null,s=i.head_;s;){var n=s;if(s=s.tq_next_,t(n)){for(i.remove_(n);e&&e.tq_sequence_<n.tq_sequence_;)r=e,e=e.tq_next_;this.insert_(n,r),r=n}}}toArray(){for(var i=this.head_,t=[];null!==i;)t.push(i),i=i.tq_next_;return t}insert_(i,t){if(t!=this.tail_){var e=t?t.tq_next_:this.head_;i.tq_next_=e,e.tq_prev_=i,i.tq_prev_=t,null!=t?t.tq_next_=i:this.head_=i}else this.push(i)}remove_(i){if(null==i)throw new Error("Expected task to be non-null");i===this.head_&&(this.head_=i.tq_next_),i===this.tail_&&(this.tail_=this.tail_.tq_prev_),i.tq_next_&&(i.tq_next_.tq_prev_=i.tq_prev_),i.tq_prev_&&(i.tq_prev_.tq_next_=i.tq_next_)}}class a extends Event{constructor(t,e){if(!e||!i.includes(e.previousPriority))throw new TypeError("Invalid task priority: '"+e.previousPriority+"'");super(t),this.previousPriority=e.previousPriority}}class l extends AbortController{constructor(t){if(void 0===t&&(t={}),super(),null==t&&(t={}),"object"!=typeof t)throw new TypeError("'init' is not an object");var e,r,s=void 0===t.priority?"user-visible":t.priority;if(!i.includes(s))throw new TypeError("Invalid task priority: '"+s+"'");this.priority_=s,this.isPriorityChanging_=!1,r=(e=this).signal,Object.defineProperties(r,{priority:{get:function(){return e.priority_},enumerable:!0},onprioritychange:{value:null,writable:!0,enumerable:!0}}),r.addEventListener("prioritychange",(i=>{r.onprioritychange&&r.onprioritychange(i)}))}setPriority(t){if(!i.includes(t))throw new TypeError("Invalid task priority: "+t);if(this.isPriorityChanging_)throw new DOMException("","NotAllowedError");if(this.signal.priority!==t){this.isPriorityChanging_=!0;var e=this.priority_;this.priority_=t;var r=new a("prioritychange",{previousPriority:e});this.signal.dispatchEvent(r),this.isPriorityChanging_=!1}}}void 0===self.scheduler?(self.scheduler=new class{constructor(){this.queues_={},i.forEach((i=>{this.queues_[i]=[new n,new n]})),this.pendingHostCallback_=null,this.signals_=new WeakMap}yield(i){return(i=Object.assign({},i)).signal&&"inherit"==i.signal&&delete i.signal,i.priority&&"inherit"==i.priority&&(i.priority="user-visible"),this.postTaskOrContinuation_((()=>{}),i,!0)}postTask(i,t){return this.postTaskOrContinuation_(i,t,!1)}postTaskOrContinuation_(t,e,r){if(void 0!==(e=Object.assign({},e)).signal){if(null===e.signal||!("aborted"in e.signal)||"function"!=typeof e.signal.addEventListener)return Promise.reject(new TypeError("'signal' is not a valid 'AbortSignal'"));if(e.signal&&e.signal.priority&&!i.includes(e.signal.priority))return Promise.reject(new TypeError("Invalid task priority: '"+e.signal.priority+"'"))}if(void 0!==e.priority&&(null===e.priority||!i.includes(e.priority)))return Promise.reject(new TypeError("Invalid task priority: '"+e.priority+"'"));if(void 0===e.delay&&(e.delay=0),e.delay=Number(e.delay),e.delay<0)return Promise.reject(new TypeError("'delay' must be a positive number."));var s={callback:t,options:e,resolve:null,reject:null,hostCallback:null,abortCallback:null,onTaskCompleted:function(){this.options.signal&&this.abortCallback&&(this.options.signal.removeEventListener("abort",this.abortCallback),this.abortCallback=null)},onTaskAborted:function(){this.hostCallback&&(this.hostCallback.cancel(),this.hostCallback=null),this.options.signal.removeEventListener("abort",this.abortCallback),this.abortCallback=null,this.reject(this.options.signal.reason)},isAborted:function(){return this.options.signal&&this.options.signal.aborted},isContinuation:r},n=new Promise(((i,t)=>{s.resolve=i,s.reject=t}));return this.schedule_(s),n}schedule_(i){var t=i.options.signal;if(t){if(t.aborted)return void i.reject(t.reason);i.abortCallback=()=>{i.onTaskAborted()},t.addEventListener("abort",i.abortCallback)}i.options.delay>0?i.hostCallback=new r((()=>{i.hostCallback=null,this.onTaskDelayExpired_(i)}),null,i.options.delay):(this.pushTask_(i),this.scheduleHostCallbackIfNeeded_())}onTaskDelayExpired_(i){this.pushTask_(i),this.pendingHostCallback_&&(this.pendingHostCallback_.cancel(),this.pendingHostCallback_=null),this.schedulerEntryCallback_()}onPriorityChange_(i){var t=this.signals_.get(i);if(void 0===t)throw new Error("Attempting to change priority on an unregistered signal");if(t!==i.priority){for(var e=0;e<2;e++)this.queues_[i.priority][e].merge(this.queues_[t][e],(t=>t.options.signal===i));this.signals_.set(i,i.priority)}}schedulerEntryCallback_(){this.pendingHostCallback_=null,this.runNextTask_(),this.scheduleHostCallbackIfNeeded_()}scheduleHostCallbackIfNeeded_(){var{priority:i}=this.nextTaskPriority_();null!=i&&("background"!==i&&this.pendingHostCallback_&&this.pendingHostCallback_.isIdleCallback()&&(this.pendingHostCallback_.cancel(),this.pendingHostCallback_=null),this.pendingHostCallback_||(this.pendingHostCallback_=new r((()=>{this.schedulerEntryCallback_()}),i,0)))}pushTask_(t){var e;if(!i.includes(e=t.options.priority?t.options.priority:t.options.signal&&t.options.signal.priority?t.options.signal.priority:"user-visible"))throw new TypeError("Invalid task priority: "+e);if(t.options.signal&&t.options.signal.priority){var r=t.options.signal;this.signals_.has(r)||(r.addEventListener("prioritychange",(()=>{this.onPriorityChange_(r)})),this.signals_.set(r,r.priority))}this.queues_[e][t.isContinuation?0:1].push(t)}runNextTask_(){var i=null;do{var{priority:t,type:e}=this.nextTaskPriority_();if(null==t)return;i=this.queues_[t][e].takeNextTask()}while(i.isAborted());try{var r=i.callback();i.resolve(r)}catch(t){i.reject(t)}finally{i.onTaskCompleted()}}nextTaskPriority_(){for(var t=0;t<i.length;t++)for(var e=i[t],r=0;r<2;r++)if(!this.queues_[e][r].isEmpty())return{priority:e,type:r};return{priority:null,type:0}}},self.TaskController=l,self.TaskPriorityChangeEvent=a):self.scheduler.yield||(self.scheduler.yield=function(i){var t=i=>i&&"user-visible"!=i?i:"user-blocking";if((i=Object.assign({},i)).signal&&"inherit"==i.signal&&delete i.signal,i.priority&&"inherit"==i.priority&&delete i.priority,i.signal&&i.signal.aborted)return Promise.reject(i.signal.reason);var e=i.priority;!e&&i.signal&&i.signal.priority&&(e=i.signal.priority),e=t(e);var r={inputSignal:i.signal,controller:new self.TaskController({priority:e}),abortCallback:null,priorityCallback:null,onTaskAborted:function(){this.controller.abort(this.inputSignal.reason),this.abortCallback=null},onPriorityChange:function(){this.controller.setPriority(t(this.inputSignal.priority))},onTaskCompleted:function(){this.abortCallback&&(this.inputSignal.removeEventListener("abort",this.abortCallback),this.abortCallback=null),this.priorityCallback&&(this.inputSignal.removeEventListener("prioritychange",this.priorityCallback),this.priorityCallback=null)}};i.signal&&(r.abortCallback=()=>{r.onTaskAborted()},i.signal.addEventListener("abort",r.abortCallback)),i.signal&&i.signal.priority&&!i.priority&&(r.priorityCallback=()=>{r.onPriorityChange()},i.signal.addEventListener("prioritychange",r.priorityCallback));var s=self.scheduler.postTask((()=>{}),{signal:r.controller.signal});return s.then((()=>{r.onTaskCompleted()})).catch((i=>{throw r.onTaskCompleted(),i})),s})}(); DT.Scheduler=(()=>{const postTask=(task,options={})=>window.scheduler.postTask(task,options),yieldToMain=()=>window.scheduler.yield(),isInputPending=()=>navigator?.scheduling?.isInputPending?.()??!1,waitForHighPriority=(options={})=>new Promise(((resolve,reject)=>{postTask(resolve,{priority:"user-blocking",...options}).catch(reject)})),waitForMediumPriority=(options={})=>new Promise(((resolve,reject)=>{postTask(resolve,{priority:"user-visible",...options}).catch(reject)})),waitForLowPriority=(options={})=>new Promise(((resolve,reject)=>{postTask(resolve,{priority:"background",...options}).catch(reject)})),yieldIfInputPending=async()=>{if(isInputPending())return yieldToMain()};return{postTask:postTask,yieldToMain:yieldToMain,isInputPending:isInputPending,yieldIfInputPending:yieldIfInputPending,waitForHighPriority:waitForHighPriority,waitForMediumPriority:waitForMediumPriority,waitForLowPriority:waitForLowPriority}})(); DT.isMobile=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),DT.isTouchDevice="ontouchstart"in window||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0,DT.isMac=/Macintosh/.test(navigator.userAgent),DT.log=(type,...args)=>{if(DT.enableLog)try{type in console||(type="log"),console[type](...args)}catch(_err){}},DT.onReady=function(callback){"complete"===document.readyState||"interactive"===document.readyState||"loaded"===document.readyState?callback():document.addEventListener("DOMContentLoaded",callback)},DT.onReadyIdle=(callback,timeout=50)=>{DT.onReady((()=>{DT.onIdle(callback,timeout)}))},DT.onIdle=function(callback,timeout=50){return"requestIdleCallback"in window?window.requestIdleCallback(callback,{timeout:timeout}):setTimeout(callback,timeout)},DT.idle=function(timeout=50){return new Promise((resolve=>{DT.onIdle(resolve,timeout)}))},DT.isInputPending=()=>navigator?.scheduling?.isInputPending?.()??!1,DT.yieldIfInputPending=async()=>{DT.isInputPending()&&await DT.yieldToMain()},DT.onLoad=function(callback){"complete"===document.readyState?callback():window.addEventListener("load",callback)},DT.onLoadIdle=(callback,timeout=50)=>{DT.onLoad((()=>{DT.onIdle(callback,timeout)}))},DT.nextIter=(timeout=0)=>new Promise((resolve=>{setTimeout((()=>{resolve()}),timeout)})),DT.yieldToMain=async(timeout=0)=>{if(0===timeout&&"scheduler"in window&&"yield"in window.scheduler)try{return await window.scheduler.yield()}catch(_){}return new Promise((resolve=>{setTimeout(resolve,timeout)}))},DT.onNextIter=(callback,timeout=0)=>{setTimeout((()=>{callback()}),timeout)},DT.nextFrame=()=>new Promise((resolve=>{window.requestAnimationFrame(resolve)})),DT.onNextFrame=callback=>{window.requestAnimationFrame(callback)},DT.cancelNextFrame=id=>{id&&window.cancelAnimationFrame(id)},DT.isPage=(...pages)=>pages.some((page=>page===DT.cpage)),DT.import=DT.require=function(){const urls=Array.prototype.slice.call(arguments);return Promise.all(urls.map((url=>import(url))))},DT.importOrder=DT.requireOrder=function(){const urls=Array.prototype.slice.call(arguments);return urls.reduce(((promise,url)=>promise.then((()=>import(url)))),Promise.resolve())},DT.isDtUrl=function(url){return!!this.isRelativeUrl(url)||/^(https?:\/\/)?(?:[a-z0-9-]+\.)?dreamstime\./.test(url)},DT.isRelativeUrl=function(url){return/^(?!www\.|(?:http|ftp)s?:\/\/|[A-Za-z]:\\|\/\/(www\.)?|[a-zA-Z0-9\-\_]+\.[a-z]{1,3}).*/i.test(url)},DT.appendQueryString=function(url,queryString){const hasQueryString=undefined,separator=undefined;return`${url}${/\?/.test(url)?"&":"?"}${queryString}`},DT.processCssImportUrl=function(url){if(!this.isDtUrl(url))return url;if(this.isDev)return`/${this.assetsBasePath}${url}`;let newUrl=url;return this.isRelativeUrl(url)&&(newUrl=`${this.cdnUrl}${this.assetsBasePath}${url}`),this.appendQueryString(newUrl,`v=${this.cssVersion}`)},DT.processJsImportUrl=function(url){if(!this.isDtUrl(url))return url;if(this.isDev)return`/${this.assetsBasePath}${url}`;let newUrl=url;return this.isRelativeUrl(url)&&(newUrl=`${this.cdnUrl}${this.assetsBasePath}${url}`),this.appendQueryString(newUrl,`v=${this.jsVersion}`)},DT.loadScripts=function(){const scripts=Array.prototype.slice.call(arguments);return new Promise((async(resolve,reject)=>{let loaded=0;const head=document.getElementsByTagName("head")[0];function checkLoaded(){loaded++,loaded===scripts.length&&resolve()}for(let i=0;i<scripts.length;i++){const script=scripts[i];let scriptSrc,fetchPriority;"object"==typeof script?(scriptSrc=script.src,fetchPriority=script.fetchPriority):scriptSrc=script;const prefetchUrlPromise=DT.prefetchWorker.getPrefetchUrlPromise(scriptSrc);prefetchUrlPromise?await prefetchUrlPromise:DT.prefetchWorker.abortPrefetchUrls(scriptSrc);const createScript=()=>{const script=document.createElement("script");script.type="text/javascript",script.src=DT.processJsImportUrl(scriptSrc),fetchPriority&&DT.useFetchPriority&&script.setAttribute("fetchpriority",fetchPriority),script.onload=checkLoaded,script.onerror=reject,head.appendChild(script)};DT._preloadedLinks[scriptSrc]?DT._preloadedLinks[scriptSrc].then(createScript).catch(reject):createScript()}}))},DT.isScriptLoaded=function(scriptSrc){return!0===DT._loadedScriptsOnce[scriptSrc]},DT.loadScriptsOnce=function(){const scripts=Array.prototype.slice.call(arguments);return new Promise((async(resolve,reject)=>{let loaded=0;const head=document.getElementsByTagName("head")[0];function checkLoaded(){loaded++,loaded===scripts.length&&resolve()}const onScriptLoadError=error=>{DT.log("error","Failed to load script",error.target.src,error),reject(error)};for(let i=0;i<scripts.length;i++){const script=scripts[i];let scriptSrc,fetchPriority="";if("object"==typeof script?(scriptSrc=script.src,fetchPriority=script.fetchPriority):scriptSrc=script,DT._loadedScriptsOnce[scriptSrc]){!0===DT._loadedScriptsOnce[scriptSrc]?checkLoaded():DT._loadedScriptsOnce[scriptSrc].then(checkLoaded).catch(reject);continue}const prefetchUrlPromise=DT.prefetchWorker.getPrefetchUrlPromise(scriptSrc);prefetchUrlPromise?await prefetchUrlPromise:DT.prefetchWorker.abortPrefetchUrls(scriptSrc),DT._loadedScriptsOnce[scriptSrc]=new Promise(((resolve,reject)=>{const createScript=()=>{const script=document.createElement("script");script.type="text/javascript",script.src=DT.processJsImportUrl(scriptSrc),fetchPriority&&DT.useFetchPriority&&script.setAttribute("fetchpriority",fetchPriority),script.onload=function(){checkLoaded(),resolve()},script.onerror=error=>{reject(error),onScriptLoadError(error)},head.appendChild(script)};if(DT._preloadedLinks[scriptSrc])return DT._preloadedLinks[scriptSrc].then(createScript).catch(reject),void 0;createScript()})),DT._loadedScriptsOnce[scriptSrc].catch(reject)}}))},DT.loadScriptsInOrder=function(){const scripts=Array.prototype.slice.call(arguments);return new Promise(((resolve,reject)=>{const head=document.getElementsByTagName("head")[0];async function loadScript(index){if(index>=scripts.length)return resolve(),void 0;const script=scripts[index];if(Array.isArray(script))return DT.loadScriptsInOrder(...script).then((()=>{loadScript(index+1)})),void 0;let scriptSrc,fetchPriority;"object"==typeof script?(scriptSrc=script.src,fetchPriority=script.fetchPriority):scriptSrc=script;const prefetchUrlPromise=DT.prefetchWorker.getPrefetchUrlPromise(scriptSrc);prefetchUrlPromise?await prefetchUrlPromise:DT.prefetchWorker.abortPrefetchUrls(scriptSrc);const createScript=()=>{const script=document.createElement("script");script.type="text/javascript",script.src=DT.processJsImportUrl(scriptSrc),fetchPriority&&DT.useFetchPriority&&script.setAttribute("fetchpriority",fetchPriority),script.onload=function(){loadScript(index+1)},script.onerror=reject,head.appendChild(script)};if(DT._preloadedLinks[scriptSrc])return DT._preloadedLinks[scriptSrc].then(createScript).catch(reject),void 0;createScript()}loadScript(0)}))},DT.loadScriptsInOrderOnce=function(){const scripts=Array.prototype.slice.call(arguments);return new Promise(((resolve,reject)=>{const head=document.getElementsByTagName("head")[0],onScriptLoadError=error=>{DT.log("error","Failed to load script",error),reject(error)};async function loadScript(index){if(index>=scripts.length)return resolve(),void 0;const script=scripts[index];if(Array.isArray(script))return DT.loadScriptsInOrderOnce(...script).then((()=>{loadScript(index+1)})),void 0;let scriptSrc,fetchPriority;if("object"==typeof script?(scriptSrc=script.src,fetchPriority=script.fetchPriority):scriptSrc=script,DT._loadedScriptsOnce[scriptSrc])return!0===DT._loadedScriptsOnce[scriptSrc]?loadScript(index+1):DT._loadedScriptsOnce[scriptSrc].then((()=>{loadScript(index+1)})).catch(reject),void 0;const prefetchUrlPromise=DT.prefetchWorker.getPrefetchUrlPromise(scriptSrc);prefetchUrlPromise?await prefetchUrlPromise:DT.prefetchWorker.abortPrefetchUrls(scriptSrc),DT._loadedScriptsOnce[scriptSrc]=new Promise(((resolve,reject)=>{const createScript=()=>{const script=document.createElement("script");script.type="text/javascript",script.src=DT.processJsImportUrl(scriptSrc),fetchPriority&&DT.useFetchPriority&&script.setAttribute("fetchpriority",fetchPriority),script.onload=function(){loadScript(index+1),resolve()},script.onerror=error=>{reject(error),onScriptLoadError(error)},head.appendChild(script)};if(DT._preloadedLinks[scriptSrc])return DT._preloadedLinks[scriptSrc].then(createScript).catch(reject),void 0;createScript()}))}loadScript(0)}))},DT.loadCSS=function(){const urls=Array.prototype.slice.call(arguments);return new Promise((async function(resolve,reject){let loaded=0;function checkLoaded(){loaded++,loaded===urls.length&&DT.afterPaint().then((()=>{resolve()}))}for(let i=0;i<urls.length;i++){const urlSrc=urls[i];let url,fetchPriority,prefetchPromise;if("object"==typeof urlSrc?(url=urlSrc.url,fetchPriority=urlSrc.fetchPriority):url=urlSrc,DT._loadedStyleSheetsOnce[url]){!0===DT._loadedStyleSheetsOnce[url]?checkLoaded():DT._loadedStyleSheetsOnce[url].then(checkLoaded).catch(reject);continue}const prefetchUrlPromise=DT.prefetchWorker.getPrefetchUrlPromise(url);prefetchUrlPromise?prefetchPromise=prefetchUrlPromise:(prefetchPromise=new Promise((resolve=>{resolve()})),DT.prefetchWorker.abortPrefetchUrls(url)),DT._loadedStyleSheetsOnce[url]=prefetchPromise.then((()=>DT.addPreloadLink({href:url,as:"style",type:"text/css",fetchPriority:fetchPriority}))).then((preloadedLink=>{preloadedLink.setAttribute("rel","stylesheet"),preloadedLink.addEventListener("load",(()=>{checkLoaded()})),preloadedLink.addEventListener("error",(err=>{DT.log("error","Failed to load CSS",err),checkLoaded()}))})).catch((preloadedLink=>{preloadedLink?(preloadedLink.setAttribute("rel","stylesheet"),preloadedLink.addEventListener("load",(()=>{checkLoaded()})),preloadedLink.addEventListener("error",(err=>{DT.log("error","Failed to load CSS",err),checkLoaded()}))):checkLoaded()}))}}))},DT._preloadedLinks={},DT.addPreloadLink=({href:href,as:as,type:type="",media:media="",prefetch:prefetch="",fetchPriority:fetchPriority=""})=>new Promise((async resolve=>{if(DT._preloadedLinks[href])return!0===DT._preloadedLinks[href]?(resolve(),void 0):DT._preloadedLinks[href].then(resolve);if("script"===type&&DT._loadedScriptsOnce[href])return!0===DT._loadedScriptsOnce[href]?(resolve(),void 0):DT._loadedScriptsOnce[href].finally(resolve);if("style"===type&&DT._loadedStyleSheetsOnce[href])return!0===DT._loadedStyleSheetsOnce[href]?(resolve(),void 0):DT._loadedStyleSheetsOnce[href].finally(resolve);const prefetchUrlPromise=DT.prefetchWorker.getPrefetchUrlPromise(href);prefetchUrlPromise?await prefetchUrlPromise:DT.prefetchWorker.abortPrefetchUrls(href),DT._preloadedLinks[href]=new Promise((resolve=>{const preloadLink=document.createElement("link");preloadLink.setAttribute("rel","preload"),preloadLink.setAttribute("as",as);let processedHref=href;"script"===as?processedHref=DT.processJsImportUrl(href):"style"===as&&(processedHref=DT.processCssImportUrl(href)),preloadLink.setAttribute("href",processedHref),preloadLink.onload=()=>{preloadLink.onload=null,resolve(preloadLink)},preloadLink.onerror=err=>{DT.log("error","Failed to preload link",err),resolve(preloadLink)},type&&preloadLink.setAttribute("type",type),prefetch&&preloadLink.setAttribute("prefetch",prefetch),fetchPriority&&DT.useFetchPriority&&preloadLink.setAttribute("fetchpriority",fetchPriority);const head=document.getElementsByTagName("head")[0];return preloadLink.relList.supports("preload")?(head.appendChild(preloadLink),void 0):"style"===as?(preloadLink.setAttribute("rel","stylesheet"),head.appendChild(preloadLink),void 0):(resolve(preloadLink),void 0)})),DT._preloadedLinks[href].then((link=>{resolve(link)}))})),DT.addPreloadLinks=(...links)=>new Promise.all([...links.map((link=>DT.addPreloadLink(link)))]),DT._lastQueuePreloadLink=new Promise((resolve=>resolve())),DT.queuePreloadLink=async link=>{const prevLoad=DT._lastQueuePreloadLink;return DT._lastQueuePreloadLink=new Promise((async resolve=>{try{await prevLoad}catch(err){}DT.addPreloadLink(link).catch((reason=>{DT.log("error","Failed to preload link",reason)})).finally(resolve)})),DT._lastQueuePreloadLink},DT._lastQueueLoadDeps=new Promise((resolve=>resolve())),DT.queueLoadDeps=async loadDeps=>{if("function"!=typeof loadDeps)return;const prevLoad=DT._lastQueueLoadDeps;return DT._lastQueueLoadDeps=new Promise((async resolve=>{try{await prevLoad}catch(err){DT.log("error","Fail prev deps load",err)}await DT.idle();try{await loadDeps()}catch(err){DT.log("error","Failed to queue load deps",err)}resolve()})),DT._lastQueueLoadDeps},DT.queueDepsOnLoad=loadDeps=>new Promise((resolve=>{DT.onLoadIdle((async()=>{try{await DT.queueLoadDeps(loadDeps)}finally{resolve()}}))})),DT.loadDeps=({js:js=[],css:css=[]},priority="",{loadJs:loadJs=!0,loadCss:loadCss=!0}={})=>{const loadPromises=[];if(loadJs||loadCss||(loadJs=!0,loadCss=!0),loadJs){const loadScriptsOnce=[];for(let i=0;i<js.length;i++){const jsUrl=js[i];Array.isArray(jsUrl)?priority?loadPromises.push(DT.loadScriptsInOrderOnce(...jsUrl.map((url=>({src:url,fetchPriority:priority}))))):loadPromises.push(DT.loadScriptsInOrderOnce(...jsUrl)):priority?loadScriptsOnce.push({src:jsUrl,fetchPriority:priority}):loadScriptsOnce.push(jsUrl)}loadScriptsOnce.length&&loadPromises.push(DT.loadScriptsOnce(...loadScriptsOnce))}return loadCss&&css.length&&loadPromises.push(DT.loadCSS(...css)),Promise.all(loadPromises)},DT.createLoadDeps=(deps,priority="")=>(options={})=>DT.loadDeps(deps,priority,options),DT.loadLazyDeps=(lazyDeps,priority="")=>{const deps=DT.collectDeps(DT.parseLazyDeps(lazyDeps));return deps?DT.loadDeps(deps,priority):Promise.resolve()},DT.prefetchWorker={queuedUrls:{},fetchedUrlsFinished:{},fetchedUrls:{},worker:null,getPrefetchUrlPromise(url){return this.fetchedUrls[url]},log(data){DT.log(data.level,data.message)},onWorkerMessage(event){if("log"===event?.data?.type)return DT.prefetchWorker.log(event.data),void 0;event?.data&&"start_fetch"===event.data.type&&!DT.prefetchWorker.fetchedUrls[event.data.url]&&(DT.prefetchWorker.fetchedUrls[event.data.url]=new Promise((resolve=>{const startFetchUrl=event.data.url,handler=endFetchEvent=>{endFetchEvent?.data&&"end_fetch"===endFetchEvent.data.type&&endFetchEvent.data.url===startFetchUrl&&(DT.prefetchWorker.fetchedUrlsFinished[startFetchUrl]=!0,DT.prefetchWorker.worker.removeEventListener("message",handler),resolve())};DT.prefetchWorker.worker.addEventListener("message",handler)})))},processUrls:(urls=[])=>urls.map((url=>{if(!url)return null;const cleanUrl=url.split("?")[0];let processedUrl,contentType;switch(!0){case cleanUrl.endsWith(".js"):case cleanUrl.endsWith(".js.php"):processedUrl=DT.processJsImportUrl(url),contentType="text/javascript";break;case cleanUrl.endsWith(".css"):case cleanUrl.endsWith(".css.php"):processedUrl=DT.processCssImportUrl(url),contentType="text/css";break;default:processedUrl=url;break}return{originalUrl:url,url:processedUrl,contentType:contentType}})).filter((url=>null!==url)),prefetchUrls(urls,priority="auto"){if(!this.worker||!urls.length)return;const validUrls=urls.filter((url=>!(DT._preloadedLinks[url]||DT._loadedScriptsOnce[url]||DT._loadedStyleSheetsOnce[url]||this.queuedUrls[url]||this.abortedUrls[url]||this.fetchedUrlsFinished[url]))),processedUrls=this.processUrls(validUrls);processedUrls.length&&(processedUrls.forEach((url=>{this.queuedUrls[url.originalUrl]=!0})),this.worker.postMessage({type:"prefetchUrls",urls:processedUrls,priority:priority}))},queuePrefetchUrls(urls,priority="low"){if(!this.worker||!urls.length)return;const validUrls=urls.filter((url=>!(DT._preloadedLinks[url]||DT._loadedScriptsOnce[url]||DT._loadedStyleSheetsOnce[url]||this.queuedUrls[url]||this.abortedUrls[url]||this.fetchedUrlsFinished[url]))),processedUrls=this.processUrls(validUrls);processedUrls.length&&(processedUrls.forEach((url=>{this.queuedUrls[url.originalUrl]=!0})),this.worker.postMessage({type:"queuePrefetchUrls",urls:processedUrls,priority:priority}))},abortedUrls:{},abortPrefetchUrls(...urls){if(!this.worker||!urls.length)return;const validUrls=urls.filter((url=>!this.abortedUrls[url]&&!this.fetchedUrlsFinished[url])),processedUrls=this.processUrls(validUrls);processedUrls.length&&(processedUrls.forEach((url=>{this.abortedUrls[url.originalUrl]=!0})),this.worker.postMessage({type:"abortPrefetchUrls",urls:processedUrls}))},queuePrefetchUrlsOnReady(urls,priority="high"){DT.onReadyIdle((()=>{this.queuePrefetchUrls(urls,priority)}))},queuePrefetchUrlsOnLoad(urls,priority="low"){DT.onLoadIdle((()=>{this.queuePrefetchUrls(urls,priority)}))},init(){try{this.worker=new Worker(DT.prefetchWorkerUrl,{name:"DT Prefetch Worker"}),this.worker.addEventListener("message",this.onWorkerMessage)}catch(err){this.worker=null,DT.log("error","Failed to create Prefetch Worker",err)}}},DT.queuePrefetchDeps=({js:js=[],css:css=[]},priority="low",direct=!1)=>{const prefetchUrls=[],addNestedUrls=urls=>{for(let i=0;i<urls.length;i++){const url=urls[i];Array.isArray(url)?addNestedUrls(url):prefetchUrls.push(url)}};addNestedUrls(js),addNestedUrls(css),direct?DT.prefetchWorker.prefetchUrls(prefetchUrls,priority):DT.prefetchWorker.queuePrefetchUrls(prefetchUrls,priority)},DT.onReadyIdle((()=>{DT.usePrefetchWorker&&"undefined"!=typeof Worker&&null===DT.prefetchWorker.worker&&DT.prefetchWorker.init()})),DT.debounce=function(func,threshold=200,execAsap){var timeout;return function debounced(){var obj=this,args=arguments;function delayed(){execAsap||func.apply(obj,args),timeout=null}timeout?clearTimeout(timeout):execAsap&&func.apply(obj,args),timeout=setTimeout(delayed,threshold)}},DT.throttle=function(func,limit=200){var wait=!1;return function(){var obj=this,args=arguments;wait||(func.apply(obj,args),wait=!0,setTimeout((function(){wait=!1}),limit))}},DT._callbacksNotifyFirstMouseMove=[],DT._callbacksNotifyFirstMouseMoveTriggered=!1,DT.notifyFirstMouseMove=(...callbacks)=>{DT._callbacksNotifyFirstMouseMove.push(...callbacks)},DT.notifierOnFirstMouseMove=()=>{if(!DT._callbacksNotifyFirstMouseMoveTriggered){DT._callbacksNotifyFirstMouseMoveTriggered=!0,document.removeEventListener("scroll",DT.notifierOnFirstMouseMove),document.removeEventListener("mousemove",DT.notifierOnFirstMouseMove),DT.isMobile&&document.removeEventListener("touchmove",DT.notifierOnFirstMouseMove),document.removeEventListener("pointermove",DT.notifierOnFirstMouseMove);for(let i=0;i<DT._callbacksNotifyFirstMouseMove.length;i++)try{DT._callbacksNotifyFirstMouseMove[i]()}catch(_err){}}},DT.onReady((()=>{document.addEventListener("scroll",DT.notifierOnFirstMouseMove),document.addEventListener("mousemove",DT.notifierOnFirstMouseMove),DT.isMobile&&document.addEventListener("touchmove",DT.notifierOnFirstMouseMove),document.addEventListener("pointermove",DT.notifierOnFirstMouseMove)})),DT.loadHtml=async({element:element,url:url,asOuterHtml:asOuterHtml=!1,fetchOptions:fetchOptions,allowOnlyDtUrl:allowOnlyDtUrl=!0})=>{"string"==typeof element&&(element=document.querySelector(element));let htmlUrl=url;if(DT.isRelativeUrl(htmlUrl))0===htmlUrl.indexOf("/")&&(htmlUrl=htmlUrl.slice(1)),htmlUrl=`${DT.ajaxBase}${htmlUrl}`;else if(allowOnlyDtUrl&&!DT.isDtUrl(htmlUrl))return;const response=await fetch(htmlUrl,fetchOptions);if(!response.ok)throw new Error(`HTTP error: ${response.status}`);const html=await response.text();if("CheckLogin"===html)return location.reload(),void 0;asOuterHtml?element.outerHTML=html:element.innerHTML=html},DT.jsonData={},DT.parseJSONData=dataId=>{var oData=document.getElementById(dataId);return!(!oData||!oData.text)&&JSON.parse(oData.text)},DT.parseJsonHtml=templateName=>{let html=null;try{const data=DT.parseJSONData(`json-html-${templateName}`);if(!data)return null;html=data.html}catch(error){return DT.log("error","Failed to parse JSON template",error),null}if(!html)return null;const placeholder=document.createElement("div");return placeholder.innerHTML=html,placeholder.firstElementChild},DT.isNullish=value=>null==value,DT.toType=obj=>Object.prototype.toString.call(obj).slice(8,-1).toLowerCase(),DT.isObject=value=>"object"===DT.toType(value),DT.deepMerge=(...sources)=>{let returnValue={};for(const source of sources)if(Array.isArray(source))Array.isArray(returnValue)||(returnValue=[]),returnValue=[...returnValue,...source];else if(DT.isObject(source))for(let[key,value]of Object.entries(source))DT.isObject(value)&&key in returnValue&&(value=DT.deepMerge(returnValue[key],value)),returnValue={...returnValue,[key]:value};return returnValue},DT.setCookie=function(name,value,expires,path,domain,secure){expires||(expires=30);var today=new Date,expires2=new Date(today.getTime()+864e5*expires);document.cookie=name+"="+encodeURIComponent(value)+(expires?"; expires="+expires2.toGMTString():"")+(path?"; path="+path:"; path=/")+(domain?"; domain="+domain:"; domain=.dreamstime.com")+(secure?"; secure":"")},DT.getCookie=function(name){var dc=document.cookie,prefix=name+"=",begin=dc.indexOf("; "+prefix);if(-1==begin){if(0!=(begin=dc.indexOf(prefix)))return null}else begin+=2;var end=document.cookie.indexOf(";",begin);return-1==end&&(end=dc.length),decodeURIComponent(dc.substring(begin+prefix.length,end))},DT.deleteCookie=function(name,path,domain){DT.getCookie(name)&&(document.cookie=name+"="+(path?"; path="+path:"")+(domain?"; domain="+domain:"")+"; expires=Thu, 01-Jan-70 00:00:01 GMT")},DT.parseLazyDeps=deps=>{const parsedDeps={};for(const[key,value]of Object.entries(deps))parsedDeps[key]=value.toString().split(",").map((urlKey=>{const urlKeyTrimmed=urlKey.toString().trim(),deps=DT.htmlLazyDeps[urlKeyTrimmed];return deps||(DT.isDtUrl(urlKeyTrimmed)?urlKeyTrimmed:"")}));return parsedDeps},DT.isElement=element=>element instanceof Element||element instanceof Document,DT.getElement=selectorOrElement=>{try{return"string"==typeof selectorOrElement?document.querySelector(selectorOrElement):selectorOrElement}catch(_){return null}},DT.collectDeps=deps=>{const js=[],css=[];for(let[key,value]of Object.entries(deps))Array.isArray(value)||(value=[value]),key.startsWith("js-order")?js.push([...value]):key.startsWith("js")?js.push(...value):key.startsWith("css")&&css.push(...value);return{js:js,css:css}},DT.loadDepsFromTree=element=>{const elements=[...element.querySelectorAll("[data-lazy-deps]")];return element.dataset?.lazyDeps&&elements.push(element),elements.length?Promise.all(elements.map((element=>{const jsonDeps=element.dataset?.lazyDeps,parsedDeps=DT.parseLazyDeps(JSON.parse(jsonDeps)),deps=DT.collectDeps(parsedDeps);return DT.createLoadDeps(deps,"high")()}))):Promise.resolve()},DT.insertTemplate=async(templateOrSelector,elementOrSelector,position="append")=>{const template=DT.getElement(templateOrSelector),element=DT.getElement(elementOrSelector);if(!template||!element)return;const templateElement=template.content.cloneNode(!0);return await DT.loadDepsFromTree(templateElement),"append"===position?element.appendChild(templateElement):element.prepend(templateElement),templateElement},DT.afterPaint=async(callback=null)=>(await DT.nextFrame(),callback?(DT.onNextIter(callback),void 0):DT.nextIter()); DT.UI={loadingTimeouts:new WeakMap,showLoading({element:element,type:type="area",theme:theme="dark",size:size=null,positionRelative:positionRelative=!1,timeout:timeout=null,isPage:isPage=!1}){if(!(element=DT.getElement(element)))return;if(clearTimeout(this.loadingTimeouts.get(element)),"button"===type&&(type="btn"),!timeout)return this._showLoading({element:element,type:type,theme:theme,size:size,positionRelative:positionRelative,isPage:isPage}),DT.nextIter();const timeoutId=setTimeout((async()=>{await DT.yieldIfInputPending(),this._showLoading({element:element,type:type,theme:theme,size:size,positionRelative:positionRelative,isPage:isPage})}),timeout);return this.loadingTimeouts.set(element,timeoutId),DT.nextIter()},_showLoading({element:element,type:type="area",theme:theme="dark",size:size=null,positionRelative:positionRelative=!1,isPage:isPage=!1}){const elem=DT.getElement(element);if(!elem)return;const prevState=this.get(elem);if(elem.setAttribute("data-loading-type",type),"area"===type){const loadingArea=this.makeLoadingArea(isPage);elem.appendChild(loadingArea);const borderRadius=window.getComputedStyle(elem).borderRadius;borderRadius&&"0px"!==borderRadius&&loadingArea.style.setProperty("--loading-area-border-radius",borderRadius)}elem.setAttribute("data-loading",theme),size&&elem.setAttribute("data-loading-size",size),positionRelative&&elem.setAttribute("data-pos",""),prevState&&elem.setAttribute("data-loading-prev-state",prevState),this.unset(elem)},makeLoadingArea(isPage=!1){const element=document.createElement("div");return element.classList.add("loading","js-loading-area"),isPage&&element.setAttribute("data-page-loading",""),element},hideLoading(selectorOrElement){const element=DT.getElement(selectorOrElement);if(!element)return;const prevState=element.getAttribute("data-loading-prev-state"),area=element.querySelector(".js-loading-area");element.removeAttribute("data-loading-type"),element.removeAttribute("data-loading"),element.removeAttribute("data-loading-size"),element.removeAttribute("data-pos"),area?.remove(),prevState&&(this.set(element,prevState),element.removeAttribute("data-loading-prev-state")),clearTimeout(this.loadingTimeouts.get(element))},showPageLoading(theme="dark"){return this.showLoading({element:document.body,type:"area",theme:theme,isPage:!0})},hidePageLoading(){this.hideLoading(document.body)},isLoading:selectorOrElement=>DT.getElement(selectorOrElement)?.hasAttribute("data-loading"),set(selectorOrElement,state){DT.getElement(selectorOrElement)?.setAttribute("data-state",state)},unset(selectorOrElement){DT.getElement(selectorOrElement)?.removeAttribute("data-state")},unsetIf(selectorOrElement,state){this.is(selectorOrElement,state)&&this.unset(selectorOrElement)},get:selectorOrElement=>DT.getElement(selectorOrElement)?.getAttribute("data-state"),is(selectorOrElement,state){return this.get(selectorOrElement)===state},toggle(selectorOrElement,state){if(this.is(selectorOrElement,state))return this.unset(selectorOrElement),void 0;this.set(selectorOrElement,state)},toggleCustom(selectorOrElement,stateOn,stateOff){if(this.is(selectorOrElement,stateOn))return this.set(selectorOrElement,stateOff),void 0;this.set(selectorOrElement,stateOn)},setCustom(selectorOrElement,attribute,value){DT.getElement(selectorOrElement)?.setAttribute(`data-${attribute}`,value)},unsetCustom(selectorOrElement,attribute){DT.getElement(selectorOrElement)?.removeAttribute(`data-${attribute}`)},offset(element){const box=element.getBoundingClientRect(),scrollX=window.pageXOffset,scrollY=window.pageYOffset,clientTop=document.documentElement.clientTop,clientLeft=document.documentElement.clientLeft,left=box.left+scrollX-clientLeft,right=box.right+scrollX-clientLeft;return{top:box.top+scrollY-clientTop,left:left,right:right,bottom:box.bottom+scrollY-clientTop,inlineStart:DT.isRtl?right:left,inlineEnd:DT.isRtl?left:right}}}; DT.htmlLazyLoad={directPrefetch:!0,initializers:{},visibleMarginPx:100,events:new Set,deps:new Map,loading:new Set,loaded:new Set,loadingPromises:new Map,prefix:"data-dt-",broadcastTargets:{},getDepsUrls(element,attr,first=!1){const isAjax=this.hasAttr(element,"ajax"),urls=this.getAttr(element,attr)?.split(",").map((urlKey=>{const urlKeyTrimmed=urlKey.trim();return isAjax&&DT.isDtUrl(urlKeyTrimmed)?urlKeyTrimmed:DT.htmlLazyDeps[urlKeyTrimmed]}));return first?urls?.[0]:urls},setLoaded(id){this.loaded.add(id)},setLoading(id){this.loading.add(id)},createEvent:(eventName,detail)=>new CustomEvent(eventName,{detail:detail}),isOnDocumentEvent(eventName){return eventName.startsWith(`${this.prefix}on-document`)},isOnWindowEvent(eventName){return eventName.startsWith(`${this.prefix}on-window`)},broadcast(infix,ev,type=ev.type){try{const keyPrefix=`${infix}-`,keyDefault=`${keyPrefix}${type}`,keyKeyboard=ev instanceof KeyboardEvent?`${keyPrefix}key-${ev.key.toLowerCase()}`:null,elements=this.broadcastTargets[keyDefault],elementsKeyboard=keyKeyboard?this.broadcastTargets[keyKeyboard]:null;elements?.length&&elements.forEach((target=>{document.contains(target)&&this.dispatch(target,infix,ev)})),elementsKeyboard?.length&&elementsKeyboard.forEach((target=>{document.contains(target)&&this.dispatch(target,infix,ev)}))}catch(err){DT.log("error","Failed to broadcast",err)}},getAttr(element,attr){return element.getAttribute(`${this.prefix}${attr}`)},hasAttr(element,attr){return element.hasAttribute(`${this.prefix}${attr}`)},getRootElement(id){return document.querySelector(`[${this.prefix}id="${id}"][${this.prefix}root]`)},getDispatchTarget(element,id,ev){if(!this.hasAttr(element,"dispatch-target"))return element;try{const selector=this.getAttr(element,"dispatch-target");return"original"===selector?ev.target??element:"document"===selector?document.body:"window"===selector?window:"root"===selector?this.getRootElement(id):document.querySelector(selector)}catch(err){DT.log("error","Failed to get dispatchTarget, use element",err)}return element},doAction({id:id,element:element,ev:ev,eventName:eventName,isPreventDefault:isPreventDefault}){let action="dispatch";switch(this.hasAttr(element,`action${eventName}`)?action=this.getAttr(element,`action${eventName}`):this.hasAttr(element,"action")&&(action=this.getAttr(element,"action")),action){case"dispatch":{const dispatchTarget=this.getDispatchTarget(element,id,ev),customDispatchEvent=this.getAttr(element,"dispatch-event"),dispatchNextIter=()=>{try{if(customDispatchEvent&&customDispatchEvent!==ev.type)return dispatchTarget.dispatchEvent(new Event(customDispatchEvent,{bubbles:!0,cancelable:!0})),void 0;isPreventDefault?dispatchTarget.dispatchEvent(new ev.constructor(ev.type,{...ev,bubbles:!0,cancelable:!0})):dispatchTarget.dispatchEvent(ev)}catch(err){DT.log("error",`DT Loader failed to dispatch event ${ev.type} with name ${eventName} for id ${id}`,err)}};return DT.onNextIter(dispatchNextIter),void 0}case"call":{const obj=this.getAttr(element,"obj"),method=this.getAttr(element,"method"),objRoot=this.hasAttr(element,"obj-dt")?DT:window;try{if(obj){const objPath=obj.split(".");let object=objRoot;objPath.forEach((path=>object=object[path])),object[method](ev,element)}else objRoot[method](ev,element)}catch(err){DT.log("error","Failed to call obj method",err)}return}case"custom-dispatch":{const dispatchTarget=this.getDispatchTarget(element,id,ev),customEventName=this.getAttr(element,"dispatch-event")??ev.type,detail=this.getAttr(element,"dispatch-detail")??"";return DT.onNextIter((()=>{dispatchTarget.dispatchEvent(this.createEvent(customEventName,detail))})),void 0}case"init":{const initializer=this.getAttr(element,"init");try{DT.htmlLazyLoad.initializers[initializer](ev,element)}catch(err){DT.log("error","Failed to call init",err)}return}case"root":{const rootElement=this.getRootElement(id);if(rootElement===element)return;return this.doAction({id:id,element:rootElement,ev:ev,eventName:eventName,isPreventDefault:isPreventDefault}),void 0}default:return}},load:{async default({loadDeps:loadDeps}){await loadDeps()},async html({loadDeps:loadDeps,loader:loader,element:element}){const urlKey=loader.getAttr(element,"html"),url=DT.htmlLazyDeps[urlKey.trim()],loadTarget=loader.getAttr(element,"html-target")??element,asOuterHtml=loader.hasAttr(element,"html-outer");await loadDeps({loadJs:!1}),await DT.loadHtml({element:loadTarget,url:url,asOuterHtml:asOuterHtml}),await loadDeps({loadCss:!1})}},async getLoadingElemByBreakpoint(element){let loadingElem=element;const loadingBpAttrs=element.getAttributeNames().filter((attr=>attr.startsWith(`${this.prefix}loading-target-`)));return loadingBpAttrs.length?(await DT.loadScriptsOnce("js/breakpoints.js"),loadingBpAttrs.forEach((attr=>{const breakpoint=attr.replace(`${this.prefix}loading-target-`,"");DT.breakpoints.is(breakpoint)&&(loadingElem=document.querySelector(element.getAttribute(attr)))})),loadingElem):loadingElem},async displayLoading({element:element,eventName:eventName}){let isLoadingDisplayed=!1,loadingElem=null;if(!this.hasAttr(element,"show-loading"))return{isLoadingDisplayed:isLoadingDisplayed,loadingElem:loadingElem};if(this.hasAttr(element,"loading-for")){const loadingFor=this.getAttr(element,"loading-for"),eventNameClean=eventName.replace("-","");if(!loadingFor.includes(eventName)&&!loadingFor.includes(eventNameClean))return{isLoadingDisplayed:isLoadingDisplayed,loadingElem:loadingElem}}if(isLoadingDisplayed=!0,loadingElem=element,this.hasAttr(element,"loading-target")){const loadingElemType=this.getAttr(element,"loading-target");if("bp"===loadingElemType)loadingElem=await this.getLoadingElemByBreakpoint(element);else if(loadingElemType.startsWith("closest:")){const closestSelector=loadingElemType.replace("closest:","");loadingElem=element.closest(closestSelector)}else if(loadingElemType.startsWith("scope:")){const scopeSelector=loadingElemType.replace("scope:","");loadingElem=element.querySelector(`:scope ${scopeSelector}`)}else loadingElem=document.querySelector(loadingElemType)}return DT.UI.isLoading(loadingElem)||(DT.UI.showLoading({element:loadingElem,type:this.getAttr(element,"loading-type"),theme:this.getAttr(element,"loading-theme"),size:this.getAttr(element,"loading-size"),positionRelative:this.hasAttr(element,"loading-relative"),timeout:parseInt(this.getAttr(element,"loading-delay"),10)||null}),await DT.Scheduler.yieldToMain()),{isLoadingDisplayed:isLoadingDisplayed,loadingElem:loadingElem}},isAllowed({element:element,event:event}){switch(!0){case event instanceof PointerEvent:{if(!this.hasAttr(element,"mouse-button")||"mouse"!==event.pointerType)return!0;const mouseButton=undefined;return this.getAttr(element,"mouse-button").split(",").includes(event.button.toString())}default:return!0}},async displaySecondaryLoading(element,eventName,id){if(DT.UI.isLoading(element))return;const{isLoadingDisplayed:isLoadingDisplayed,loadingElem:loadingElem}=await this.displayLoading({element:element,eventName:eventName});if(isLoadingDisplayed)try{await this.loadingPromises.get(id)}finally{DT.UI.hideLoading(loadingElem)}},async dispatch(element,prefix="",ev){const id=this.getAttr(element,"id");if(!id||this.loaded.has(id))return;let eventName=`${prefix}-${ev.type}`;if(ev instanceof KeyboardEvent){const eventKey=ev.key.toLowerCase();this.hasAttr(element,`on${prefix}-key-${eventKey}`)&&(eventName=`${prefix}-key-${eventKey}`)}let isPreventDefault=!1;if(this.hasAttr(element,`on${eventName}-preventdefault`)&&(ev.preventDefault(),isPreventDefault=!0),!this.hasAttr(element,`on${eventName}`)||DT.isTouchDevice&&this.hasAttr(element,`on${eventName}-no-touch`)||!this.isAllowed({element:element,event:ev}))return;if(await DT.Scheduler.waitForHighPriority(),this.loading.has(id))return this.displaySecondaryLoading(element,eventName,id),void 0;this.loading.add(id);const elementDeps=this.deps.get(id),loadDeps=DT.createLoadDeps(elementDeps,"high"),{isLoadingDisplayed:isLoadingDisplayed,loadingElem:loadingElem}=await this.displayLoading({element:element,eventName:eventName});try{const loadDepsType=this.hasAttr(element,"html")?"html":"default",loadingPromise=this.load[loadDepsType]({loadDeps:loadDeps,element:element,loader:this});this.loadingPromises.set(id,loadingPromise),await loadingPromise,this.loaded.add(id),isLoadingDisplayed&&(DT.UI.hideLoading(loadingElem),await DT.afterPaint()),this.doAction({id:id,element:element,ev:ev,eventName:eventName,isPreventDefault:isPreventDefault})}catch(err){this.loaded.add(id),isLoadingDisplayed&&DT.UI.hideLoading(loadingElem),DT.log("error",`Failed to lazy load ${id} reason: ${err}`,err)}},processWindowEvent(ev){this.broadcast("-window",ev,ev.type)},async processDocumentEvent(ev){let type=ev.type,element=ev.target;for(this.broadcast("-document",ev,type);element&&element.getAttribute;)await this.dispatch(element,"",ev),element=ev.bubbles?element.parentElement:null},push(eventName){if(!eventName||this.events.has(eventName))return;let domEventName=eventName;eventName.startsWith("key-")&&(domEventName="keydown"),document.addEventListener(domEventName,this.processDocumentEvent.bind(this),{capture:!0,passive:!1}),window.addEventListener(domEventName,this.processWindowEvent.bind(this)),this.events.add(eventName)},addTree(rootElem){rootElem&&(this.add(rootElem),rootElem.querySelectorAll(`:scope [${this.prefix}id]`).forEach((elem=>this.add(elem))))},initMutationObserver(){this.mutationObserver=new MutationObserver((async mutations=>{await DT.Scheduler.waitForHighPriority(),mutations.forEach((mutation=>{"childList"===mutation.type&&mutation.addedNodes.forEach((node=>{node.nodeType===Node.ELEMENT_NODE&&(this.addTree(node),DT.loadDepsFromTree(node))}))}))})),this.mutationObserver.observe(document.body,{childList:!0,subtree:!0}),document.dispatchEvent(new Event("dt_loader:mutation-observer-init"))},getUrlsFromLazyDeps(lazyDeps){const parsedDeps=DT.parseLazyDeps(JSON.parse(lazyDeps));return Object.values(parsedDeps).flat(3)},prefetchLazyDeps(){DT.onLoad((()=>{const elements=[...document.querySelectorAll("[data-lazy-deps]")],templates=[...document.querySelectorAll("template")];elements?.forEach((element=>{try{DT.prefetchWorker.queuePrefetchUrls(this.getUrlsFromLazyDeps(element.dataset.lazyDeps))}catch(_){}})),templates?.forEach((template=>{const elements=undefined;[...template.content.querySelectorAll("[data-lazy-deps]")]?.forEach((element=>{try{DT.prefetchWorker.queuePrefetchUrls(this.getUrlsFromLazyDeps(element.dataset.lazyDeps))}catch(_){}}))}))}))},pushBroadcastTarget(broadcastPrefix,element,eventName){const key=`${broadcastPrefix}-${eventName}`;this.broadcastTargets[key]||(this.broadcastTargets[key]=[]),this.broadcastTargets[key].push(element)},add(element){const id=this.getAttr(element,"id");if(!id)return;const attributeNames=element.getAttributeNames(),elementEvents=attributeNames.filter((attr=>attr.startsWith(`${this.prefix}on`)));if((!elementEvents.length||elementEvents.some((ev=>!ev.endsWith("-preventdefault"))))&&(elementEvents.forEach((eventName=>{const domEvent=eventName.replace("-window","").replace("-document","").replace(`${this.prefix}on-`,"").replace("-preventdefault","");this.push(domEvent),this.isOnDocumentEvent(eventName)&&this.pushBroadcastTarget("-document",element,domEvent),this.isOnWindowEvent(eventName)&&this.pushBroadcastTarget("-window",element,domEvent),["ready","load"].includes(domEvent)&&this.pushBroadcastTarget("",element,domEvent)})),this.hasAttr(element,"root")&&!this.deps.has(id)))try{const js=[],css=[];let prefetchOnlyDeps=[];if(this.hasAttr(element,"js")){const urls=this.getDepsUrls(element,"js");js.push(...urls)}const jsOrderAttr=undefined;if(attributeNames.filter((attr=>attr.startsWith(`${this.prefix}js-order`))).forEach((attr=>{const urls=this.getDepsUrls(element,attr.replace(this.prefix,""));js.push([...urls])})),this.hasAttr(element,"css")){const urls=this.getDepsUrls(element,"css");css.push(...urls)}this.hasAttr(element,"prefetch-deps")&&(prefetchOnlyDeps=this.getDepsUrls(element,"prefetch-deps"));const priority=this.getAttr(element,"priority")??"low",prefetchOnlyDepsPriority=this.getAttr(element,"prefetch-deps-priority")??"low",prefetchOnlyDepsDirect=this.hasAttr(element,"prefetch-deps-direct"),elementDeps={js:js,css:css};this.deps.set(id,elementDeps);const doPrefetchOnlyDeps=async()=>{if(prefetchOnlyDeps?.length){if(await DT.nextIter(),prefetchOnlyDepsDirect)return DT.prefetchWorker.prefetchUrls(prefetchOnlyDeps,prefetchOnlyDepsPriority),void 0;DT.prefetchWorker.queuePrefetchUrls(prefetchOnlyDeps,prefetchOnlyDepsPriority)}};"load"===this.getAttr(element,"prefetch")?DT.onLoadIdle((()=>{DT.queuePrefetchDeps(elementDeps,priority,this.directPrefetch),doPrefetchOnlyDeps()})):(DT.queuePrefetchDeps(elementDeps,priority,this.directPrefetch),doPrefetchOnlyDeps())}catch(error){DT.log("error","Failed to lazy load from element",error)}},init(){DT.onReadyIdle((async()=>{const elements=document.querySelectorAll(`[${this.prefix}id]`);let processed=0;const PROCESSED_BREAK_TASK=25;for(const element of elements)this.add(element),processed++,processed>=25&&(await DT.Scheduler.yieldToMain(),processed=0);if(this.events.has("visible")){const results=document.querySelectorAll(`[${this.prefix}on-visible]`),observer=new IntersectionObserver((entries=>{for(const entry of entries)entry.isIntersecting&&(observer.unobserve(entry.target),this.dispatch(entry.target,"",this.createEvent("visible",entry)))}),{rootMargin:`${this.visibleMarginPx}px`});results.forEach((el=>observer.observe(el)))}if(this.events.has("not-visible")){const results=document.querySelectorAll(`[${this.prefix}on-not-visible]`),observer=new IntersectionObserver((entries=>{for(const entry of entries)entry.isIntersecting||(observer.unobserve(entry.target),this.dispatch(entry.target,"",this.createEvent("not-visible",entry)))}),{threshold:1});results.forEach((el=>observer.observe(el)))}this.events.has("ready")&&DT.onIdle((()=>this.broadcast("",this.createEvent("ready")))),this.events.has("load")&&DT.onLoadIdle((()=>this.broadcast("",this.createEvent("load")))),this.initMutationObserver(),this.prefetchLazyDeps(),DT.onNextIter((()=>{document.dispatchEvent(new Event("dt_loader:init"))}))}))}},DT.htmlLazyLoad.init(); DT.onLoad((()=>{DT.loadScriptsOnce("js/push.js")})); DT.onReady((()=>{if(void 0!==DT.toast)return;let isInitializing=!1,resolve,reject,initPromise=new Promise(((_resolve,_reject)=>{resolve=_resolve,reject=_reject}));const initializer=async(...params)=>{if(isInitializing)return initPromise.then((()=>{DT.toast?.(...params)}));isInitializing=!0;try{const initPromise=fetch(`${DT.componentsBasePath}Toast/init.ajax.php`),depsPromise=DT.loadScriptsOnce("js/ajax_html.js"),[response]=await Promise.all([initPromise,depsPromise]);if(!response.ok)return;return await DT.ajaxHtml.fromResponse(response,(html=>{html&&document.body.insertAdjacentHTML("beforeend",html)})),DT.toast===initializer?(DT.toast=null,void 0):DT.toast?.(...params)}catch(error){return DT.log("error","Failed to load toast component",error),()=>{}}finally{isInitializing=!1,resolve()}};DT.toast=initializer})); DT.onReadyIdle((()=>{document.addEventListener("click",(event=>{const button=event.target.closest(".js-password-toggle-btn");if(!button)return;event.preventDefault();const inputSelector=button.getAttribute("data-input"),input=document.querySelector(inputSelector);input&&("password"===input.type?(input.type="text",button.setAttribute("aria-pressed","true")):(input.type="password",button.setAttribute("aria-pressed","false")))}))})); document.addEventListener("paste",function(e){var t=e.target;if(t&&t.closest&&t.closest('.js-search-input, .js-header-search-input, input[name="srh_field"]')){var r=function(e){var t=e.clipboardData||window.clipboardData;if(!t)return null;var r=t.files;if(r&&r.length&&/^image\//.test(r[0].type))return r[0];for(var i=t.items||[],a=0;a<i.length;a++)if("file"==i[a].kind&&/^image\//.test(i[a].type)){var l=i[a].getAsFile();if(l)return l}return null}(e);if(r){var i=t.closest("form[data-puzzle]"),a=i?i.getAttribute("data-puzzle"):"off";if("off"!=a)if(e.preventDefault(),"register"!=a){try{t.value=""}catch(e){}DT.loadScriptsInOrderOnce("js/plugins/hermite.js","js/jquery.js","js/plugins/puzzle.js").then(function(){if("undefined"==typeof puzzle||!puzzle.searchFile)throw new Error("puzzle.searchFile is not available");puzzle.searchFile(r)}).catch(function(e){DT.log("error","Failed to load puzzle for a pasted image",e)})}else window.location.href=i.getAttribute("data-puzzle-register")}}}); DT.onReady((()=>{const combobox=document.querySelector(".js-search-combobox"),input=combobox.querySelector(".js-search-input"),wrapper=document.querySelector(".js-search-autocomplete"),content=wrapper.querySelector(".js-content"),accessibilityStatus=wrapper.querySelector(".js-accessibility-status"),isLogSelection=wrapper.hasAttribute("data-log-selection"),logUrl=wrapper.getAttribute("data-log-url"),searchForm=document.querySelector(".js-search-form");let suggestionsController=null,stateController=null,keyboardInteractionController=null,state="close",currentInputValue=input.value;const statusTexts={noSuggestions:wrapper.getAttribute("data-no-suggestions-text"),fetching:wrapper.getAttribute("data-fetching-text"),multipleResults:wrapper.getAttribute("data-multiple-results-text"),oneResult:wrapper.getAttribute("data-one-result-text")},fetchUrl=wrapper.getAttribute("data-fetch-url");let lazyDepsInitiated=!1;const initLazyDeps=async()=>{if(lazyDepsInitiated)return;let deps;try{const jsonDeps=wrapper.dataset?.lazyDeps,parsedDeps=DT.parseLazyDeps(JSON.parse(jsonDeps));deps=DT.collectDeps(parsedDeps)}catch(error){DT.log("warn","Failed to parse SearchAutocomplete lazy deps: ",error)}if(deps){try{await DT.createLoadDeps(deps,"high")()}catch(error){return DT.log("warn","Failed to load SearchAutocomplete lazy deps: ",error),void 0}lazyDepsInitiated=!0,wrapper.setAttribute("data-init","true")}},isOpen=()=>"open"===state,isClose=()=>"close"===state,abortPreviousStateTask=()=>{try{stateController?.abort("Abort previous state task"),stateController=null}catch(_){}},abortPreviousKeyboardInteractionTask=()=>{try{keyboardInteractionController?.abort("Abort previous keyboard interaction"),keyboardInteractionController=null}catch(_){}},abortScheduledTasks=()=>{abortPreviousStateTask(),abortPreviousSuggestionsTask(),abortPreviousKeyboardInteractionTask()},close=async()=>{if(abortScheduledTasks(),!isClose()){stateController=new TaskController;try{await DT.Scheduler.postTask((()=>{clearCurrentSuggestionFocus(),combobox.setAttribute("aria-expanded","false"),wrapper.setAttribute("data-state","closed"),state="close"}),{priority:"user-blocking",signal:stateController.signal})}catch(_){}}},open=async()=>{if(abortPreviousStateTask(),!isOpen()){stateController=new TaskController;try{await DT.Scheduler.postTask((()=>{combobox.setAttribute("aria-expanded","true"),wrapper.setAttribute("data-state","opened"),state="open",updateSuggestionsStatus()}),{priority:"user-blocking",signal:stateController.signal})}catch(_){}}},setStatus=message=>{accessibilityStatus.textContent=message},setFetchingStatus=()=>{setStatus(statusTexts.fetching)},setSuggestionsStatus=count=>{switch(!0){case count<1:setStatus(statusTexts.noSuggestions);break;case 1===count:setStatus(statusTexts.oneResult);break;case count>1:setStatus(statusTexts.multipleResults.replace("%d%",count));break;default:setStatus(statusTexts.noSuggestions);break}},querySuggestionsCategories=()=>content.querySelectorAll(".js-suggestions"),querySuggestions=()=>content.querySelectorAll(".js-suggestion"),logSelection=suggestion=>{isLogSelection&&DT.http.post(logUrl,{data:{search:suggestion.getAttribute("data-value"),category:suggestion.getAttribute("data-category")}}).catch((()=>{}))},isSuggestionFocused=suggestion=>"true"===suggestion.getAttribute("aria-selected"),setSuggestionFocus=suggestion=>{input.value=suggestion.getAttribute("data-value"),setSuggestionVisualFocus(suggestion)},scrollIntoView=suggestion=>{suggestion.hasAttribute("data-focus-prevent-scroll")||suggestion.scrollIntoView({block:"nearest",inline:"nearest"})},setSuggestionVisualFocus=suggestion=>{isSuggestionFocused(suggestion)||(clearCurrentSuggestionFocus(),scrollIntoView(suggestion),input.setAttribute("aria-activedescendant",suggestion.id),suggestion.setAttribute("aria-selected","true"),setStatus(suggestion.getAttribute("aria-label")))},clearCurrentSuggestionFocus=()=>{input.setAttribute("aria-activedescendant",""),document.querySelector('.js-suggestion[aria-selected="true"]')?.setAttribute("aria-selected","false")},appendSkipInputIfNeeded=suggestion=>{suggestion.hasAttribute("data-append-skip-input")&&searchForm.insertAdjacentHTML("afterbegin",'<input type="hidden" name="skip" value="yes">')},selectSuggestion=(suggestion,shouldDispatchEvent=!0)=>{input.value=suggestion.getAttribute("data-value"),appendSkipInputIfNeeded(suggestion),logSelection(suggestion),close(),shouldDispatchEvent&&document.dispatchEvent(new CustomEvent("search-autocomplete:select-suggestion"))},abortPreviousSuggestionsTask=()=>{try{suggestionsController?.abort("Abort previous suggestion task"),suggestionsController=null}catch(_){}},updateSuggestionsStatus=()=>{const suggestionsCategories=querySuggestionsCategories();let countSuggestions=0;suggestionsCategories.forEach((suggestions=>{const count=parseInt(suggestions.getAttribute("data-count"),10);countSuggestions+=isNaN(count)?0:count})),setSuggestionsStatus(countSuggestions)},displaySuggestions=async()=>{abortPreviousSuggestionsTask();const searchKeyword=input.value;if(!searchKeyword)return;suggestionsController=new AbortController;const signal=suggestionsController.signal;try{if(await DT.Scheduler.waitForHighPriority({signal:signal}),await initLazyDeps(),signal.aborted)return;setFetchingStatus();const response=await DT.http.get(fetchUrl,{data:{searchKeyword:searchKeyword},signal:signal});if(!response.ok)return;await DT.Scheduler.postTask((async()=>{await DT.ajaxHtml.fromResponse(response,(html=>{if(!signal.aborted){if(!html)return close().then((()=>{content.innerHTML=html})),setSuggestionsStatus(0),void 0;content.innerHTML=html,clearCurrentSuggestionFocus()}})),signal.aborted||(isClose()?open():updateSuggestionsStatus())}),{priority:"user-blocking",signal:signal})}catch(error){DT.log("warn","Error displaying autocomplete suggestions: ",error)}},debouncedDisplaySuggestions=DT.debounce(displaySuggestions,200),queryCurrentFocusedSuggestion=()=>content.querySelector('.js-suggestion[aria-selected="true"]'),focusFirstSuggestion=()=>{const suggestion=content.querySelector(".js-suggestion");suggestion&&setSuggestionFocus(suggestion)},focusLastSuggestion=()=>{const suggestions=content.querySelectorAll(".js-suggestion");if(!suggestions.length)return;const lastSuggestion=suggestions[suggestions.length-1];setSuggestionFocus(lastSuggestion)},cancelKeyboardNavigation=()=>{clearCurrentSuggestionFocus(),revertSuggestion(),updateSuggestionsStatus()},focusNextSuggestion=()=>{const currentFocused=queryCurrentFocusedSuggestion();if(!currentFocused)return focusFirstSuggestion(),void 0;const suggestions=querySuggestions(),suggestionsLength=suggestions.length;for(let i=0;i<suggestionsLength;i++){const suggestion=undefined;if(suggestions[i]===currentFocused&&i+1<suggestionsLength)return setSuggestionFocus(suggestions[i+1]),void 0}cancelKeyboardNavigation()},focusPreviousSuggestion=()=>{const currentFocused=queryCurrentFocusedSuggestion();if(!currentFocused)return focusLastSuggestion(),void 0;const suggestions=querySuggestions(),suggestionsLength=suggestions.length;for(let i=0;i<suggestionsLength;i++){const suggestion=undefined;if(suggestions[i]===currentFocused&&i-1>=0)return setSuggestionFocus(suggestions[i-1]),void 0}cancelKeyboardNavigation()},revertSuggestion=()=>{input.value=currentInputValue},handleSuggestionHover=event=>{const suggestion=event.target.closest(".js-suggestion");suggestion&&content.contains(suggestion)&&setSuggestionVisualFocus(suggestion)},handleUserInputChange=()=>{previousInputValue=currentInputValue,currentInputValue=input.value},handleKeydownPreventDefault=event=>{switch(event.key){case"ArrowDown":case"ArrowUp":case"PageUp":case"PageDown":event.preventDefault();break;default:break}},handleKeyboardInteraction=async event=>{abortPreviousKeyboardInteractionTask(),keyboardInteractionController=new TaskController;const signal=keyboardInteractionController.signal;switch(event.key){case"Enter":case"Escape":if(close(),"Escape"===event.key){try{await DT.Scheduler.waitForHighPriority(),revertSuggestion()}catch(_){}return}if("Enter"===event.key){const currentFocused=queryCurrentFocusedSuggestion();currentFocused&&selectSuggestion(currentFocused,!1)}break;case"ArrowDown":case"ArrowUp":case"PageUp":case"PageDown":if(isClose())return displaySuggestions(),void 0;try{await DT.Scheduler.waitForHighPriority({signal:signal})}catch(_){return}if(signal.aborted)return;if("PageUp"===event.key)return focusFirstSuggestion(),void 0;if("PageDown"===event.key)return focusLastSuggestion(),void 0;if("ArrowDown"===event.key)return focusNextSuggestion(),void 0;if("ArrowUp"===event.key)return focusPreviousSuggestion(),void 0;break;default:break}},handleInputBlur=async event=>{wrapper.contains(event.relatedTarget)||isClose()||(close(),await DT.Scheduler.waitForHighPriority(),revertSuggestion())},handleSuggestionClick=event=>{const suggestion=event.target.closest(".js-suggestion");suggestion&&DT.Scheduler.postTask((()=>{selectSuggestion(suggestion)}),{priority:"user-blocking"})},handleInput=()=>{if(handleUserInputChange(),""===input.value)return close(),void 0;debouncedDisplaySuggestions()},preventBlurIfClickInside=event=>{event.preventDefault()},clearFocusOnMouseOut=event=>{const suggestion=event.target.closest(".js-suggestion");suggestion&&content.contains(suggestion)&&isSuggestionFocused(suggestion)&&!suggestion.contains(event.relatedTarget)&&clearCurrentSuggestionFocus()};wrapper.addEventListener("mousedown",preventBlurIfClickInside),content.addEventListener("click",handleSuggestionClick),input.addEventListener("blur",handleInputBlur),input.addEventListener("input",handleInput),input.addEventListener("keydown",handleKeydownPreventDefault),input.addEventListener("keyup",handleKeyboardInteraction),content.addEventListener("mouseover",handleSuggestionHover),content.addEventListener("mouseout",clearFocusOnMouseOut)})); DT.onReadyIdle((async()=>{const waitLazyLoader=new Promise((resolve=>{document.addEventListener("dt_loader:mutation-observer-init",(()=>{resolve()}))}));await Promise.race([waitLazyLoader,DT.nextIter(200)]);const bannerPlaceholders=document.querySelectorAll(".js-banner-ajax-placeholder");bannerPlaceholders.length&&(DT.afterLcp&&await(DT.afterLcp?.()),bannerPlaceholders.forEach(((placeholder,index)=>{placeholder.innerHTML=DT.bannersToLoad[index]})),setTimeout((()=>{document.querySelectorAll(".js-banner-default").forEach((elem=>{elem.setAttribute("data-state",""),elem.setAttribute("data-loaded",""),DT.onNextIter((()=>{document.dispatchEvent(new CustomEvent("banner:loaded",{detail:{name:elem.getAttribute("data-name"),element:elem}}))}))}))}),0))}),100); function doNothing(){return!1}function doneEvent(){try{if(searchUrlWithPuzzle(document.querySelector('input[name="srh_field"]').value))return!1}catch(e){}return searchSubmitFilters(),!1}function checkShValue(e){var t=document.getElementById(e);return t.value=t.value.trim().replace(/[`~!@#$%^&*()_|+\-=?;:'",<>\{\}\[\]\\\/]/gi," ").toLowerCase(),0==t.value.length||t.value==dtl_SearchSubmit_000||t.value==dtl_SearchSubmit_001||t.value.indexOf(dtl_SearchSubmit_006)>=0?(DT.afterPaint(()=>{alert(dtl_SearchSubmit_002)}),t.focus(),t.select(),!1):t.value.length<2?(DT.afterPaint(()=>{alert(dtl_SearchSubmit_003)}),t.focus(),t.select(),!1):-1!=t.value.search(/[$\\@\\\#%\^\&\*\(\)\[\]\+\_\{\}\`\~\=\|]/)?(DT.afterPaint(()=>{alert(dtl_SearchSubmit_004+"\n\r\n\r@ $ % ^ & * # ( ) [ ] \\ { + } ` ~ = | \n\r\n\r"+dtl_SearchSubmit_005+"\n")}),t.focus(),t.select(),!1):t.value}function updateDisableClass(e,t=".people-filers-all"){document.querySelectorAll(t).forEach(t=>{e?(t.classList.add("fltr-content__group--disable"),t.setAttribute("inert",""),t.style.opacity="0.2",t.style.pointerEvents="none"):(t.classList.remove("fltr-content__group--disable"),t.removeAttribute("inert"),t.style.opacity="1",t.style.pointerEvents="auto")})}function bindChange(e,t,s){var r=document.getElementById(e);r&&r.addEventListener(t,function(){changeEvent(1);var e=document.getElementById(s);e&&(e.checked=!0)})}function changeEvent(e){var t=document.getElementById("changeEvent").value;return 1==e&&0==t?(document.getElementById("changeEvent").value="1",!1):"clear"==e&&1==t?(document.getElementById("changeEvent").value="0",!1):2==e?t:void 0}function setActiveSelection(e){"y"===varSHget[e]&&DT.UI.set("#"+e,"active")}function updateSingleSHFlag(e){const t=["s_ph","s_ed","s_il","s_video","s_audio","s_ad"];if(t.includes(e)){if("undefined"==typeof varSHget)return;t.forEach(e=>{varSHget[e]="n"}),varSHget[e]="y"}}function searchSubmitFilters(e){var t=checkShValue("srh_field");if(""===t)return!1;if(varSHget.srh_field=t,document.querySelector("#myonoffswitchwre").checked&&""!==srh_field){var s=checkShValue("srh_fieldwrs");if(""===s)return!1;varSHget.firstvalue=varSHget.srh_field,varSHget.srh_field=s,varSHget.srh_fieldwrs=s}varSHget.s_ph=document.getElementById("s_ph")&&document.getElementById("s_ph").checked?"y":"n",varSHget.s_ed=document.getElementById("s_ed")&&document.getElementById("s_ed").checked?"y":"n",varSHget.s_il=document.getElementById("s_il")&&document.getElementById("s_il").checked?"y":"n",varSHget.s_video=document.getElementById("s_video")&&document.getElementById("s_video").checked?"y":"n",varSHget.s_amusic=document.getElementById("s_amusic")&&document.getElementById("s_amusic").checked?"y":"n",varSHget.s_asfx=document.getElementById("s_asfx")&&document.getElementById("s_asfx").checked?"y":"n",varSHget.s_ad=document.getElementById("s_ad")&&document.getElementById("s_ad").checked?"y":"n",updateSingleSHFlag(e);var r=varSHget.site_adr+"search.php?securitycheck="+varSHget.securitycheck;varSHget.srh_field&&(r=r+"&srh_field="+varSHget.srh_field),varSHget.firstvalue&&(r=r+"&firstvalue="+varSHget.firstvalue),varSHget.lastsearchvalue&&(r=r+"&lastsearchvalue="+varSHget.lastsearchvalue),varSHget.srh_fieldwrs&&(r=r+"&srh_fieldwrs="+varSHget.srh_fieldwrs),varSHget.s_all&&(r+="&s_all=n"),varSHget.s_ph&&(r=r+"&s_ph="+varSHget.s_ph),varSHget.s_il&&(r=r+"&s_il="+varSHget.s_il),varSHget.s_video&&"y"!==varSHget.s_all&&"y"!==varSHget.s_audio&&(r=r+"&s_video="+varSHget.s_video),varSHget.s_audio&&"y"!==varSHget.s_all&&"y"!==varSHget.s_video&&"y"!==varSHget.s_ph&&"y"!==varSHget.s_ad&&"y"!==varSHget.s_ed&&"y"!==varSHget.s_il&&(r+="&s_audio=y"),varSHget.s_ad&&(r=r+"&s_ad="+varSHget.s_ad),varSHget.s_free&&(r=r+"&s_free="+varSHget.s_free),document.querySelector("#myonoffswitchwre").checked&&(r+="&s_st=wre"),document.querySelector("#morewec").checked&&"morewec_remvf"!==e&&(r+="&s_st=wec"),"y"==varSHget.s_wp&&"s_wp_remvf"!=e&&(r=r+"&s_wp="+varSHget.s_wp),"y"==varSHget.s_op&&"s_op_remvf"!=e&&(r=r+"&s_op="+varSHget.s_op,"y"==varSHget.s_mrc1&&(r=r+"&s_mrc1="+varSHget.s_mrc1),"y"==varSHget.s_mrc2&&(r=r+"&s_mrc2="+varSHget.s_mrc2),"y"==varSHget.s_mrc3&&(r=r+"&s_mrc3="+varSHget.s_mrc3),"y"==varSHget.s_mrc4&&(r=r+"&s_mrc4="+varSHget.s_mrc4),"y"==varSHget.s_mrc5&&(r=r+"&s_mrc5="+varSHget.s_mrc5),r=(r=r+"&s_mr="+varSHget.s_mr)+"&s_mrg="+varSHget.s_mrg,"y"==varSHget.s_mra1&&(r=r+"&s_mra1="+varSHget.s_mra1),"y"==varSHget.s_mra2&&(r=r+"&s_mra2="+varSHget.s_mra2),"y"==varSHget.s_mra3&&(r=r+"&s_mra3="+varSHget.s_mra3),"y"==varSHget.s_mra4&&(r=r+"&s_mra4="+varSHget.s_mra4),"y"==varSHget.s_mra5&&(r=r+"&s_mra5="+varSHget.s_mra5),"y"==varSHget.s_mra6&&(r=r+"&s_mra6="+varSHget.s_mra6),"y"==varSHget.s_mra7&&(r=r+"&s_mra7="+varSHget.s_mra7),"y"==varSHget.s_mra8&&(r=r+"&s_mra8="+varSHget.s_mra8),"y"==varSHget.s_mra9&&(r=r+"&s_mra9="+varSHget.s_mra9),"y"==varSHget.s_mrea&&(r=r+"&s_mrea="+varSHget.s_mrea),"y"==varSHget.s_mreb&&(r=r+"&s_mreb="+varSHget.s_mreb),"y"==varSHget.s_mreh&&(r=r+"&s_mreh="+varSHget.s_mreh),"y"==varSHget.s_mrem&&(r=r+"&s_mrem="+varSHget.s_mrem),"y"==varSHget.s_mrec&&(r=r+"&s_mrec="+varSHget.s_mrec),"y"==varSHget.s_mreo&&(r=r+"&s_mreo="+varSHget.s_mreo)),"y"==varSHget.s_sl0&&"s_sl_remvf"!=e&&(r=r+"&s_sl0="+varSHget.s_sl0),"y"==varSHget.s_sl1&&"s_sl_remvf"!=e&&(r=r+"&s_sl1="+varSHget.s_sl1),"y"==varSHget.s_sl2&&"s_sl_remvf"!=e&&(r=r+"&s_sl2="+varSHget.s_sl2),"y"==varSHget.s_sl3&&"s_sl_remvf"!=e&&(r=r+"&s_sl3="+varSHget.s_sl3),"y"==varSHget.s_sl4&&"s_sl_remvf"!=e&&(r=r+"&s_sl4="+varSHget.s_sl4),"y"==varSHget.s_sl5&&"s_sl_remvf"!=e&&(r=r+"&s_sl5="+varSHget.s_sl5),"y"==varSHget.s_rf&&"s_rf_remvf"!=e&&(r=r+"&s_rf="+varSHget.s_rf),"y"==varSHget.s_ed&&"s_ed_remvf"!=e&&(r=r+"&s_ed="+varSHget.s_ed),"y"==varSHget.s_ed&&"s_ed_remvf"===e&&(varSHget.s_ed="n",r+="&s_rf=y"),"y"==varSHget.s_exclusive&&"s_exclusive_remvf"!=e&&(r=r+"&s_exclusive="+varSHget.s_exclusive),"y"==varSHget.s_wel&&"s_wel_remvf"!=e&&(r=r+"&s_wel="+varSHget.s_wel),"y"==varSHget.s_pel&&"s_pel_remvf"!=e&&(r=r+"&s_pel="+varSHget.s_pel),"y"==varSHget.s_srel&&"s_srel_remvf"!=e&&(r=r+"&s_srel="+varSHget.s_srel),"y"==varSHget.s_orp&&"s_orp_remvf"!=e&&(r=r+"&s_orp="+varSHget.s_orp),"y"==varSHget.s_orl&&"s_orl_remvf"!=e&&(r=r+"&s_orl="+varSHget.s_orl),"y"==varSHget.s_ors&&"s_ors_remvf"!=e&&(r=r+"&s_ors="+varSHget.s_ors),"y"==varSHget.s_orw&&"s_orw_remvf"!=e&&(r=r+"&s_orw="+varSHget.s_orw),"y"==varSHget.s_clc&&"s_clc_remvf"!=e&&(r=r+"&s_clc="+varSHget.s_clc),"y"==varSHget.s_clm&&"s_clm_remvf"!=e&&(r=r+"&s_clm="+varSHget.s_clm);let a=document.querySelector("#s_color1");a&&(a=a.value.replace("#",""));let c=document.querySelector('select[name="form_select_id"]');c&&(c=Number(c.value));let n=document.querySelector("#s_color2");n&&(n=n.value.replace("#",""));let _=document.querySelector('select[name="form_select_id2"]');_&&(_=Number(_.value)),document.querySelector("#s_c1e")&&document.querySelector("#s_c1e").checked?varSHget.s_c1e="y":varSHget.s_c1e="",document.querySelector("#s_c2e")&&document.querySelector("#s_c2e").checked?varSHget.s_c2e="y":varSHget.s_c2e="","y"==varSHget.s_c1e&&null!=a&&null!=c&&"s_c1e_remvf"!=e&&(r=(r=(r=r+"&s_c1e="+varSHget.s_c1e)+"&s_color1="+a)+"&s_percent1="+c),"y"==varSHget.s_c2e&&null!=n&&null!=_&&"s_c2e_remvf"!=e&&(r=(r=(r=r+"&s_c2e="+varSHget.s_c2e)+"&s_color2="+n)+"&s_percent2="+_),""!==varSHget.s_rsf&&"MPsize_remvf"!=e&&(r=r+"&s_rsf="+varSHget.s_rsf),""!==varSHget.s_rst&&"MPsize_remvf"!=e&&(r=r+"&s_rst="+varSHget.s_rst),"on"!=varSHget.s_cf&&"off"!=varSHget.s_cf||(r=r+"&s_cf="+varSHget.s_cf),varSHget.memberid&&(document.querySelector("#s_amf").checked?varSHget.s_amf="y":varSHget.s_amf="","y"===varSHget.s_amf&&"s_amf_remvf"!==e&&(r+="&s_amf="+varSHget.s_amf));var l=document.querySelector("#s_sp").value.replace(/\s/g,"");""!==l&&"s_sp_remvf"!==e&&(!0===/^[0-9a-zA-Z \-_,]+$/.test(l)&&(l=encodeURIComponent(l),r+="&s_sp="+l));var d=document.querySelector("#s_exc").value.replace(/\s/g,"");""!==d&&"s_exc_remvf"!==e&&(!0===/^[0-9a-zA-Z \-_,]+$/.test(d)&&(d=encodeURIComponent(d),r+="&s_exc="+d));1==varSHget.s_exc_ai&&"s_exc_ai_remvf"!==e&&(r=r+"&s_exc_ai="+varSHget.s_exc_ai),1==varSHget.s_exc_ai&&"s_exc_ai_remvf"===e&&(varSHget.s_exc_ai=0,varSHget.s_onlyai="n"),"y"==varSHget.s_onlyai&&1!=varSHget.s_exc_ai&&"s_onlyai"!==e&&(r=r+"&s_onlyai="+varSHget.s_onlyai),"y"==varSHget.s_amusic&&"s_amusic_remvf"!==e&&(r=r+"&s_amusic="+varSHget.s_amusic),"y"==varSHget.s_asfx&&"s_asfx_remvf"!==e&&(r=r+"&s_asfx="+varSHget.s_asfx),"y"!=varSHget.s_sl1&&"y"!=varSHget.s_sl2&&"y"!=varSHget.s_sl3&&"y"!=varSHget.s_sl4&&"y"!=varSHget.s_sl4||1!=varSHget.s_zerogravityactiv||"s_sl_remvf"==e||setCookie2("dreamstime_slgravity","n",5),"y"==varSHget.s_sl0&&"y"!=varSHget.s_sl1&&"y"!=varSHget.s_sl2&&"y"!=varSHget.s_sl3&&"y"!=varSHget.s_sl4&&1==varSHget.s_zerogravityactiv&&"s_sl_remvf"!=e&&setCookie2("dreamstime_slgravity","",-5),varSHget.sortcriteria&&(r=r+"&sortcriteria="+varSHget.sortcriteria),r+="&nd=1",memorizeFilters(varSHget.s_ed,varSHget.s_exc_ai),setTimeout(()=>{window.location.href=r},30)}function myonoffswitch2(e){var t=document.URL,s=t.substr(t.length-5),r=new XMLHttpRequest;r.open("POST","../../ajax/memoptions.php"),r.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),r.onload=function(){".html"===s?location.reload():searchSubmitFilters()},r.send("showcontentfiltered="+e+"&securitycheck="+varSHget.securitycheck)}function myonoffswitch3(e){var t=document.URL,s=t.substr(t.length-5),r=new XMLHttpRequest;r.open("POST","../../ajax/memoptions.php"),r.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),r.onload=function(){".html"===s?location.reload():searchSubmitFilters()},r.send("exclude_ai="+e+"&securitycheck="+varSHget.securitycheck)}function resetContent(e){"y"===varSHget.s_audio&&"y"!==varSHget.s_all&&(document.getElementById("s_amusic").checked=!0,document.getElementById("s_asfx").checked=!0,varSHget.s_amusic="y",varSHget.s_asfx="y",varSHget.s_rf="y",document.getElementById("s_rf").checked=!0),"y"===varSHget.s_audio||"y"!=varSHget.s_all&&"y"!=varSHget.s_video&&"y"!=varSHget.s_ph&&"y"!=varSHget.s_ad&&"y"!=varSHget.s_ed&&"y"!=varSHget.s_il||(document.getElementById("s_ph").checked=!1,document.getElementById("s_ad").checked=!1,document.getElementById("s_video").checked=!1,document.getElementById("s_il").checked=!1,"y"==e.s_ph&&(document.getElementById("s_ph").checked=!0,varSHget.s_ph="y"),"y"==e.s_ad&&"y"!==e.s_video&&(document.getElementById("s_ad").checked=!0,varSHget.s_ad="y"),"y"==e.s_video&&(document.getElementById("s_video").checked=!0,varSHget.s_video="y",document.getElementById("s_ad").checked=!1,varSHget.s_ad="n"),"y"==e.s_il&&(document.getElementById("s_il").checked=!0,varSHget.s_il="y"),"y"==e.s_ed?(document.getElementById("s_ed").checked=!0,document.getElementById("s_ph").checked=!0,document.getElementById("s_video").checked=!0,document.getElementById("s_il").checked=!0,varSHget.s_ed="y",varSHget.s_ph="y",varSHget.s_il="y",varSHget.s_video="y"):(document.getElementById("s_ed").checked=!0,varSHget.s_ed="y"),document.getElementById("s_wel").checked=!1,document.getElementById("s_pel").checked=!1,document.getElementById("s_srel").checked=!1,varSHget.s_wel="n",varSHget.s_pel="n",varSHget.s_srel="n",DT.UI.set("#s_aiinclude","active"),DT.UI.unset("#s_exc_ai"),DT.UI.unset("#s_onlyai"),varSHget.s_onlyai="n",varSHget.s_exc_ai=1,document.querySelector(".js-s_pel").style.display="",updateDisableClass(!1,wclass=".js-option-s_ad"),desabled_S_ad(e),"y"!==e.s_ed?(varSHget.s_rf="y",document.getElementById("s_rf").checked=!0):(varSHget.s_rf="n",document.getElementById("s_rf").checked=!1)),document.getElementById("s_amf").checked=!1,document.getElementById("morewec").checked=!1,document.getElementById("s_exclusive").checked=!1,varSHget.s_amf="n",varSHget.morewec="n",varSHget.s_exclusive="n";var t=document.getElementById("s_sp"),s=document.getElementById("s_exc");t.value="",s.value="",changeEvent(1)}function resetPeople(){const e=["s_mrea","s_mreb","s_mreh","s_mrem","s_mrec","s_mreo"];(document.querySelector("#cnt-1").checked||document.querySelector("#nopeople").checked)&&(document.querySelector("#cnt-1").checked=!1,filtersClassAction(".numberppl","unset"),filtersClassAction(".genderppl","unset"),document.querySelector("#nopeople").checked=!1,varSHget.s_op="",varSHget.s_mr="",varSHget.s_wp="",varSHget.s_mrc1="y",varSHget.s_mrc2="y",varSHget.s_mrc3="y",varSHget.s_mrc4="y",varSHget.s_mrc5="y",varSHget.s_mrg="1",DT.UI.set("#s_mrca","active"),DT.UI.set("#s_mrg1","active"),filtersClassAction(".agerange","unset"),DT.UI.set("#s_mraany","active"),e.forEach(e=>{document.getElementById(e).checked=!0})),document.getElementById("includepeople").checked=!0,updateDisableClass(!0),changeEvent(1)}function resetFilters(){memorizeFilters("","",1).then(function(e){1===e&&setTimeout(()=>{document.querySelectorAll(".js-reset-searches").forEach(function(e){if(!e.checked)return;let t=e.id;varSHget.s_audio&&(t="s_audio"),"s_ph"===t&&document.getElementById("s_ed")?.checked||t&&SearchSubmit2024(t)})},20)})}function resetMedia(){"y"===varSHget.s_audio&&"y"!==varSHget.s_all&&((document.querySelector("#cnt-1").checked||document.querySelector("#nopeople").checked)&&(document.querySelector("#cnt-1").checked=!1,document.querySelector("#nopeople").checked=!1,varSHget.s_op="",varSHget.s_mr="",varSHget.s_wp=""),document.getElementById("includepeople").checked=!0,"active"!==document.getElementById("s_slany").getAttribute("data-state")&&(document.querySelectorAll(".levelp").forEach(function(e){DT.UI.unset(e)}),DT.UI.set("#s_slany","active"),varSHget.s_sl0="y",varSHget.s_sl1="y",varSHget.s_sl2="y",varSHget.s_sl3="y",varSHget.s_sl4="y",varSHget.s_sl5="y"));"y"===varSHget.s_audio||"y"!=varSHget.s_all&&"y"!=varSHget.s_video&&"y"!=varSHget.s_ph&&"y"!=varSHget.s_ad&&"y"!=varSHget.s_ed&&"y"!=varSHget.s_il||(document.getElementById("s_orp").checked=!0,document.getElementById("s_orp").dispatchEvent(new Event("change")),document.getElementById("s_orl").checked=!0,document.getElementById("s_orl").dispatchEvent(new Event("change")),document.getElementById("s_ors").checked=!0,document.getElementById("s_ors").dispatchEvent(new Event("change")),document.getElementById("s_orw").checked=!0,document.getElementById("s_orw").dispatchEvent(new Event("change")),DT.UI.set("#s_clany","active"),DT.UI.unset("#s_clc"),DT.UI.unset("#s_clm"),document.getElementById("s_color1").value="",document.getElementById("s_color1").dispatchEvent(new Event("change")),document.getElementById("s_color2").value="",document.getElementById("s_color2").dispatchEvent(new Event("change")),document.getElementById("s_c1e").checked=!1,document.getElementById("s_c2e").checked=!1,varSHget.s_orp="y",varSHget.s_orl="y",varSHget.s_ors="y",varSHget.s_orw="y",varSHget.s_clc="y",varSHget.s_clm="y",varSHget.s_color1="",varSHget.s_color2="",varSHget.s_rsf=0,varSHget.s_rst=7,DT.UI.set("#s_rstany","active"),DT.UI.unset("#s_rst5"),DT.UI.unset("#s_rst8"),DT.UI.unset("#s_rst15"),DT.UI.unset("#s_rst20"),"active"!==document.getElementById("s_slany").getAttribute("data-state")&&(document.querySelectorAll(".levelp").forEach(function(e){DT.UI.unset(e)}),DT.UI.set("#s_slany","active"),varSHget.s_sl0="y",varSHget.s_sl1="y",varSHget.s_sl2="y",varSHget.s_sl3="y",varSHget.s_sl4="y",varSHget.s_sl5="y"));changeEvent(1)}function filtersClassAction(e,t){const s=document.querySelectorAll(e);for(var r=0;r<s.length;r++)(function(e){const r=document.getElementById(s[e].id);"unset"==t&&DT.UI.unset(r)})(r)}function changeCheckboxValueWithCnt(e){document.getElementById(e).addEventListener("change",function(){document.getElementById("cnt-1").checked=!0;var t=new Event("change");document.getElementById("cnt-1").dispatchEvent(t),changeEvent(1),this.checked?varSHget[e]="y":varSHget[e]=""})}function setCheckedState(e,t){"y"===varSHget[t]&&(document.getElementById(e).checked=!0)}function cloaseAllFilters(){return DT.Scheduler.postTask(()=>{const e=document.getElementsByClassName("js-adv-filter-trigger");for(var t=0;t<e.length;t++)(function(t){const s=document.getElementById(e[t].getAttribute("data-dt-id"));DT.UI.set(s,"hidden"),e[t].setAttribute("data-state","")})(t)},{priority:"user-visible"})}async function zerogravitySwitch(e){await DT.Scheduler.waitForHighPriority(),"addcookie"==e?(changeEvent(1),setCookie2("dreamstime_slgravity","n",5),cloaseAllFilters(),searchSubmitFilters("s_sl_remvf")):"removecookie"==e&&(changeEvent(1),setCookie2("dreamstime_slgravity","",-5),searchSubmitFilters("s_sl_remvf"))}function desabled_S_ad(e){"y"===e.s_video&&"y"!==e.s_ph&&"y"!==e.s_il&&(e.s_ad="n",e.s_pel="n",document.getElementById("s_ad").checked=!1,document.getElementById("s_pel").checked=!1,document.querySelector(".js-s_pel").style.display="none",updateDisableClass(!0,wclass=".js-option-s_ad"))}function advSearchHideEx(){0==document.getElementById("s_ph").checked&&0==document.getElementById("s_il").checked&&0==document.getElementById("s_ad").checked?document.querySelector(".js-photo-ex-license").style.display="none":1!=document.getElementById("s_ph").checked&&1!=document.getElementById("s_il").checked&&1!=document.getElementById("s_ad").checked||(document.querySelector(".js-photo-ex-license").style.display="")}function handleCheckboxChange(e,t){changeEvent(1),e.target.checked?varSHget[t]="y":varSHget[t]="n"}function changeSearchLabel(e){if(["s_asfx","s_amusic"].includes(e))return;document.querySelector("form[name=searchfrm]").action=(document.querySelector("form[name=searchfrm]").action.split("?")[0].replace(/[^/]*$/,"")||"/")+"search.php";let t="",s="";var r,a;document.querySelectorAll("#s_ph, #s_ed, #s_il, #s_ad, #s_video, #s_audio").forEach(e=>{e.checked?(t+=document.querySelector(`label[for=${e.id}]`).innerHTML+", ",s+="Y"):s+="N"}),6===s.length&&(s+="NN"),t=t.slice(0,-2),r="#s_ad",a=!["NYNNNNNN","NYYYNNNN","NNYYNNNN","NYNYNNNN","NNNYNNNN","NYNNYNNN","NNNNYNNN"].includes(s),document.querySelector(r).parentElement.style.display=a?"":"none",document.querySelector(".js-select-selected-content").innerHTML=t}function addChangeHandler(e,t){e.forEach(e=>{const s=document.getElementById(e);s&&s.addEventListener("change",t)})}function memorizeFilters(e,t,s=0){return new Promise(function(r){var a,c=new XMLHttpRequest;c.open("POST","../../ajax/memoptions.php"),c.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),c.timeout=200,c.onload=function(){if(200!==c.status)return r(0);try{var e=JSON.parse(c.responseText);return r(e&&"ok"===e.status?1:0)}catch(e){return r(1)}},c.onerror=function(){r(0)},c.ontimeout=function(){r(0)},a=0===s?"memorize_filters=1&s_ed="+encodeURIComponent(e)+"&s_exc_ai="+encodeURIComponent(t)+"&securitycheck="+encodeURIComponent(varSHget.securitycheck):"memorize_filters=1&clr_filters=1&securitycheck="+encodeURIComponent(varSHget.securitycheck),c.send(a)})} DT.onReady((()=>{const COOKIE_EXPIRES_DAYS=30,handleClick=async event=>{const button=event.currentTarget;if(!button)return;await DT.Scheduler.waitForHighPriority();const sortCriteria=button.getAttribute("data-sort");if(!sortCriteria)return;DT.setCookie("sortorder_same_url",`${sortCriteria}|${DT.fullCpage}`,30,"/",".dreamstime.com");const url=new URL(window.location.href);url.searchParams.delete("pg"),window.location.href=url.toString()};document.querySelectorAll(".js-search-sort-btn").forEach((button=>{button.addEventListener("click",handleClick)}))})); DT.onReady((()=>{const init=title=>{let isDragging=!1,allowClick=!0,startX,startY,scrollLeft,scrollTop;title.addEventListener("click",(e=>{allowClick||(e.preventDefault(),e.stopImmediatePropagation())}),{capture:!0,passive:!1}),title.addEventListener("dragstart",(e=>{e.preventDefault()})),title.addEventListener("dragdrop",(e=>{e.preventDefault()})),title.addEventListener("mousedown",(e=>{isDragging=!0,allowClick=!0,startX=e.pageX-title.offsetLeft,startY=e.pageY-title.offsetTop,scrollLeft=title.scrollLeft,scrollTop=title.scrollTop})),title.addEventListener("mouseleave",(()=>{isDragging=!1})),title.addEventListener("mouseup",(()=>{DT.onNextIter((()=>{allowClick=!0})),isDragging=!1})),title.addEventListener("mousemove",(e=>{if(!isDragging)return;e.preventDefault(),allowClick=!1;const x=e.pageX-title.offsetLeft,y=e.pageY-title.offsetTop,walkX=1*(x-startX),walkY=1*(y-startY);title.scrollLeft=scrollLeft-walkX,title.scrollTop=scrollTop-walkY}))},selector=".js-image-wall .js-listing-item .js-item-title";DT.onIdle((()=>{document.querySelectorAll(selector).forEach((title=>{init(title)}))})),new MutationObserver((mutations=>{mutations.forEach((mutation=>{"childList"===mutation.type&&mutation.addedNodes.forEach((node=>{if(node.nodeType===Node.ELEMENT_NODE){const titles=undefined;node.querySelectorAll(selector).forEach((title=>{init(title)}))}}))}))})).observe(document.body,{childList:!0,subtree:!0})})); DT.onReadyIdle((()=>{document.addEventListener("dragstart",(event=>{const item=event.target.closest(".js-listing-item");if(!item||!item.dataset.id)return;const data={type:"item",data:{id:item.dataset.id,type:item.dataset.type}};event.dataTransfer.setData("text/plain",JSON.stringify(data))}))})); DT.initModal=(()=>{const modalDeps=DT.parseJSONData("modal-deps")?.deps||[];DT.onReadyIdle((()=>{DT.prefetchWorker.prefetchUrls(modalDeps)}));const initModal=undefined;return async({url:url,params:params,loadData:loadData})=>{await DT.loadLazyDeps(modalDeps);const response=await DT.http.get(url,{data:loadData});if(!response.ok)throw new Error(`Failed to load modal content from ${url}: ${response.statusText}`);let modal;return await DT.ajaxHtml.fromResponse(response,(async html=>{if(!html)throw new Error(`Failed to load modal content from ${url}: Empty response`);modal=await DT.modal({content:html,...params||{}})})),modal}})(); DT.ajaxHtml=(()=>{const loadCss=async({css:css,js:js}={})=>{if(css){if(js?.url&&DT.prefetchWorker.prefetchUrls(js.url??[]),css.inline){let style=document.querySelector("style[data-dt-lazy]");if(style)return style.innerHTML+=css.inline,void 0;style=document.createElement("style"),style.setAttribute("data-dt-lazy",""),style.innerHTML=css.inline,document.head.appendChild(style)}css.url&&await DT.loadCSS(...css.url)}},loadJs=async({js:js}={})=>{if(js){if(await DT.nextIter(),js.inline){let script=document.querySelector("script[data-dt-lazy]");if(script)return script.innerHTML+=js.inline,void 0;script=document.createElement("script"),script.setAttribute("data-dt-lazy",""),script.innerHTML=js.inline,document.head.appendChild(script)}js.url&&await DT.loadScriptsInOrderOnce(...js.url)}},loadJson=({jsonData:jsonData}={})=>{if(jsonData)try{for(const key in jsonData)DT.jsonData[key]=jsonData[key]}catch(error){DT.log("error","Ajax html load json error",error)}},fromResponse=async(response,insertHtml)=>{try{const{html:html,assets:assets,...params}=await response.json();await loadCss(assets),loadJson(assets),await insertHtml(html,params??{}),await loadJs(assets)}catch(error){return DT.log("error","Ajax load from response error",error),void 0}},fromResponseData=async(data,insertHtml)=>{try{const{html:html,assets:assets,...params}=data;await loadCss(assets),loadJson(assets),await insertHtml(html,params??{}),await loadJs(assets)}catch(error){return DT.log("error","Ajax load from response error",error),void 0}};return{loadCss:loadCss,loadJs:loadJs,fromResponse:fromResponse,fromResponseData:fromResponseData}})(); DT.initLightboxBar=async()=>{if(await(DT.afterLcp?.()),await DT.Scheduler.waitForMediumPriority(),await DT.yieldIfInputPending(),document.querySelector(".js-lightbox-bar-root"))return;const response=await fetch(DT.lightboxBarInitUrl);document.querySelector(".js-lightbox-bar-root")||(response.ok||DT.log("error","Failed to fetch LightboxBar component",response),await(DT.ajaxHtml?.fromResponse(response,(html=>{html&&document.body.insertAdjacentHTML("beforeend",html)}))),DT.LightboxBar?.dispatchEvent("lightbox-bar:init"),document.dispatchEvent(new CustomEvent("lightbox-bar:init")))}; DT.bannersToLoad = []; DT.onReady(() => { var mres = window.location.hash.match(/\#res(\d+)/); if (mres) { var ref = document.referrer || ''; if (!ref) { dtrfr = ref; } if (ref && ref != '' && ref.indexOf('.dreamstime.com') == -1 ) { var img = new Image(); img.src = '/img404.php?ref=' + encodeURIComponent(ref); } } }); DT.onReady(() => { if (window.location.hash !== '') { DT.loadScriptsOnce('templates/footer/footer_ref.js'); } }); DT.onReadyIdle(async () => { window.oldDocumentWrite = document.write; document.write = function (node) { document.body.appendChild(node); }; try { await DT.loadScriptsOnce('https://www.googleadservices.com/pagead/conversion.js'); } catch (_err) {} document.write = window.oldDocumentWrite; }); const varSHget = { sortcriteria: "6", countsh: "0", s_st: "new", s_op: "", s_mr: "", s_wp: "", s_rf: "", s_ed: "", s_exclusive: "", s_wel: "", s_pel: "", s_srel: "", s_orp: "y", s_orl: "y", s_ors: "y", s_orw: "y", s_clc: "y", s_clm: "y", s_c1e: "", s_color1: "", s_percent1: "", s_c2e: "", s_color2: "", s_percent2: "", s_rsf: "0", s_rst: "7", s_amf: "", s_sp: "", s_exc: "", s_exc_ai: "0", s_onlyai: "", s_mrc1: "y", s_mrc2: "y", s_mrc3: "y", s_mrc4: "y", s_mrc5: "y", s_mrg: "1", s_mra1: "", s_mra2: "", s_mra3: "", s_mra4: "", s_mra5: "", s_mra6: "", s_mra7: "", s_mra8: "", s_mra9: "", s_mrea: "", s_mreb: "", s_mreh: "", s_mrem: "", s_mrec: "", s_mreo: "", s_sl0: "y", s_sl1: "y", s_sl2: "y", s_sl3: "y", s_sl4: "y", s_sl5: "y", srh_field: "script coding", firstvalue: "", lastsearchvalue: "script coding", s_all: "", s_ph: "", s_il: "y", s_video: "", s_audio: "", s_ad: "", s_free: "", securitycheck: "3c1e583bc816eafdf4bfcc928f2027ba", s_cf: "0", s_mrca: "", site_adr: "https://ru.dreamstime.com/", ico_close: '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10 10"><path d="M3.511 5 0 8.511 1.489 10 5 6.489 8.511 10 10 8.511 6.489 5 10 1.489 8.511 0 5 3.511 1.489 0 0 1.489z"/></svg>', memberid: '', srh_fieldwrs: '', s_amusic: "", s_asfx: "", s_zerogravity: "", s_zerogravityactiv: "0" }; DT.onReady(async () => { try { await DT.loadScriptsOnce('js/lang_cts.js.php?l=ru'); } catch (_) {} DT.loadScripts('js/functions_cookie.js'); DT.loadScripts('components/Search/Search.js'); DT.loadScripts('templates/search/filters/filters_search_load.js'); }); DT.bannersToLoad.push("<div class=\"banner banner--freetrial banner--big js-banner js-banner-default js-banner-freetrial\" data-name=\"freetrial\" data-state=\"hidden\" data-inline=\"\" > <a href=\"https:\/\/ru.dreamstime.com\/securecredits2.php?subscriptionid=816&packagetype=0\" class=\"banner__link banner__link--freetrial\" aria-label=\"\u041d\u0430\u0447\u043d\u0438\u0442\u0435 \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u0443\u044e \u043f\u0440\u043e\u0431\u043d\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e\" ><\/a> <div class=\"banner__picture\"> <picture> <source type=\"image\/jpeg\" srcset=\"https:\/\/thumbs.dreamstime.com\/front\/img\/banners\/free-trial\/dt-freetrial-banner-background-500.jpg\" media=\"(max-width: 767.98px)\" width=\"500\" height=\"132\"><source type=\"image\/jpeg\" srcset=\"https:\/\/thumbs.dreamstime.com\/front\/img\/banners\/free-trial\/dt-freetrial-banner-background-900.jpg\" media=\"(min-width: 768px)\" width=\"900\" height=\"100\"><source type=\"image\/jpeg\" srcset=\"https:\/\/thumbs.dreamstime.com\/front\/img\/banners\/free-trial\/dt-freetrial-banner-background-1600.jpg\" media=\"(min-width: 1200px)\" width=\"1600\" height=\"100\"><img src=\"https:\/\/thumbs.dreamstime.com\/front\/img\/banners\/free-trial\/dt-freetrial-banner-background-1600.jpg\" width=\"1600\" height=\"100\" alt=\"\u0418\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0431\u0430\u043d\u043d\u0435\u0440\u0430 "\u041d\u0430\u0447\u043d\u0438\u0442\u0435 \u0411\u0415\u0421\u041f\u041b\u0410\u0422\u041d\u0423\u042e \u043f\u0440\u043e\u0431\u043d\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e"\"> <\/picture> <\/div> <div class=\"banner__content\"> <div class=\"banner__title\">\u041f\u0435\u0440\u0432\u044b\u0435 15 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0439 \u2013 \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u043e!<\/div> <div class=\"banner__description\">\u041e\u0442\u043c\u0435\u043d\u0438\u0442\u044c \u0432 \u043b\u044e\u0431\u043e\u0435 \u0432\u0440\u0435\u043c\u044f.<\/div> <\/div> <div class=\"banner__btn-wrapper\"> <a href=\"https:\/\/ru.dreamstime.com\/securecredits2.php?subscriptionid=816&packagetype=0\" class=\"banner__btn btn btn--pink btn--big\">\u041d\u0430\u0447\u043d\u0438\u0442\u0435 \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u0443\u044e \u043f\u0440\u043e\u0431\u043d\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e<\/a> <\/div> <\/div>"); DT.lightboxBarActionsUrl = 'https://ru.dreamstime.com/new/components/LightboxBar/actions.ajax.php'; DT.lightboxBarInitUrl = 'https://ru.dreamstime.com/new/components/LightboxBar/actions.ajax.php?action=init_component'; try { window.openfreetrial = 0; window.popupsignup = 0; window.site_adr = 'https://ru.dreamstime.com/'; window.dtrfr = ''; } catch (_err) {} </script> </body> </html>