33,699 programare script ilustrații și vectori sunt disponibile royalty-free (fără redevențe ulterioare).

Interfață laptop cu documente, grafice, media, scripturi de codare și conectivitate la cloud. Ideal pentru web design, creare de conținut, dezvoltare tehnologică, soluții cloud pentru educație, lucru în echipă, inovație.
Interfață laptop cu documente, grafice, media, scripturi de codare și conectivitate la cloud. Ideal pentru web design, creare de conținut, dezvoltare tehnologică, soluții cloud pentru educație, lucru în echipă, inovație.
Ilustrație vectorială cu un șarpe care iese dintr-un ecran spart, având pictograme cu creier de IA și strângere de mână. Tehnologie, inovație, transformare digitală, automatizare, parteneriat, dezvoltare software. Python.
Ilustrație vectorială cu un șarpe care iese dintr-un ecran spart, având pictograme cu creier de IA și strângere de mână. Tehnologie, inovație, transformare digitală, automatizare, parteneriat, dezvoltare software. Python.
Colecție de pictograme negre pentru testarea software și asigurarea calității, incluzând simboluri pentru eroare, tub de ensayo, bifă, listă de verificare, lupă, engrenaj, cod, alertă și bază de date, izolate pe un fundal alb.
Colecție de pictograme negre pentru testarea software și asigurarea calității, incluzând simboluri pentru eroare, tub de ensayo, bifă, listă de verificare, lupă, engrenaj, cod, alertă și bază de date, izolate pe un fundal alb.
Dezvoltare web, inovație, lucru în echipă, media digitală, programare, învățare online. Laptop cu elemente de programare, pictograme multimedia de text și un bec. Concepte de dezvoltare web și inovație.
Dezvoltare web, inovație, lucru în echipă, media digitală, programare, învățare online. Laptop cu elemente de programare, pictograme multimedia de text și un bec. Concepte de dezvoltare web și inovație.
Această ilustrație vectorială curată prezintă o interfață rectangulară care conține linii orizontale ce simbolizează date sau text. O săgeată orientată în sus este poziționată în partea de jos, la centru, indicând o acțiune de încărcare sau transfer. Designul folosește o paletă de culori line cu contururi închise, creând o estetică modernă și profesională, potrivită pentru tehnologie.
Această ilustrație vectorială curată prezintă o interfață rectangulară care conține linii orizontale ce simbolizează date sau text. O săgeată orientată în sus este poziționată în partea de jos, la centru, indicând o acțiune de încărcare sau transfer. Designul folosește o paletă de culori line cu contururi închise, creând o estetică modernă și profesională, potrivită pentru tehnologie.
Set de pictograme de securitate cibernetică: un lacăt, chei și paranteze de cod pentru un banner de landing page de securitate digitală. Confidențialitatea datelor, criptarea, dezvoltarea software, controlul accesului, siguranța pe internet.
Set de pictograme de securitate cibernetică: un lacăt, chei și paranteze de cod pentru un banner de landing page de securitate digitală. Confidențialitatea datelor, criptarea, dezvoltarea software, controlul accesului, siguranța pe internet.
În liniștea unei încăperi slab iluminate, o stație de lucru puternică cu mai multe monitoare prinde viață, ecranele sale fiind umplute cu cod verde în cascadă. Acesta este centrul de comandă pentru o operațiune clandestină, unde date complexe sunt analizate și fortărețe digitale sunt sparte, reprezentând lumea securității cibernetice și a spionajului digital.
În liniștea unei încăperi slab iluminate, o stație de lucru puternică cu mai multe monitoare prinde viață, ecranele sale fiind umplute cu cod verde în cascadă. Acesta este centrul de comandă pentru o operațiune clandestină, unde date complexe sunt analizate și fortărețe digitale sunt sparte, reprezentând lumea securității cibernetice și a spionajului digital.
Această imagine cu contrast ridicat prezintă o sferă întunecată și texturată odihnindu-se pe o suprafață reflectorizantă în întuneric. Globul metalic este puternic fracturat, dezvăluind fluxuri de date luminoase și scriere abstractă care strălucesc în culori turcoaz și roșu-portocaliu vibrante. Randată de AI, această vizualizare reprezintă concepte de tehnologie coruptă, securitate digitală fracturată sau cunoștințe ascunse. Creează o imagine puternică și misterioasă.
Această imagine cu contrast ridicat prezintă o sferă întunecată și texturată odihnindu-se pe o suprafață reflectorizantă în întuneric. Globul metalic este puternic fracturat, dezvăluind fluxuri de date luminoase și scriere abstractă care strălucesc în culori turcoaz și roșu-portocaliu vibrante. Randată de AI, această vizualizare reprezintă concepte de tehnologie coruptă, securitate digitală fracturată sau cunoștințe ascunse. Creează o imagine puternică și misterioasă.
Banner pentru pagina de destinație de marketing digital cu un megafon și elemente de cod HTML. Publicitate, dezvoltare web, promovare online, creșterea afacerii, programare, inginerie software. Campanie de marketing.
Banner pentru pagina de destinație de marketing digital cu un megafon și elemente de cod HTML. Publicitate, dezvoltare web, promovare online, creșterea afacerii, programare, inginerie software. Campanie de marketing.
Ilustrație vectorială cu un programator lucrând la un laptop, având mascotele elefantul PHP și delfinul MySQL. Inginerie software, gestionare baze de date, dezvoltare web, programare, backend, tehnologie. Dezvoltator.
Ilustrație vectorială cu un programator lucrând la un laptop, având mascotele elefantul PHP și delfinul MySQL. Inginerie software, gestionare baze de date, dezvoltare web, programare, backend, tehnologie. Dezvoltator.
Un spațiu de lucru întunecat, high-tech, cu mai multe ecrane de computer care afișează coduri complicate și diagrame de rețea, iluminate de lumini neon albastre. O tastatură, hârtii și căni de cafea sunt pe birou, creând o atmosferă de dezvoltare nocturnă concentrată.
Un spațiu de lucru întunecat, high-tech, cu mai multe ecrane de computer care afișează coduri complicate și diagrame de rețea, iluminate de lumini neon albastre. O tastatură, hârtii și căni de cafea sunt pe birou, creând o atmosferă de dezvoltare nocturnă concentrată.
Logo-ul de debugging software creează o identitate de investigație pentru firmele specializate în inspecția codului, iar acest logo de debugging software garantează integritatea codului. Ca logo de debugging software dedicat, emblemul comunică eficient o scanare amănunțită clienților care caută software fără erori.
Logo-ul de debugging software creează o identitate de investigație pentru firmele specializate în inspecția codului, iar acest logo de debugging software garantează integritatea codului. Ca logo de debugging software dedicat, emblemul comunică eficient o scanare amănunțită clienților care caută software fără erori.
O colecție de ilustrații vectoriale cu monitoare de calculator, interfețe de programare și o mașină portocalie pentru bannere de pagini de destinație web. Inginerie software, tehnologie auto, dezvoltare web, digital.
O colecție de ilustrații vectoriale cu monitoare de calculator, interfețe de programare și o mașină portocalie pentru bannere de pagini de destinație web. Inginerie software, tehnologie auto, dezvoltare web, digital.
Selecția vehiculului, educație în programare, soluții energetice, gestionarea software-ului, analiza datelor, deciziile utilizatorului. Bărbat care ține un ștecher lângă idei și elemente de programare. Analiza datelor și educația în programare.
Selecția vehiculului, educație în programare, soluții energetice, gestionarea software-ului, analiza datelor, deciziile utilizatorului. Bărbat care ține un ștecher lângă idei și elemente de programare. Analiza datelor și educația în programare.
Ilustrație vectorială a unei persoane care lucrează la un computer cu o platformă de schimb CEX și logo-ul delfinului MySQL. Dezvoltare software, gestionare baze de date, tranzacționare criptomonede, programare, tehnologie, web design.
Ilustrație vectorială a unei persoane care lucrează la un computer cu o platformă de schimb CEX și logo-ul delfinului MySQL. Dezvoltare software, gestionare baze de date, tranzacționare criptomonede, programare, tehnologie, web design.
O mână este văzută interacționând cu un ecran digital care afișează cod luminos. Ecranul prezintă linii de cod în nuanțe de albastru și portocaliu, creând o estetică futuristă și tehnologică. Mâna este poziționată ca și cum ar atinge sau manipula datele virtuale, subliniind interacțiunea dintre om și tehnologie.
O mână este văzută interacționând cu un ecran digital care afișează cod luminos. Ecranul prezintă linii de cod în nuanțe de albastru și portocaliu, creând o estetică futuristă și tehnologică. Mâna este poziționată ca și cum ar atinge sau manipula datele virtuale, subliniind interacțiunea dintre om și tehnologie.
Ilustrație cu o femeie lucrând pe un laptop, probabil o programatoare sau dezvoltatoare. Ea este așezată la un birou cu o ceașcă de cafea în apropiere. Ecranul laptopului afișează simboluri de cod. Designul general este curat și modern, potrivit pentru a reprezenta munca la distanță, dezvoltarea de software sau concepte legate de tehnologie.
Ilustrație cu o femeie lucrând pe un laptop, probabil o programatoare sau dezvoltatoare. Ea este așezată la un birou cu o ceașcă de cafea în apropiere. Ecranul laptopului afișează simboluri de cod. Designul general este curat și modern, potrivit pentru a reprezenta munca la distanță, dezvoltarea de software sau concepte legate de tehnologie.
Logo-ul Quantum Code oferă o identitate vizuală convingătoare pentru laboratoarele de cercetare științifică, iar acest logo Quantum Code stimulează încrederea tehnologică. Ca logo Quantum Code de expert, emblemul demonstrează eficient precizia atomică partenerilor care caută creșterea științifică.
Logo-ul Quantum Code oferă o identitate vizuală convingătoare pentru laboratoarele de cercetare științifică, iar acest logo Quantum Code stimulează încrederea tehnologică. Ca logo Quantum Code de expert, emblemul demonstrează eficient precizia atomică partenerilor care caută creșterea științifică.
O primă planșă arată un dezvoltator concentrat tastând intens cod pe o tastatură de laptop în timpul orelor întunecate. Această scenă surprinde perfect intensitatea muncii la distanță și a dezvoltării de software. Randată de AI, lumina de fundal caldă contrastează puternic cu strălucirea albastră a ecranului, subliniind dedicarea și productivitatea. Programatorul lucrează eficient creând noi soluții digitale.
O primă planșă arată un dezvoltator concentrat tastând intens cod pe o tastatură de laptop în timpul orelor întunecate. Această scenă surprinde perfect intensitatea muncii la distanță și a dezvoltării de software. Randată de AI, lumina de fundal caldă contrastează puternic cu strălucirea albastră a ecranului, subliniind dedicarea și productivitatea. Programatorul lucrează eficient creând noi soluții digitale.
Un monitor de calculator afișează cod HTML pe partea stângă, cu etichete imbricate într-o interfață neagră. Codul include elemente HTML tipice precum `<html>`, `<head>` și `<title>`. Pe partea dreaptă a ecranului se află o imagine cu munți acoperiți de zăpadă la răsărit sau la apus, oferind o vedere pitorească.
Un monitor de calculator afișează cod HTML pe partea stângă, cu etichete imbricate într-o interfață neagră. Codul include elemente HTML tipice precum ``, `` și ``. Pe partea dreaptă a ecranului se află o imagine cu munți acoperiți de zăpadă la răsărit sau la apus, oferind o vedere pitorească.</figcaption> </figure> </a> <div class="item__info"> <p class="item__title js-item-title"> <a href="https://ro.dreamstime.com/monitor-de-calculator-cu-cod-html-și-imagine-munte-image461385037" > Monitor de calculator cu cod HTML și imagine cu munte. Un monitor de calculator afișează cod HTML pe partea stângă, cu etichete imbricate într-o interfață neagră. Codul include elemente HTML tipice precum `<html>`, `<head>` și `<title>`. Pe partea dreaptă a ecranului se află o imagine cu munți acoperiți de zăpadă la răsărit sau la apus, oferind o vedere pitorească. </a> </p> </div> </article> <article class="item item64 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://ro.dreamstime.com/search.php?srh_field=prim+plan+persoană+care&s_il=y" class="item__similars-link js-similars-link" rel="nofollow" target="_blank" aria-label="Afișare rezultate similare" 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="Adăugați la Lightbox" data-aria-label-add="Adăugați la Lightbox" data-aria-label-remove="Scoateți din lightbox" 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://ro.dreamstime.com/securecredits2.php?subscriptionid=816&packagetype=0" rel="nofollow" aria-label="Gratuit cu perioada de încercare"><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>Gratuit cu perioada de încercare</span></a> </div> <a href="https://ro.dreamstime.com/dezvoltator-care-inspectează-cod-cu-lupa-image426597078" class="item__url js-item-title-wrapper" aria-label="Dezvoltator care inspectează cod cu lupa" target="_blank"> <figure> <img class="item__thumb" src="https://thumbs.dreamstime.com/b/dezvoltator-care-inspectează-cod-cu-lupa-426597078.jpg" loading="lazy" alt="Prim-plan cu o persoană care examinează cod pe un ecran de computer cu o lupă." srcset="https://thumbs.dreamstime.com/b/dezvoltator-care-inspectează-cod-cu-lupa-426597078.jpg?w=360 360w, https://thumbs.dreamstime.com/b/dezvoltator-care-inspectează-cod-cu-lupa-426597078.jpg?w=400 400w, https://thumbs.dreamstime.com/b/dezvoltator-care-inspectează-cod-cu-lupa-426597078.jpg?w=450 450w, https://thumbs.dreamstime.com/b/dezvoltator-care-inspectează-cod-cu-lupa-426597078.jpg?w=576 576w, https://thumbs.dreamstime.com/b/dezvoltator-care-inspectează-cod-cu-lupa-426597078.jpg?w=768 768w, https://thumbs.dreamstime.com/b/dezvoltator-care-inspectează-cod-cu-lupa-426597078.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">Prim-plan cu o persoană care examinează cod pe un ecran de computer cu o lupă.</figcaption> </figure> </a> <div class="item__info"> <p class="item__title js-item-title"> <a href="https://ro.dreamstime.com/dezvoltator-care-inspectează-cod-cu-lupa-image426597078" > Dezvoltator care inspectează cod cu lupa. Prim-plan cu o persoană care examinează cod pe un ecran de computer cu o lupă </a> </p> </div> </article> <article class="item item65 item-photo js-listing-item" data-id="447691070" data-type="image" data-dt-id="#ilc1" data-dt-on-mouseenter="" data-dt-on-touchstart="" > <div class="item__actions"> <a href="https://ro.dreamstime.com/search.php?srh_field=set+pictograme+pentru+dezvoltarea&s_il=y" class="item__similars-link js-similars-link" rel="nofollow" target="_blank" aria-label="Afișare rezultate similare" 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="447691070" data-lb-state="add" aria-label="Adăugați la Lightbox" data-aria-label-add="Adăugați la Lightbox" data-aria-label-remove="Scoateți din lightbox" 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://ro.dreamstime.com/securecredits2.php?subscriptionid=816&packagetype=0" rel="nofollow" aria-label="Gratuit cu perioada de încercare"><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>Gratuit cu perioada de încercare</span></a> </div> <a href="https://ro.dreamstime.com/set-de-pictograme-pentru-dezvoltarea-instrumentelor-programare-image447691070" class="item__url js-item-title-wrapper" aria-label="Set de pictograme pentru dezvoltarea instrumentelor de programare" target="_blank"> <figure> <img class="item__thumb" src="https://thumbs.dreamstime.com/b/set-de-pictograme-pentru-dezvoltarea-instrumentelor-programare-447691070.jpg" loading="lazy" alt="Set de pictograme pentru dezvoltarea instrumentelor de programare vol 8654" srcset="https://thumbs.dreamstime.com/b/set-de-pictograme-pentru-dezvoltarea-instrumentelor-programare-447691070.jpg?w=360 360w, https://thumbs.dreamstime.com/b/set-de-pictograme-pentru-dezvoltarea-instrumentelor-programare-447691070.jpg?w=400 400w, https://thumbs.dreamstime.com/b/set-de-pictograme-pentru-dezvoltarea-instrumentelor-programare-447691070.jpg?w=450 450w, https://thumbs.dreamstime.com/b/set-de-pictograme-pentru-dezvoltarea-instrumentelor-programare-447691070.jpg?w=576 576w, https://thumbs.dreamstime.com/b/set-de-pictograme-pentru-dezvoltarea-instrumentelor-programare-447691070.jpg?w=768 768w, https://thumbs.dreamstime.com/b/set-de-pictograme-pentru-dezvoltarea-instrumentelor-programare-447691070.jpg?w=992 992w, https://thumbs.dreamstime.com/b/set-de-pictograme-pentru-dezvoltarea-instrumentelor-programare-447691070.jpg?w=1200 1200w, https://thumbs.dreamstime.com/b/set-de-pictograme-pentru-dezvoltarea-instrumentelor-programare-447691070.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">Set de pictograme pentru dezvoltarea instrumentelor de programare vol 8654</figcaption> </figure> </a> <div class="item__info"> <p class="item__title js-item-title"> <a href="https://ro.dreamstime.com/set-de-pictograme-pentru-dezvoltarea-instrumentelor-programare-image447691070" > Set de pictograme pentru dezvoltarea instrumentelor de programare </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://ro.dreamstime.com/illustration/programare-script.html?pg=100" title="Pagină 100" 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">Pagina următoare.</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="Paginare"> <a class="pagination__item pagination__item--prev js-pagination-prev" href="https://ro.dreamstime.com/illustration/programare-script.html?pg=98" title="Pagină 98" ><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://ro.dreamstime.com/illustration/programare-script.html?pg=95" title="Accesează Pagina 95" >95</a> </li> <li> <a class="pagination__item pagination__item--page js-pg-list-item" href="https://ro.dreamstime.com/illustration/programare-script.html?pg=96" title="Accesează Pagina 96" >96</a> </li> <li> <a class="pagination__item pagination__item--page js-pg-list-item" href="https://ro.dreamstime.com/illustration/programare-script.html?pg=97" title="Accesează Pagina 97" >97</a> </li> <li> <a class="pagination__item pagination__item--page js-pg-list-item" href="https://ro.dreamstime.com/illustration/programare-script.html?pg=98" title="Accesează Pagina 98" >98</a> </li> <li> <a class="pagination__item pagination__item--page js-pg-list-item" href="https://ro.dreamstime.com/illustration/programare-script.html?pg=99" title="Pagina curentă, Pagina 99" aria-current="page" data-state="active" >99</a> </li> <li> <a class="pagination__item pagination__item--page js-pg-list-item" href="https://ro.dreamstime.com/illustration/programare-script.html?pg=100" title="Accesează Pagina 100" >100</a> </li> <li> <a class="pagination__item pagination__item--page js-pg-list-item" href="https://ro.dreamstime.com/illustration/programare-script.html?pg=101" title="Accesează Pagina 101" >101</a> </li> <li> <a class="pagination__item pagination__item--page js-pg-list-item" href="https://ro.dreamstime.com/illustration/programare-script.html?pg=102" title="Accesează Pagina 102" >102</a> </li> <li> <a class="pagination__item pagination__item--page js-pg-list-item" href="https://ro.dreamstime.com/illustration/programare-script.html?pg=103" title="Accesează Pagina 103" >103</a> </li> <li> <a class="pagination__item pagination__item--page js-pg-list-item" href="https://ro.dreamstime.com/illustration/programare-script.html?pg=104" title="Accesează Pagina 104" >104</a> </li> </ul> <a class="pagination__item pagination__item--next js-pagination-next" href="https://ro.dreamstime.com/illustration/programare-script.html?pg=100" title="Pagină 100" ><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="Partajare" > <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="Vis" href="https://ro.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>Centru de Asistență</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://ro.dreamstime.com/about-stock-image-licenses" title="Despre fotografiile noastre">Despre fotografiile noastre</a></li> <li><a class="footer-menu__url" href="https://ro.dreamstime.com/terms" title="Legal / Condiții de utilizare">Legal / Condiții de utilizare</a></li> <li><a class="footer-menu__url" href="https://ro.dreamstime.com/contact" title="Contactați-ne">Contactați-ne</a></li> <li><a class="footer-menu__url" href="https://ro.dreamstime.com/faq" title="Întrebări frecvente">Întrebări frecvente</a></li> <li><a class="footer-menu__url" href="https://ro.dreamstime.com/sitemap" title="Hartă site">Hartă site</a></li> <li><a class="footer-menu__url" href="https://ro.dreamstime.com/privacy" title="Politica de confidențialitate">Politica de confidențialitate</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://ro.dreamstime.com/extended-stock-photography-licenses" title="Cele mai recente imagini">Cele mai recente imagini</a></li> <li><a class="footer-menu__url" href="https://ro.dreamstime.com/about" title="Despre noi">Despre noi</a></li> <li><a class="footer-menu__url" href="https://ro.dreamstime.com/media-room" title="Dreamstime in media">Dreamstime in media</a></li> <li><a class="footer-menu__url" href="https://ro.dreamstime.com/careers" title="Cariere la Dreamstime">Cariere</a></li> <li><a class="footer-menu__url" href="https://ro.dreamstime.com/merchandise" title="Dreamstime Magazin">Magazin</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>Comunitate</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://ro.dreamstime.com/sell-stock-photos-images" title="Vindeți imagini">Vindeți imagini</a></li> <li><a class="footer-menu__url" href="https://www.dreamstime.com/boards" title="Panouri de mesaje">Panouri de mesaje</a></li> <li><a class="footer-menu__url" href="https://ro.dreamstime.com/social-networking" title="Centru social">Centru social</a></li> <li><a class="footer-menu__url" href="https://ro.dreamstime.com/upload" title="Încărcați imaginea">Încărcați imaginea</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://ro.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://ro.dreamstime.com/affiliate-referral-program" title="Program de recomandare">Program de recomandare</a></li> <li><a class="footer-menu__url" href="https://ro.dreamstime.com/contest" title="Concurs">Concurs</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>Instrumente</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://ro.dreamstime.com/corporate" title="Conturi corporative">Conturi corporative</a></li> <li><a class="footer-menu__url" href="https://ro.dreamstime.com/world-stock-photos" title="Hartă foto">Hartă foto</a></li> <li><a class="footer-menu__url" href="https://ro.dreamstime.com/free-photos" title="Fotografii gratuite">Fotografii gratuite</a></li> <li><a class="footer-menu__url" href="https://ro.dreamstime.com/photographers" title="Fotografii noștri">Fotografii noștri</a></li> <li><a class="footer-menu__url" href="https://ro.dreamstime.com/photo-tools" title="Unelte Foto">Unelte Foto</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://ro.dreamstime.com/affiliate-referral-program" title="Program de recomandare"> <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>Afiliat/Reseller</span> </a> <a class="footer-tools__item" href="https://ro.dreamstime.com/upload" title="Încărcați și vindeți imagini"> <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>Încărcați și vindeți imagini</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"> Limba </label> <button class="language-select__btn js-lang-select-trigger" id="footer-lang-select" type="button" aria-haspopup="menu" aria-expanded="false" aria-label="Comută fereastra de selecție a limbii" 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="#1A4DB1" d="M0 0h7v14H0z"/><path fill="#FFE60D" d="M7 0h7v14H7z"/><path fill="#F21830" d="M14 0h7v14h-7z"/></g></svg> </span> <span class="language-select__lang">Română</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"> Dreptul de autor © 2000-2026 Dreamstime. Toate drepturile rezervate. </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="Adăugați la Lightbox" data-aria-label-remove="Scoateți din lightbox" 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://ro.dreamstime.com/", "potentialAction":{ "@type":"SearchAction", "target":"https://ro.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://ro.dreamstime.com/", "logo":"https://ro.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":"Shield Icon with Code Download Symbol for Cybersecurity and Software Development", "url": "https://ro.dreamstime.com/shield-icon-code-download-symbol-cybersecurity-software-development-image479697508" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 2, "name":"Pictogram\u0103 neagr\u0103 cu un roti\u021b\u0103 \u00eentre paranteze care reprezint\u0103 conceptul de dezvoltare software", "url": "https://ro.dreamstime.com/pictogramă-neagră-cu-un-rotiță-între-paranteze-care-reprezintă-conceptul-de-dezvoltare-software-image478832767" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 3, "name":"Binary Data Rise - Abstract Digital Logic Stream Accumulating from Bottom in Teal and Cyan", "url": "https://ro.dreamstime.com/binary-data-rise-abstract-digital-logic-stream-accumulating-bottom-teal-cyan-image439333599" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 4, "name":"Spa\u021biu de lucru digital cu multimedia, cod \u0219i integrare \u00een cloud", "url": "https://ro.dreamstime.com/spațiu-de-lucru-digital-cu-multimedia-cod-și-integrare-în-cloud-image419560739" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 5, "name":"Ilustra\u021bie vectorial\u0103 a conceptului de dezvoltare a inteligen\u021bei artificiale \u0219i \u00eenv\u0103\u021b\u0103rii automate", "url": "https://ro.dreamstime.com/ilustrație-vectorială-conceptului-de-dezvoltare-inteligenței-artificiale-și-învățării-automate-image471817992" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 6, "name":"Ilustra\u021bie izometric\u0103 vizual atractiv\u0103 despre codare \u0219i dezvoltare SEO tehnic\u0103.", "url": "https://ro.dreamstime.com/ilustrație-izometrică-vizual-atractivă-despre-codare-și-dezvoltare-seo-tehnică-image468408428" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 7, "name":"Prim-plan cu cod de computer pe un ecran digital", "url": "https://ro.dreamstime.com/închidere-cod-computer-pe-un-ecran-digital-o-vizualizare-abstractă-detaliată-liniilor-strălucitoare-ale-codului-de-image409586875" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 8, "name":"Software Development and Artificial Intelligence Technology Vector Illustration Set", "url": "https://ro.dreamstime.com/software-development-artificial-intelligence-technology-vector-illustration-set-image477527371" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 9, "name":"Pictograme pentru instrumente de dezvoltare a codului \u0219i depanare", "url": "https://ro.dreamstime.com/pictograme-pentru-instrumente-de-dezvoltare-codului-și-depanare-image447568624" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 10, "name":"Pictogramele interfe\u021bei ferestrei de codare a browserului web", "url": "https://ro.dreamstime.com/pictogramele-interfeței-ferestrei-de-codare-browserului-web-image447570549" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 11, "name":"Concept digital data technology. Spa\u021biu cibernetic futurist albastru. Ilustra\u021bie vectorial\u0103 ", "url": "https://ro.dreamstime.com/concept-digital-data-technology-spațiu-cibernetic-futurist-albastru-ilustrație-vectorială-image366986743" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 12, "name":"Set de pictograme pentru set\u0103ri cod \u00een design liniar \u0219i cu gradient colorat", "url": "https://ro.dreamstime.com/set-de-pictograme-pentru-setări-cod-în-design-liniar-și-cu-gradient-colorat-image447092155" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 13, "name":"Iconi\u021be de Dezvoltare \u0219i Securitate Software Hibrid", "url": "https://ro.dreamstime.com/iconițe-de-dezvoltare-și-securitate-software-hibrid-image449047890" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 14, "name":"Fundal de cod binar portocaliu cald \u0219i roz", "url": "https://ro.dreamstime.com/fundal-de-cod-binar-portocaliu-cald-și-roz-grafică-animată-în-tonuri-calde-cu-unu-zero-care-curge-dinamic-pe-un-gradient-la-image414752561" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 15, "name":"Set de pictograme negre pentru testarea software, asigurarea calit\u0103\u021bii, cod \u0219i depanare", "url": "https://ro.dreamstime.com/set-de-pictograme-negre-pentru-testarea-software-asigurarea-calității-cod-și-depanare-image479057954" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 16, "name":"Crearea \u0219i dezvoltarea con\u021binutului digital prin programare, multimedia \u0219i concepte inovatoare de web design", "url": "https://ro.dreamstime.com/crearea-și-dezvoltarea-conținutului-digital-prin-programare-multimedia-concepte-inovatoare-de-web-design-image474908524" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 17, "name":"Software Development Time Management Vector Banners with Programmer and Cloud Computing Icons", "url": "https://ro.dreamstime.com/software-development-time-management-vector-banners-programmer-cloud-computing-icons-image481434860" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 18, "name":"Tip de font plac\u0103 de baz\u0103 tip plac\u0103 de circuit ", "url": "https://ro.dreamstime.com/tip-de-font-placă-bază-circuit-psb-tehnologie-calculator-alfabet-electronic-litere-abc-futuriste-numere-și-simboluri-cyber-image387800606" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 19, "name":"O pictogram\u0103 digital\u0103 minimalist\u0103 care reprezint\u0103 un proces de \u00eenc\u0103rcare a unui fi\u0219ier pe un ecran", "url": "https://ro.dreamstime.com/o-pictogramă-digitală-minimalistă-care-reprezintă-un-proces-de-încărcare-unui-fișier-pe-ecran-image457787093" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 20, "name":"Detaliu macro al suprafe\u021bei unui microcip de computer", "url": "https://ro.dreamstime.com/detaliu-macro-al-suprafeței-unui-microcip-de-computer-image421472838" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 21, "name":"Set de pictograme pentru securitate cibernetic\u0103 \u0219i protec\u021bia datelor pentru web design \u0219i banner de landing page pentru securitate", "url": "https://ro.dreamstime.com/set-de-pictograme-pentru-securitate-cibernetică-și-protecția-datelor-web-design-banner-landing-page-digitală-image470604759" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 22, "name":"Set de pictograme pentru interfa\u021ba de programare \u00een dezvoltarea jocurilor", "url": "https://ro.dreamstime.com/set-de-pictograme-pentru-interfața-programare-în-dezvoltarea-jocurilor-image447495223" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 23, "name":"Dezvoltator software care codeaz\u0103 pe ecranul unui computer", "url": "https://ro.dreamstime.com/dezvoltator-software-care-codează-pe-ecranul-unui-computer-image426597161" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 24, "name":"Fundal gradient cu cod binar neon cian verde \u00een bucl\u0103", "url": "https://ro.dreamstime.com/fundal-gradient-cu-cod-binar-neon-cian-verde-în-buclă-grafică-mișcare-de-contrast-ridicat-care-curge-pe-un-izbitor-image414752583" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 25, "name":"Fundal Cod Binar Digital Albastru \u00cenchis \u0219i Profund", "url": "https://ro.dreamstime.com/fundal-cod-binar-digital-albastru-închis-și-profund-grafică-în-mișcare-tonuri-de-cu-numere-alb-gri-care-curg-dinamic-pe-un-image414752649" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 26, "name":"Set de pictograme pentru dezvoltare de cod cu simbolul ro\u021bii din\u021bate", "url": "https://ro.dreamstime.com/set-de-pictograme-pentru-dezvoltare-cod-cu-simbolul-roții-dințate-image447768280" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 27, "name":"Cod binar digital \u00een c\u0103dere, fundal tehnologic cu num\u0103r de algoritm", "url": "https://ro.dreamstime.com/cod-binar-digital-în-cădere-fundal-tehnologic-cu-număr-de-algoritm-image443221543" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 28, "name":"Ilustra\u021bie vectorial\u0103 cu un programator analiz\u00e2nd cod pe mai multe ecrane \u00eentr-un birou modern", "url": "https://ro.dreamstime.com/ilustrație-vectorială-cu-un-programator-analizând-cod-pe-mai-multe-ecrane-într-birou-modern-image468931796" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 29, "name":"Ecran de laptop modern care afi\u0219eaz\u0103 cod pe un birou din lemn cu o lamp\u0103 de birou \u0219i un monitor", "url": "https://ro.dreamstime.com/ecran-de-laptop-modern-care-afișează-cod-pe-un-birou-din-lemn-cu-o-lampă-și-monitor-image456739183" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 30, "name":"Programmer coding in C plus plus language on a modern laptop", "url": "https://ro.dreamstime.com/programmer-coding-c-plus-plus-language-modern-laptop-image455511042" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 31, "name":"Iconi\u021b\u0103 programator, vector negru izolat pe alb", "url": "https://ro.dreamstime.com/iconiță-programator-vector-negru-izolat-pe-alb-image462810071" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 32, "name":"Sta\u021bie de Lucru pentru Hackeri cu Cod Verde \u00een Cascad\u0103", "url": "https://ro.dreamstime.com/stație-de-lucru-pentru-hackeri-cu-cod-verde-în-cascadă-image415332470" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 33, "name":"Cod Matrix verde care cade pe un fundal tehnologic abstract", "url": "https://ro.dreamstime.com/cod-matrix-verde-care-cade-pe-un-fundal-tehnologic-abstract-image435728641" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 34, "name":"Cod Matrix verde care cade pe un fundal tehnologic abstract", "url": "https://ro.dreamstime.com/cod-matrix-verde-care-cade-pe-un-fundal-tehnologic-abstract-image436587138" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 35, "name":"Set de pictograme de dezvoltare software \u00een alb \u0219i negru pe fundal alb", "url": "https://ro.dreamstime.com/set-de-pictograme-dezvoltare-software-în-alb-și-negru-pe-fundal-image476866639" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 36, "name":"Programator care tasteaz\u0103 cod pe dou\u0103 tastaturi", "url": "https://ro.dreamstime.com/programator-care-tastează-cod-pe-două-tastaturi-image426597123" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 37, "name":"Iconi\u021be de dezvoltare software pentru interfa\u021ba de programare", "url": "https://ro.dreamstime.com/iconițe-de-dezvoltare-software-pentru-interfața-programare-image447689982" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 38, "name":"Sfer\u0103 digital\u0103 cr\u0103pat\u0103 care afi\u0219eaz\u0103 cod luminos", "url": "https://ro.dreamstime.com/sferă-digitală-crăpată-care-afișează-cod-luminos-image416615191" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 39, "name":"Banner pentru pagina de destina\u021bie de marketing digital \u0219i dezvoltare web cu cod HTML \u0219i ilustra\u021bie cu megafon", "url": "https://ro.dreamstime.com/banner-pentru-pagina-de-destinație-marketing-digital-și-dezvoltare-web-cu-cod-html-ilustrație-megafon-image479686947" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 40, "name":"Fundal abstract de cod binar albastru deschis \u0219i alb", "url": "https://ro.dreamstime.com/fundal-abstract-de-cod-binar-albastru-deschis-și-alb-image414752608" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 41, "name":"Cod pixel albastru, paranteze drepte, simbol, concept de codificare digital\u0103 \u0219i fundal. Design copert\u0103 pentru dezvoltatori", "url": "https://ro.dreamstime.com/cod-pixel-albastru-paranteze-drepte-simbol-concept-de-codificare-digitală-și-fundal-design-copertă-pentru-dezvoltatori-image448981999" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 42, "name":"Computer browser window with code symbol surrounded by virus bacteria", "url": "https://ro.dreamstime.com/computer-browser-window-code-symbol-surrounded-virus-bacteria-image455447783" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 43, "name":"Reprezint\u0103 tehnologia de automatizare care integreaz\u0103 agen\u021bi inteligen\u021bi, cod \u0219i diverse instrumente.", "url": "https://ro.dreamstime.com/reprezintă-tehnologia-de-automatizare-care-integrează-agenți-inteligenți-cod-și-diverse-instrumente-image478883035" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 44, "name":"Computer screen displaying code in an office with a city skyline view", "url": "https://ro.dreamstime.com/computer-screen-displaying-code-office-city-skyline-view-image457426033" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 45, "name":"Programator care scrie cod pe un laptop \u00eentr-o camer\u0103 \u00eentunecat\u0103", "url": "https://ro.dreamstime.com/programator-care-scrie-cod-pe-un-laptop-într-o-cameră-întunecată-image388335062" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 46, "name":"Concept de dezvoltare web PHP \u0219i MySQL cu ilustra\u021bie vectorial\u0103 cu un programator \u0219i mascota elefant", "url": "https://ro.dreamstime.com/concept-de-dezvoltare-web-php-și-mysql-cu-ilustrație-vectorială-un-programator-mascota-elefant-image468969091" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 47, "name":"Spa\u021biu de lucru pentru codare cu mai multe ecrane noaptea", "url": "https://ro.dreamstime.com/spațiu-de-lucru-pentru-codare-cu-mai-multe-ecrane-noaptea-image423743917" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 48, "name":"Detectarea erorilor de software|C\u0103utare securitate|Analiza codului software|Logo debugging software", "url": "https://ro.dreamstime.com/detectarea-erorilor-de-software-căutare-securitate-analiza-codului-logo-debugging-image466807112" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 49, "name":"Binary Code Speech Bubble and Analog Clock Vector Illustration for Technology Landing Page Banner", "url": "https://ro.dreamstime.com/binary-code-speech-bubble-analog-clock-vector-illustration-technology-landing-page-banner-image472458589" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 50, "name":"Indigo Profund Albastru Cod Binar Date Criptate Fundal", "url": "https://ro.dreamstime.com/indigo-profund-albastru-cod-binar-date-criptate-fundal-image414752508" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 51, "name":"Set de ilustra\u021bii vectoriale pentru dezvoltarea software \u0219i tehnologia auto pentru designul paginilor de destina\u021bie web", "url": "https://ro.dreamstime.com/set-de-ilustrații-vectoriale-pentru-dezvoltarea-software-și-tehnologia-auto-designul-paginilor-destinație-web-image467426174" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 52, "name":"Concept de analiz\u0103 de date \u0219i dezvoltare software cu list\u0103 de verificare a vehiculului \u0219i design pentru energie alternativ\u0103", "url": "https://ro.dreamstime.com/concept-de-analiză-date-și-dezvoltare-software-cu-listă-verificare-vehiculului-design-pentru-energie-alternativă-image480395587" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 53, "name":"Laptop displaying code on a wooden desk with a potted plant and sunlight", "url": "https://ro.dreamstime.com/laptop-displaying-code-wooden-desk-potted-plant-sunlight-image457425227" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 54, "name":"Abstract Glitchy Blue Digital Code Background", "url": "https://ro.dreamstime.com/abstract-glitchy-blue-digital-code-background-image439517347" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 55, "name":"Pictogram\u0103 generare text ", "url": "https://ro.dreamstime.com/pictogramă-generare-text-vectorială-cu-linii-negre-subțiri-pe-fundal-transparent-lățime-contur-editabilă-conceptul-de-image384416970" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 56, "name":"Ilustra\u021bie vectorial\u0103 a unui programator care lucreaz\u0103 la un computer cu o platform\u0103 de schimb CEX \u0219i o baz\u0103 de date MySQL", "url": "https://ro.dreamstime.com/ilustrație-vectorială-unui-programator-care-lucrează-la-un-computer-cu-o-platformă-de-schimb-cex-și-bază-date-mysql-image475726765" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 57, "name":"M\u00e2n\u0103 Ating\u00e2nd Cod Luminos pe Ecran Digital", "url": "https://ro.dreamstime.com/mână-atingând-cod-luminos-pe-ecran-digital-image450068088" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 58, "name":"Technology Icons Line Vector Illustration Set", "url": "https://ro.dreamstime.com/technology-icons-line-vector-illustration-set-image459686802" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 59, "name":"Programatoare lucr\u00e2nd pe laptop", "url": "https://ro.dreamstime.com/programatoare-lucrând-pe-laptop-ilustrație-cu-o-femeie-un-probabil-sau-dezvoltatoare-ea-este-așezată-la-birou-ceașcă-de-image413304335" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 60, "name":"Design Logo Quantum Code Atom pentru cercetare fizic\u0103 \u0219i dezvoltare tehnologic\u0103", "url": "https://ro.dreamstime.com/design-logo-quantum-code-atom-pentru-cercetare-fizică-și-dezvoltare-tehnologică-image467789602" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 61, "name":"Set de pictograme pentru documente de analiz\u0103 a codului \u0219i depanare", "url": "https://ro.dreamstime.com/set-de-pictograme-pentru-documente-analiză-codului-și-depanare-image447285209" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 62, "name":"Un programator dedicat codeaz\u0103 t\u00e2rziu \u00een noapte", "url": "https://ro.dreamstime.com/un-programator-dedicat-codează-târziu-în-noapte-o-primă-planșă-arată-dezvoltator-concentrat-tastând-intens-cod-pe-image415938722" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 63, "name":"Monitor de calculator cu cod HTML \u0219i imagine cu munte", "url": "https://ro.dreamstime.com/monitor-de-calculator-cu-cod-html-și-imagine-munte-image461385037" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 64, "name":"Dezvoltator care inspecteaz\u0103 cod cu lupa", "url": "https://ro.dreamstime.com/dezvoltator-care-inspectează-cod-cu-lupa-image426597078" },{ "@context":"https://schema.org", "@type":"ListItem", "position": 65, "name":"Set de pictograme pentru dezvoltarea instrumentelor de programare", "url": "https://ro.dreamstime.com/set-de-pictograme-pentru-dezvoltarea-instrumentelor-programare-image447691070" } ] } </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 >Distribuie aceast\u0103 pagin\u0103<\/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=\"\u00cenchidere\"><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%2Fro.dreamstime.com%2Fillustration%2Fprogramare-script.html%3Fpg%3D99&description=Desc%C4%83rcare+Programare+Script+fotografii+de+stoc+de+la+Dreamstime+Uit%C4%83-te+la+aceste+uimitoare+fotografii+gratuite+sau+gratuite+pe+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=Desc%C4%83rcare+Programare+Script+fotografii+de+stoc+de+la+Dreamstime+Uit%C4%83-te+la+aceste+uimitoare+fotografii+gratuite+sau+gratuite+pe+Dreamstime.&url=https%3A%2F%2Fro.dreamstime.com%2Fillustration%2Fprogramare-script.html%3Fpg%3D99\" 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%2Fro.dreamstime.com%2Fillustration%2Fprogramare-script.html%3Fpg%3D99&summary=Desc%C4%83rcare+Programare+Script+fotografii+de+stoc+de+la+Dreamstime+Uit%C4%83-te+la+aceste+uimitoare+fotografii+gratuite+sau+gratuite+pe+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%2Fro.dreamstime.com%2Fillustration%2Fprogramare-script.html%3Fpg%3D99&media=https%3A%2F%2Fthumbs.dreamstime.com%2Fb%2Fshield-icon-code-download-symbol-cybersecurity-software-development-479697508.jpg&description=Desc%C4%83rcare+Programare+Script+fotografii+de+stoc+de+la+Dreamstime+Uit%C4%83-te+la+aceste+uimitoare+fotografii+gratuite+sau+gratuite+pe+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%2Fro.dreamstime.com%2Fillustration%2Fprogramare-script.html%3Fpg%3D99\" 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%2Fro.dreamstime.com%2Fillustration%2Fprogramare-script.html%3Fpg%3D99&t=Desc%C4%83rcare+Programare+Script+fotografii+de+stoc+de+la+Dreamstime+Uit%C4%83-te+la+aceste+uimitoare+fotografii+gratuite+sau+gratuite+pe+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%2Fro.dreamstime.com%2Fillustration%2Fprogramare-script.html%3Fpg%3D99&caption=Programare+Script+Fotografii+din+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%2Fro.dreamstime.com%2Fillustration%2Fprogramare-script.html%3Fpg%3D99&title=Programare+Script+Fotografii+din+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=Programare%20Script%20Imagini%20din%20Dreamstime&body=Hei%20%21%20Am%20g%C4%83sit%20ni%C8%99te%20fotografii%20uimitoare%20legate%20de%20Programare%20Script%20pe%20Dreamstime.%20Uit%C4%83-te%3A%20https%3A%2F%2Fro.dreamstime.com%2Fillustration%2Fprogramare-script.html%3Fpg%3D99\" 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:\/\/ro.dreamstime.com\/illustration\/programare-script.html?pg=99<\/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=\"Copiat \u00een clipboard!\"\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\" >COPIERE LINK<\/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-programming.html","pt":"https:\/\/pt.dreamstime.com\/illustration\/script-programming.html","de":"https:\/\/de.dreamstime.com\/illustration\/scriptprogrammierung.html","es":"https:\/\/es.dreamstime.com\/illustration\/programaci\u00f3n-de-scripts.html","it":"https:\/\/it.dreamstime.com\/illustration\/programmazione-script.html","nl":"https:\/\/www.dreamstime.com\/nl\/illustration\/scriptprogrammering.html","fr":"https:\/\/fr.dreamstime.com\/illustration\/programmation-de-scripts.html","ru":"https:\/\/ru.dreamstime.com\/illustration\/\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432\u043e\u0435-\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435.html","gr":"https:\/\/gr.dreamstime.com\/illustration\/\u03c0\u03c1\u03bf\u03b3\u03c1\u03b1\u03bc\u03bc\u03b1\u03c4\u03b9\u03c3\u03bc\u03cc\u03c2-\u03c3\u03b5\u03bd\u03b1\u03c1\u03af\u03c9\u03bd.html","cn":"https:\/\/cn.dreamstime.com\/illustration\/\u811a\u672c\u7f16\u7a0b.html","pl":"https:\/\/pl.dreamstime.com\/illustration\/programowanie-skrypt\u00f3w.html","se":"https:\/\/se.dreamstime.com\/illustration\/skriptprogrammering.html","ro":"https:\/\/ro.dreamstime.com\/illustration\/programare-script.html","sk":"https:\/\/sk.dreamstime.com\/illustration\/skriptov\u00e9-programovanie.html","cz":"https:\/\/cz.dreamstime.com\/illustration\/skriptov\u00e9-programov\u00e1n\u00ed.html","jp":"https:\/\/www.dreamstime.com\/jp\/illustration\/\u30b9\u30af\u30ea\u30d7\u30c8\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0.html","kr":"https:\/\/www.dreamstime.com\/kr\/illustration\/\uc2a4\ud06c\ub9bd\ud2b8-\ud504\ub85c\uadf8\ub798\ubc0d.html","ar":"https:\/\/ar.dreamstime.com\/illustration\/\u0628\u0631\u0645\u062c\u0629-\u0627\u0644\u0646\u0635\u0648\u0635-\u0627\u0644\u0628\u0631\u0645\u062c\u064a\u0629.html","hi":"https:\/\/hi.dreamstime.com\/illustration\/\u0938\u094d\u0915\u094d\u0930\u093f\u092a\u094d\u091f-\u092a\u094d\u0930\u094b\u0917\u094d\u0930\u093e\u092e\u093f\u0902\u0917.html","tr":"https:\/\/tr.dreamstime.com\/illustration\/betik-programlama.html","id":"https:\/\/id.dreamstime.com\/illustration\/pemrograman-skrip.html","dk":"https:\/\/dk.dreamstime.com\/illustration\/scriptprogrammering.html","no":"https:\/\/www.dreamstime.com\/no\/illustration\/skriptprogrammering.html","he":"https:\/\/www.dreamstime.com\/he\/illustration\/\u05ea\u05db\u05e0\u05d5\u05ea-\u05e1\u05e7\u05e8\u05d9\u05e4\u05d8\u05d9\u05dd.html"},"modalUrl":"https:\/\/ro.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://ro.dreamstime.com/', isDev: false, isRtl: false, isLtr: false, enableLog: false, assetsBasePath: 'new/process-assets/', ajaxBase: 'https://ro.dreamstime.com/new/', componentsBasePath: 'https://ro.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: '90beb1fbc1d85a9324a94aa839d9f6b0', cacheDriver: 'ap', }; var securitycheck = '90beb1fbc1d85a9324a94aa839d9f6b0'; 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=ro","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: "programare script", firstvalue: "", lastsearchvalue: "programare script", s_all: "", s_ph: "", s_il: "y", s_video: "", s_audio: "", s_ad: "", s_free: "", securitycheck: "90beb1fbc1d85a9324a94aa839d9f6b0", s_cf: "0", s_mrca: "", site_adr: "https://ro.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=ro'); } 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:\/\/ro.dreamstime.com\/securecredits2.php?subscriptionid=816&packagetype=0\" class=\"banner__link banner__link--freetrial\" aria-label=\"\u00cencepe\u021bi perioada de prob\u0103 GRATUIT\u0102\" ><\/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=\"Imagine pentru bannerul "Start your FREE trial"\"> <\/picture> <\/div> <div class=\"banner__content\"> <div class=\"banner__title\">Primele tale 15 imagini, gratuit!<\/div> <div class=\"banner__description\">Anula\u021bi oric\u00e2nd.<\/div> <\/div> <div class=\"banner__btn-wrapper\"> <a href=\"https:\/\/ro.dreamstime.com\/securecredits2.php?subscriptionid=816&packagetype=0\" class=\"banner__btn btn btn--pink btn--big\">\u00cencepe\u021bi perioada de prob\u0103 GRATUIT\u0102<\/a> <\/div> <\/div>"); DT.lightboxBarActionsUrl = 'https://ro.dreamstime.com/new/components/LightboxBar/actions.ajax.php'; DT.lightboxBarInitUrl = 'https://ro.dreamstime.com/new/components/LightboxBar/actions.ajax.php?action=init_component'; try { window.openfreetrial = 0; window.popupsignup = 0; window.site_adr = 'https://ro.dreamstime.com/'; window.dtrfr = ''; } catch (_err) {} </script> </body> </html>