CINXE.COM
Software Archives - On-Site MagazineOn-Site Magazine
<!doctype html> <html lang="en-US" prefix="og: https://ogp.me/ns#"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /> <title>Software Archives - On-Site MagazineOn-Site Magazine</title> <link rel="icon" type="image/png" href="https://www.on-sitemag.com/wp-content/uploads/2020/07/favicon.png" /> <link rel="profile" href="http://gmpg.org/xfn/11" /> <link rel="pingback" href="https://www.on-sitemag.com/xmlrpc.php" /> <!--[if IE 7]> <link rel="stylesheet" href="/css/font-awesome-ie7.min.css"> <![endif]--> <script type="text/javascript" id="wpp-js" src="https://www.on-sitemag.com/wp-content/plugins/wordpress-popular-posts/assets/js/wpp.min.js?ver=7.1.0" data-sampling="0" data-sampling-rate="100" data-api-url="https://www.on-sitemag.com/wp-json/wordpress-popular-posts" data-post-id="0" data-token="097dbc618e" data-lang="0" data-debug="0"></script> <!-- Search Engine Optimization by Rank Math PRO - https://rankmath.com/ --> <meta name="robots" content="index, follow, max-snippet:-1, max-video-preview:-1, max-image-preview:large"/> <link rel="canonical" href="https://www.on-sitemag.com/category/software/" /> <link rel="next" href="https://www.on-sitemag.com/category/software/page/2/" /> <meta property="og:locale" content="en_US" /> <meta property="og:type" content="article" /> <meta property="og:title" content="Software Archives - On-Site Magazine" /> <meta property="og:url" content="https://www.on-sitemag.com/category/software/" /> <meta property="og:site_name" content="On-Site Magazine" /> <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:title" content="Software Archives - On-Site Magazine" /> <script type="application/ld+json" class="rank-math-schema-pro">{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://www.on-sitemag.com/#organization","name":"On-Site Magazine"},{"@type":"WebSite","@id":"https://www.on-sitemag.com/#website","url":"https://www.on-sitemag.com","name":"On-Site Magazine","publisher":{"@id":"https://www.on-sitemag.com/#organization"},"inLanguage":"en-US"},{"@type":"CollectionPage","@id":"https://www.on-sitemag.com/category/software/#webpage","url":"https://www.on-sitemag.com/category/software/","name":"Software Archives - On-Site Magazine","isPartOf":{"@id":"https://www.on-sitemag.com/#website"},"inLanguage":"en-US"}]}</script> <!-- /Rank Math WordPress SEO plugin --> <link rel="alternate" type="application/rss+xml" title="On-Site Magazine » Feed" href="https://www.on-sitemag.com/feed/" /> <link rel="alternate" type="application/rss+xml" title="On-Site Magazine » Software Category Feed" href="https://www.on-sitemag.com/category/software/feed/" /> <script type="text/javascript"> /* <![CDATA[ */ window._wpemojiSettings = {"baseUrl":"https:\/\/s.w.org\/images\/core\/emoji\/15.0.3\/72x72\/","ext":".png","svgUrl":"https:\/\/s.w.org\/images\/core\/emoji\/15.0.3\/svg\/","svgExt":".svg","source":{"concatemoji":"https:\/\/www.on-sitemag.com\/wp-includes\/js\/wp-emoji-release.min.js?ver=6.7"}}; /*! This file is auto-generated */ !function(i,n){var o,s,e;function c(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(o,JSON.stringify(t))}catch(e){}}function p(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data),r=(e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0),new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data));return t.every(function(e,t){return e===r[t]})}function u(e,t,n){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\uddfa\ud83c\uddf3","\ud83c\uddfa\u200b\ud83c\uddf3")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!n(e,"\ud83d\udc26\u200d\u2b1b","\ud83d\udc26\u200b\u2b1b")}return!1}function f(e,t,n){var r="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):i.createElement("canvas"),a=r.getContext("2d",{willReadFrequently:!0}),o=(a.textBaseline="top",a.font="600 32px Arial",{});return e.forEach(function(e){o[e]=t(a,e,n)}),o}function t(e){var t=i.createElement("script");t.src=e,t.defer=!0,i.head.appendChild(t)}"undefined"!=typeof Promise&&(o="wpEmojiSettingsSupports",s=["flag","emoji"],n.supports={everything:!0,everythingExceptFlag:!0},e=new Promise(function(e){i.addEventListener("DOMContentLoaded",e,{once:!0})}),new Promise(function(t){var n=function(){try{var e=JSON.parse(sessionStorage.getItem(o));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(s),u.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"}),a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=function(e){c(n=e.data),a.terminate(),t(n)})}catch(e){}c(n=f(s,u,p))}t(n)}).then(function(e){for(var t in e)n.supports[t]=e[t],n.supports.everything=n.supports.everything&&n.supports[t],"flag"!==t&&(n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&n.supports[t]);n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&!n.supports.flag,n.DOMReady=!1,n.readyCallback=function(){n.DOMReady=!0}}).then(function(){return e}).then(function(){var e;n.supports.everything||(n.readyCallback(),(e=n.source||{}).concatemoji?t(e.concatemoji):e.wpemoji&&e.twemoji&&(t(e.twemoji),t(e.wpemoji)))}))}((window,document),window._wpemojiSettings); /* ]]> */ </script> <style id='wp-emoji-styles-inline-css' type='text/css'> img.wp-smiley, img.emoji { display: inline !important; border: none !important; box-shadow: none !important; height: 1em !important; width: 1em !important; margin: 0 0.07em !important; vertical-align: -0.1em !important; background: none !important; padding: 0 !important; } </style> <link rel='stylesheet' id='wp-block-library-css' href='https://www.on-sitemag.com/wp-includes/css/dist/block-library/style.min.css?ver=6.7' type='text/css' media='all' /> <style id='rank-math-toc-block-style-inline-css' type='text/css'> .wp-block-rank-math-toc-block nav ol{counter-reset:item}.wp-block-rank-math-toc-block nav ol li{display:block}.wp-block-rank-math-toc-block nav ol li:before{content:counters(item, ".") ". ";counter-increment:item} </style> <style id='classic-theme-styles-inline-css' type='text/css'> /*! This file is auto-generated */ .wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none} </style> <style id='global-styles-inline-css' type='text/css'> :root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} :where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;} :where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;} :root :where(.wp-block-pullquote){font-size: 1.5em;line-height: 1.6;} </style> <link rel='stylesheet' id='dashicons-css' href='https://www.on-sitemag.com/wp-includes/css/dashicons.min.css?ver=6.7' type='text/css' media='all' /> <link rel='stylesheet' id='leaflet-css-css' href='https://www.on-sitemag.com/wp-content/plugins/meow-lightbox/app/style.min.css?ver=1732136611' type='text/css' media='all' /> <link rel='stylesheet' id='wp-pagenavi-css' href='https://www.on-sitemag.com/wp-content/plugins/wp-pagenavi/pagenavi-css.css?ver=2.70' type='text/css' media='all' /> <link rel='stylesheet' id='wordpress-popular-posts-css-css' href='https://www.on-sitemag.com/wp-content/plugins/wordpress-popular-posts/assets/css/wpp.css?ver=7.1.0' type='text/css' media='all' /> <link rel='stylesheet' id='font-awesome-v4shim-css' href='https://www.on-sitemag.com/wp-content/plugins/types/vendor/toolset/toolset-common/res/lib/font-awesome/css/v4-shims.css?ver=5.13.0' type='text/css' media='screen' /> <link rel='stylesheet' id='font-awesome-css' href='https://www.on-sitemag.com/wp-content/plugins/types/vendor/toolset/toolset-common/res/lib/font-awesome/css/all.css?ver=5.13.0' type='text/css' media='screen' /> <link rel='stylesheet' id='magnific-css' href='https://www.on-sitemag.com/wp-content/themes/strappress/css/magnific.css?ver=0.9.4' type='text/css' media='all' /> <link rel='stylesheet' id='responsive-style-css' href='https://www.on-sitemag.com/wp-content/themes/pubx-v2/style.css?ver=3.0.0' type='text/css' media='all' /> <link rel='stylesheet' id='wpdreams-asl-basic-css' href='https://www.on-sitemag.com/wp-content/plugins/ajax-search-lite/css/style.basic.css?ver=4.12.4' type='text/css' media='all' /> <link rel='stylesheet' id='wpdreams-asl-instance-css' href='https://www.on-sitemag.com/wp-content/plugins/ajax-search-lite/css/style-underline.css?ver=4.12.4' type='text/css' media='all' /> <script type="text/javascript" src="https://www.on-sitemag.com/wp-includes/js/jquery/jquery.min.js?ver=3.7.1" id="jquery-core-js"></script> <script type="text/javascript" src="https://www.on-sitemag.com/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1" id="jquery-migrate-js"></script> <script type="text/javascript" src="https://www.on-sitemag.com/wp-content/plugins/annex-eprdcts-manager/js/script.js?ver=6.7" id="annex_eprdcts_manager_scripts-js"></script> <script type="text/javascript" id="mwl-build-js-js-extra"> /* <![CDATA[ */ var mwl_settings = {"plugin_url":"https:\/\/www.on-sitemag.com\/wp-content\/plugins\/meow-lightbox\/classes\/","settings":{"rtf_slider_fix":false,"engine":"default","backdrop_opacity":85,"theme":"dark","orientation":"auto","selector":".entry-content, .gallery, .mgl-gallery, .wp-block-gallery, .wp-block-image","selector_ahead":false,"deep_linking":false,"social_sharing":false,"separate_galleries":false,"animation_toggle":"none","animation_speed":"normal","low_res_placeholder":false,"wordpress_big_image":false,"right_click_protection":true,"magnification":true,"anti_selector":".blog, .archive, .emoji, .attachment-post-image, .no-lightbox","preloading":false,"download_link":false,"caption_source":"caption","caption_ellipsis":true,"exif":{"title":true,"caption":true,"camera":true,"date":false,"date_timezone":false,"lens":true,"shutter_speed":true,"aperture":true,"focal_length":true,"iso":true,"keywords":false},"slideshow":{"enabled":false,"timer":3000},"map":{"enabled":false}}}; /* ]]> */ </script> <script type="text/javascript" src="https://www.on-sitemag.com/wp-content/plugins/meow-lightbox/app/lightbox.js?ver=1732136611" id="mwl-build-js-js"></script> <script type="text/javascript" src="https://www.on-sitemag.com/wp-content/themes/strappress/js/responsive-modernizr.js?ver=2.5.3" id="modernizr-js"></script> <script type="text/javascript" src="https://www.on-sitemag.com/wp-content/themes/strappress/js/magnific.min.js?ver=0.9.4" id="magnific-js"></script> <script type="text/javascript" src="https://www.on-sitemag.com/wp-content/themes/strappress/js/jquery.isotope.min.js?ver=6.7" id="isotope-script-js"></script> <script type="text/javascript" src="https://www.on-sitemag.com/wp-content/themes/strappress/js/bootstrap.js?ver=6.7" id="bootstrap-script-js"></script> <link rel="https://api.w.org/" href="https://www.on-sitemag.com/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://www.on-sitemag.com/wp-json/wp/v2/categories/14" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://www.on-sitemag.com/xmlrpc.php?rsd" /> <style id="wpp-loading-animation-styles">@-webkit-keyframes bgslide{from{background-position-x:0}to{background-position-x:-200%}}@keyframes bgslide{from{background-position-x:0}to{background-position-x:-200%}}.wpp-widget-block-placeholder,.wpp-shortcode-placeholder{margin:0 auto;width:60px;height:3px;background:#dd3737;background:linear-gradient(90deg,#dd3737 0%,#571313 10%,#dd3737 100%);background-size:200% auto;border-radius:3px;-webkit-animation:bgslide 1s infinite linear;animation:bgslide 1s infinite linear}</style> <script type="text/javascript"> // <![CDATA[ jQuery(document).ready(function($){ $("a[rel='magnific']").magnificPopup({ type:'image' }); }); // ]]> </script> <!-- Custom CSS --> <style type="text/css"> body{background-image: none;}header { background: ;}.navbar-brand { font-weight: normal; }.navbar-nav > li > a, .dropdown-menu > li > a { font-weight: normal; } </style> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin /> <link rel="preload" as="style" href="//fonts.googleapis.com/css?family=Open+Sans&display=swap" /> <link rel="stylesheet" href="//fonts.googleapis.com/css?family=Open+Sans&display=swap" media="all" /> <script type="text/javascript" id="google_gtagjs" src="https://www.googletagmanager.com/gtag/js?id=G-LS41YG43GC" async="async"></script> <script type="text/javascript" id="google_gtagjs-inline"> /* <![CDATA[ */ window.dataLayer = window.dataLayer || [];function gtag(){dataLayer.push(arguments);}gtag('js', new Date());gtag('config', 'G-LS41YG43GC', {} ); /* ]]> */ </script> <style> div[id*='ajaxsearchlitesettings'].searchsettings .asl_option_inner label { font-size: 0px !important; color: rgba(0, 0, 0, 0); } div[id*='ajaxsearchlitesettings'].searchsettings .asl_option_inner label:after { font-size: 11px !important; position: absolute; top: 0; left: 0; z-index: 1; } .asl_w_container { width: 100%; margin: 6px 0px 0px 0px; min-width: 200px; } div[id*='ajaxsearchlite'].asl_m { width: 100%; } div[id*='ajaxsearchliteres'].wpdreams_asl_results div.resdrg span.highlighted { font-weight: bold; color: rgba(217, 49, 43, 1); background-color: rgba(238, 238, 238, 1); } div[id*='ajaxsearchliteres'].wpdreams_asl_results .results img.asl_image { width: 70px; height: 70px; object-fit: cover; } div.asl_r .results { max-height: none; } div.asl_r.asl_w.vertical .results .item::after { display: block; position: absolute; bottom: 0; content: ''; height: 1px; width: 100%; background: #D8D8D8; } div.asl_r.asl_w.vertical .results .item.asl_last_item::after { display: none; } .asl_w_container {min-width: 80px;} </style> <style type="text/css" id="wp-custom-css"> #footer hr { margin-top: 10px !important; margin-bottom: 10px !important; } .nav li a {padding-left: 11px; padding-right: 11px;} .network-logo img { margin: 0 20px; } .headline img { border: none; } #lct-widget-edition-year li { padding: 0 5px !important; float: left !important; } #lct-widget-edition-year {list-style-type:none;margin:0;padding:5px 0 0 10px;} /*Welcomer top ad colour */ #div-gpt-ad-1680205143387-0 { background:#005DD1; } .pricingTable-header h3 { color: #fff; } .network-logo img { margin: 0 20px; } .width300 {min-width: 300px} .fraser-product-deck p {font-size:12px; line-height:1.3em} #mega-menu .covid a {font-weight:bold;color:yellow;} .widget_text {margin-bottom: 10px!important;} .thumbnail img { margin-bottom: 0px; margin-right: 0px; } #mega-menu {top:0px; position: relative;} .width300 {min-width: 300px} @media (min-width: 1499px) { .attribution2 { xmargin-left: -220px; } } @media (min-width: 1399px) { #closerB { display:none; } } @media (max-width: 1499px) { .col-md-9 { width: 70%; } .col-md-4 { width: 100%!important; } .nav li a {padding-left: 8px; padding-right: 8px;} } @media (max-width: 991px) { .col-md-9 { width: 100%; } } #wallpaperleft, #wallpaperright { position:absolute; top: -0px; } .topbox { background:#efefef; padding: 10px 0; } .btn-group .dropdownsmall { float:right; font-size: 14px; } .attribution2, .attribution1 { color: #CCCCCC; padding-left: 3px; padding-right: 3px; text-transform: uppercase; font: 11px "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif; padding-bottom: 10px; text-align: center; } .the-content a { color:#0273b6;text-decoration:underline;} @media (min-width: 769px) and (max-width: 1366px){ } /* visible on xs and sm */ @media (min-width: 320px) and (max-width: 768px) { } /*on extra small devices */ @media (max-width: 460px) { .logo {width:200px;} .btn-group .dropdownsmall { font-size: 12px } .alignright, .alignleft {float:none;clear:both;} } /* iphone 4/5 */ @media (max-width: 320px) { .logo {width:140px;} .btn-group .dropdownsmall { font-size: 12px } } .btn {margin-bottom: 4px;} .network-logo img { margin: 10px; max-height: 30px; } </style> <style> .ai-viewports {--ai: 1;} .ai-viewport-3 { display: none !important;} .ai-viewport-2 { display: none !important;} .ai-viewport-1 { display: inherit !important;} .ai-viewport-0 { display: none !important;} @media (min-width: 768px) and (max-width: 1298px) { .ai-viewport-1 { display: none !important;} .ai-viewport-2 { display: inherit !important;} } @media (max-width: 767px) { .ai-viewport-1 { display: none !important;} .ai-viewport-3 { display: inherit !important;} } .ai-rotate {position: relative;} .ai-rotate-hidden {visibility: hidden;} .ai-rotate-hidden-2 {position: absolute; top: 0; left: 0; width: 100%; height: 100%;} .ai-list-data, .ai-ip-data, .ai-filter-check, .ai-fallback, .ai-list-block, .ai-list-block-ip, .ai-list-block-filter {visibility: hidden; position: absolute; width: 50%; height: 1px; top: -1000px; z-index: -9999; margin: 0px!important;} .ai-list-data, .ai-ip-data, .ai-filter-check, .ai-fallback {min-width: 1px;} .ai-close {position: relative;} .ai-close-button {position: absolute; top: -11px; right: -11px; width: 24px; height: 24px; background: url(https://www.on-sitemag.com/wp-content/plugins/ad-inserter-pro/css/images/close-button.png) no-repeat center center; cursor: pointer; z-index: 9; display: none;} .ai-close-show {display: block;} .ai-close-left {right: unset; left: -11px;} .ai-close-bottom {top: unset; bottom: -10px;} .ai-close-none {visibility: hidden;} .code-block-dc0c740d52a4e76a79d513a9490e48ef {margin: 0px auto; text-align: center; display: block; clear: both;} .code-block-c63036740e3354b3c4dd80523286429c {margin: 0px 0; clear: both;} .code-block-1f6570c67831b7d8b7520fa4558d4759 {position: fixed; z-index: 995; height: 70px; bottom: 0px; text-align: center; left: 50%; transform: translate(-50%);} .code-block-center {margin: 8px auto; text-align: center; display: block; clear: both;} .code-block- {} .code-block-default {margin: 8px 0; clear: both;} .ai-close-fit {width: fit-content; width: -moz-fit-content;} </style> <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries --> <!--[if lt IE 9]> <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script> <script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script> <![endif]--> <script async='async' src='https://securepubads.g.doubleclick.net/tag/js/gpt.js'></script> <script type='text/javascript'> var googletag = googletag || {}; googletag.cmd = googletag.cmd || []; (function() { var gads = document.createElement('script'); gads.async = true; gads.type = 'text/javascript'; var useSSL = 'https:' == document.location.protocol; gads.src = (useSSL ? 'https:' : 'http:') + '//securepubads.g.doubleclick.net/tag/js/gpt.js'; var node = document.getElementsByTagName('script')[0]; node.parentNode.insertBefore(gads, node); })(); </script> <!-- refreshes browser on device orientation --> <script> window.onorientationchange = function() { window.location.reload(); }</script> <!-- NEW Scripts for Ads to refresh based on browser width --> <script> if (window.addEventListener) { window.addEventListener("resize", browserResize); } else if (window.attachEvent) { window.attachEvent("onresize", browserResize); } var InitialResize = window.innerWidth; function browserResize() { var afterResize = window.innerWidth; if ((InitialResize < (769) && afterResize >= (769)) || (InitialResize >= (769) && afterResize < (769)) || (InitialResize < (300) && afterResize >= (300)) ||(InitialResize >= (300) && afterResize < (300))) { InitialResize = afterResize; googletag.cmd.push(function() { googletag.pubads().refresh([ArticleBillboard]); }); googletag.cmd.push(function() { googletag.pubads().refresh([TopLeaderboard]); }); } } </script> <script> if (window.addEventListener) { window.addEventListener("resize", browserResize); } else if (window.attachEvent) { window.attachEvent("onresize", browserResize); } var InitialResize = window.innerWidth; function browserResize() { var afterResize = window.innerWidth; if ((InitialResize < (975) && afterResize >= (975)) || (InitialResize >= (975) && afterResize < (975)) || (InitialResize < (300) && afterResize >= (300)) ||(InitialResize >= (300) && afterResize < (300))) { InitialResize = afterResize; googletag.cmd.push(function() { googletag.pubads().refresh([TopBillboard]); }); googletag.cmd.push(function() { googletag.pubads().refresh([TopWelcome]); }); } } </script> <script> if (window.addEventListener) { window.addEventListener("resize", browserResize); } else if (window.attachEvent) { window.attachEvent("onresize", browserResize); } var InitialResize = window.innerWidth; function browserResize() { var afterResize = window.innerWidth; if ((InitialResize < (1300) && afterResize >= (1300)) || (InitialResize >= (1300) && afterResize < (1300))|| (InitialResize < (300) && afterResize >= (300)) ||(InitialResize >= (300) && afterResize < (300))) { InitialResize = afterResize; googletag.cmd.push(function() { googletag.pubads().refresh([WallPaper2]); }); googletag.cmd.push(function() { googletag.pubads().refresh([WallPaper1]); }); googletag.cmd.push(function() { googletag.pubads().refresh([MobileBottom]); }); } } </script> <script> if (window.addEventListener) { window.addEventListener("resize", browserResize); } else if (window.attachEvent) { window.attachEvent("onresize", browserResize); } var InitialResize = window.innerWidth; function browserResize() { var afterResize = window.innerWidth; if ((InitialResize < (1500) && afterResize >= (1500)) || (InitialResize >= (1500) && afterResize < (1500)) || (InitialResize < (990) && afterResize >= (990)) ||(InitialResize >= (990) && afterResize < (990))) { InitialResize = afterResize; googletag.cmd.push(function() { googletag.pubads().refresh([HomeInter]); }); } } </script> <!-- End resize Scripts --> <!-- Ad size mapping for desktop/mobile --> <script> window.googletag = window.googletag || {cmd: []}; var TopBillboard; var TopLeaderboard; var TopWelcome; var MobileBottom; var WallPaper1; var WallPaper2; var ArticleBillboard; var HomeInter; googletag.cmd.push(function() { var wallmobilemap = googletag.sizeMapping() .addSize([1300, 0], []) .addSize([0, 0], ['fluid', [300, 50],[320, 50]]) .build(); var leadermap1 = googletag.sizeMapping() .addSize([769, 0], ['fluid', [728, 90]]) .addSize([0, 0], [[300, 50],[320, 50]]) .addSize([0, 0], []) .build(); var articlebillmap = googletag.sizeMapping() .addSize([769, 0], ['fluid', [970, 250]]) .addSize([0, 0], [[300, 250],[300, 600]]) .addSize([0, 0], []) .build(); var wallrightmap = googletag.sizeMapping() .addSize([1300, 0], ['fluid', [550, 683]]) .addSize([0, 0], []) .build(); var wallleftmap = googletag.sizeMapping() .addSize([1300, 0], ['fluid', [550, 684]]) .addSize([0, 0], []) .build(); var billboardtop = googletag.sizeMapping() .addSize([990, 0], ['fluid', [728, 90], [970, 250], [970, 60]]) .addSize([0, 0], ['fluid', [320, 50],[300, 50]]) .addSize([0, 0], []) .build(); var welcome = googletag.sizeMapping() .addSize([990, 0], ['fluid', [728, 90], [1000, 90]]) .addSize([0, 0], ['fluid', [320, 50],[300, 50]]) .addSize([0, 0], []) .build(); var homeinter = googletag.sizeMapping() .addSize([1500, 0], ['fluid', [300, 250], [728, 90], [970, 250], [1200, 1000]]) .addSize([1300, 0], ['fluid', [300, 250], [970, 250], [850, 1000], [980, 1000]]) .addSize([990, 0], ['fluid', [300, 250], [970, 250], [728, 90], [850, 1000]]) .addSize([0, 0], ['fluid', [300, 250], [300, 600], [850, 1000]]) .build(); HomeInter = googletag.defineSlot('/17493223/AN_750x1300_interHOME', [[970, 250], [850, 1000], [350, 1000], [300, 600], [728, 90], [1200, 1000], ['fluid']], 'div-gpt-ad-1638203319690-0') .defineSizeMapping(homeinter) .addService(googletag.pubads()); ArticleBillboard = googletag.defineSlot('/17493223/An_Billboard_970x250', [[300, 250], [300, 600], [970, 250], ['fluid']], 'div-gpt-ad-1547760826902-0') .defineSizeMapping(articlebillmap) .addService(googletag.pubads()); TopBillboard = googletag.defineSlot('/17493223/AN_TOP_Leaderboard_Special', [[300, 50], [320, 50], [728, 90], [970, 60],[970, 250], ['fluid']], 'div-gpt-ad-1587474480357-0') .defineSizeMapping(billboardtop) .addService(googletag.pubads()); TopLeaderboard = googletag.defineSlot('/17493223/AN_LeaderBoard_728x90', ['fluid', [300, 50], [320, 50], [728, 90]], 'div-gpt-ad-1452016996062-15') .defineSizeMapping(leadermap1) .addService(googletag.pubads()); TopWelcome = googletag.defineSlot('/17493223/AN_WelcomeTop', ['fluid', [300, 50], [320, 50], [728, 90], [1000, 90]], 'div-gpt-ad-1680205143387-0') .defineSizeMapping(welcome) .addService(googletag.pubads()); MobileBottom = googletag.defineSlot('/17493223/AN_MobileBannerC_300x50', ['fluid', [300, 50], [320, 50], [2, 2]], 'div-gpt-ad-1508955939021-0') .defineSizeMapping(wallmobilemap) .addService(googletag.pubads()); WallPaper1 = googletag.defineSlot('/17493223/AN_WallAdLeft_550x684', [[550, 684], [2, 2], ['fluid']], 'div-gpt-ad-1451581644708-28') .defineSizeMapping(wallleftmap) .addService(googletag.pubads()); WallPaper2 = googletag.defineSlot('/17493223/AN_WallAdRight_550x684', [[550, 683], [2, 2], ['fluid']], 'div-gpt-ad-1467126364434-0') .defineSizeMapping(wallrightmap) .addService(googletag.pubads()); googletag.defineSlot('/17493223/AN_1x1_Tracker', [[2, 2], ['fluid']], 'div-gpt-ad-1479396621571-0').addService(googletag.pubads()); googletag.defineSlot('/17493223/AN_BigBox1_300x250', [[300, 250], [300, 600], [2, 2], ['fluid']], 'div-gpt-ad-1452016996062-0').addService(googletag.pubads()); googletag.defineSlot('/17493223/AN_BigBox2_300x250', [[300, 250], [300, 600], [2, 2], ['fluid']], 'div-gpt-ad-1451581644708-5').addService(googletag.pubads()); googletag.defineSlot('/17493223/AN_BigBox3_300x250', [[300, 250], [300, 600], [2, 2], ['fluid']], 'div-gpt-ad-1451581644708-6').addService(googletag.pubads()); googletag.defineSlot('/17493223/AN_BigBox4_300x250', [[300, 250], [300, 600], [2, 2], ['fluid']], 'div-gpt-ad-1451581644708-7').addService(googletag.pubads()); googletag.defineSlot('/17493223/AN_BigBox5_300x250', [[300, 250], [300, 600], [2, 2], ['fluid']], 'div-gpt-ad-1451581644708-8').addService(googletag.pubads()); googletag.defineSlot('/17493223/AN_BigBox6_300x250', [[300, 250], [300, 600], [2, 2], ['fluid']], 'div-gpt-ad-1451581644708-9').addService(googletag.pubads()); googletag.defineSlot('/17493223/AN_BigBox7_300x250', [[300, 250], [300, 600], [2, 2], ['fluid']], 'div-gpt-ad-1472477157620-0').addService(googletag.pubads()); googletag.defineSlot('/17493223/AN_BigBox8_300x250', [[300, 250], [300, 600], [2, 2], ['fluid']], 'div-gpt-ad-1488377939751-0').addService(googletag.pubads()); //googletag.defineSlot('/17493223/AN_Banner1_468x60', [468, 60], 'div-gpt-ad-1451581644708-0').addService(googletag.pubads()); //googletag.defineSlot('/17493223/AN_Banner2_468x60', [468, 60], 'div-gpt-ad-1451581644708-1').addService(googletag.pubads()); //googletag.defineSlot('/17493223/AN_Banner3_468x60', [468, 60], 'div-gpt-ad-1451581644708-2').addService(googletag.pubads()); //googletag.defineSlot('/17493223/AN_Banner4_468x60', [468, 60], 'div-gpt-ad-1451581644708-3').addService(googletag.pubads()); googletag.defineSlot('/17493223/AN_SponsorBlock1_100x25', [100, 25], 'div-gpt-ad-1451581644708-13').addService(googletag.pubads()); googletag.defineSlot('/17493223/AN_SponsorBlock2_100x25', [100, 25], 'div-gpt-ad-1451581644708-14').addService(googletag.pubads()); googletag.defineSlot('/17493223/AN_SponsorBlock3_100x25', [100, 25], 'div-gpt-ad-1451581644708-15').addService(googletag.pubads()); googletag.defineSlot('/17493223/AN_SponsorBlock4_100x25', [100, 25], 'div-gpt-ad-1451581644708-16').addService(googletag.pubads()); googletag.defineSlot('/17493223/AN_SponsorBlock5_100x25', [100, 25], 'div-gpt-ad-1451581644708-17').addService(googletag.pubads()); googletag.defineSlot('/17493223/AN_SponsorDigital_300x40', [300, 55], 'div-gpt-ad-1451581644708-18').addService(googletag.pubads()); googletag.defineSlot('/17493223/AN_SponsorSearch_178x26', [178, 26], 'div-gpt-ad-1451581644708-19').addService(googletag.pubads()); googletag.defineSlot('/17493223/AN_SponsorTagBar_178x26', [178, 26], 'div-gpt-ad-1451581644708-20').addService(googletag.pubads()); googletag.defineSlot('/17493223/AN_SponsorVideo_178x26', [178, 26], 'div-gpt-ad-1451581644708-21').addService(googletag.pubads()); googletag.defineSlot('/17493223/AN_TakOverBottom_970x60', [970, 60], 'div-gpt-ad-1451581644708-22').addService(googletag.pubads()); googletag.defineSlot('/17493223/AN_TakOverTop_970x40', [970, 40], 'div-gpt-ad-1451581644708-23').addService(googletag.pubads()); //googletag.defineSlot('/17493223/Z_Back_ColourUnit', [1, 1], 'div-gpt-ad-1452615684922-0').addService(googletag.pubads()); googletag.defineSlot('/17493223/AN_ContentSponsor1', [656, 60], 'div-gpt-ad-1480625996622-0').addService(googletag.pubads()); googletag.defineSlot('/17493223/AN_ContentSponsor2', [656, 60], 'div-gpt-ad-1480625996622-1').addService(googletag.pubads()); googletag.defineSlot('/17493223/AN_VideoAd', [[400, 300], [640, 480], ['fluid']], 'div-gpt-ad-1572984089226-0').addService(googletag.pubads()); googletag.defineSlot('/17493223/AN_VideoAd_Article2', [[400, 300], ['fluid']], 'div-gpt-ad-1643133084987-0').addService(googletag.pubads()); googletag.defineSlot('/17493223/E-AN_SBigBox1_630x250', [630, 250], 'div-gpt-ad-1481570981219-14').addService(googletag.pubads()); googletag.defineSlot('/17493223/E-AN_SBigBox2_630x250', [630, 250], 'div-gpt-ad-1481570981219-15').addService(googletag.pubads()); googletag.defineSlot('/17493223/AN_BigBox1_ARTICLE', [[300, 250], [300, 600], [2, 2]], 'div-gpt-ad-1582657022305-0').addService(googletag.pubads()); googletag.defineSlot('/17493223/AN_BigBoxSPEC1_300x250', [[300, 250], [300, 600], [2, 2], ['fluid']], 'div-gpt-ad-1651249029095-0').addService(googletag.pubads()); googletag.pubads().setTargeting('PageTag',['']); googletag.pubads().setTargeting('SiteCategory',['construction,health-safety,labour,leadership,software,category,software']); googletag.pubads().setTargeting('SiteTopic',[',,']); googletag.pubads().setTargeting('Target_URL',['/category/software']); googletag.pubads().setTargeting('Site_Tag', ['Allsites,OnSite']); googletag.pubads().collapseEmptyDivs(); googletag.pubads().setCentering(true); googletag.pubads().addEventListener('slotRenderEnded', function(event) { var slot = event.slot; if (slot.getSlotElementId() === "div-gpt-ad-1638203319690-0") { // Slot specific logic. adRemoveFixed('#div-gpt-ad-1638203319690-0',event.size[1]); // console.log(event.size[0]); } }); // googletag.pubads().enableSingleRequest(); googletag.enableServices(); }); </script> <!-- dfp end --> <!-- needed for sharign buttons --> <!-- twitter --> <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs');</script> <!-- facebook --> <div id="fb-root"></div> <script>(function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&appId=761779333850340&version=v2.0"; fjs.parentNode.insertBefore(js, fjs); }(document, 'script', 'facebook-jssdk'));</script> <!-- Google Tag Manager --> <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-5JTDLPD');</script> <!-- End Google Tag Manager --> <!-- safari fix for overlap to wallad link --> <style> #InterAdspot { clip-path: inset(0% 13% 0% 13%)!important; overflow: hidden; } @media (max-width: 1499px) { #InterAdspot { clip-path: inset(0% 10% 0% 10%)!important; overflow: hidden; } } </style> </head> <body class="archive category category-software category-14" ><script type="application/javascript" id="mwl-data-script"> var mwl_data = {"1003983809":{"success":true,"file":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/Construction-Technology.jpg","file_srcset":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/Construction-Technology.jpg 696w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/Construction-Technology-300x164.jpg 300w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/Construction-Technology-250x137.jpg 250w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/Construction-Technology-600x328.jpg 600w","file_sizes":"(max-width: 696px) 100vw, 696px","dimension":{"width":696,"height":381},"download_link":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/Construction-Technology.jpg","data":{"id":1003983809,"title":"Construction Technology","caption":"(Image courtesy of Procore)","description":"","gps":"N\/A","copyright":"N\/A","camera":"N\/A","date":"","lens":"N\/A","aperture":"N\/A","focal_length":"N\/A","iso":"N\/A","shutter_speed":"N\/A","keywords":"N\/A"}},"1003983780":{"success":true,"file":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/Bluebeam-AI-Tech-Report-2024-cover-page.jpg","file_srcset":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/Bluebeam-AI-Tech-Report-2024-cover-page.jpg 1064w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/Bluebeam-AI-Tech-Report-2024-cover-page-232x300.jpg 232w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/Bluebeam-AI-Tech-Report-2024-cover-page-791x1024.jpg 791w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/Bluebeam-AI-Tech-Report-2024-cover-page-768x994.jpg 768w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/Bluebeam-AI-Tech-Report-2024-cover-page-155x200.jpg 155w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/Bluebeam-AI-Tech-Report-2024-cover-page-309x400.jpg 309w","file_sizes":"(max-width: 1064px) 100vw, 1064px","dimension":{"width":1064,"height":1377},"download_link":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/Bluebeam-AI-Tech-Report-2024-cover-page.jpg","data":{"id":1003983780,"title":"Bluebeam AI Tech Report 2024 - cover page","caption":"Building the Future: Bluebeam AEC Technology Outlook 2025. (Report cover image courtesy of Bluebeam)","description":"","gps":"N\/A","copyright":"N\/A","camera":"N\/A","date":"","lens":"N\/A","aperture":"N\/A","focal_length":"N\/A","iso":"N\/A","shutter_speed":"N\/A","keywords":"N\/A"}},"1003983752":{"success":true,"file":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/GettyImages-2057470621-scaled.jpg","file_srcset":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/GettyImages-2057470621-scaled.jpg 2560w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/GettyImages-2057470621-300x200.jpg 300w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/GettyImages-2057470621-1024x683.jpg 1024w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/GettyImages-2057470621-768x512.jpg 768w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/GettyImages-2057470621-1536x1024.jpg 1536w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/GettyImages-2057470621-2048x1365.jpg 2048w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/GettyImages-2057470621-270x180.jpg 270w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/GettyImages-2057470621-250x167.jpg 250w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/GettyImages-2057470621-600x400.jpg 600w","file_sizes":"(max-width: 2560px) 100vw, 2560px","dimension":{"width":2560,"height":1707},"download_link":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/GettyImages-2057470621-scaled.jpg","data":{"id":1003983752,"title":"Construction concept, Engineerman working on office desk with construction icon on virtual screen.","caption":"(PHOTO: MAXXA_SATORI \/ ISTOCK \/ GETTY IMAGES PLUS)","description":"","gps":"N\/A","copyright":"N\/A","camera":"FUJIFILM X-T2","date":"March 13, 2017 - 10:43 am","lens":"XF35mmF2 R WR","aperture":"f\/5.6","focal_length":"35mm","iso":"ISO 400","shutter_speed":"1\/3","keywords":"N\/A"}},"1003983643":{"success":true,"file":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/IMG_3377.jpg","file_srcset":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/IMG_3377.jpg 2000w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/IMG_3377-300x200.jpg 300w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/IMG_3377-1024x682.jpg 1024w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/IMG_3377-768x512.jpg 768w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/IMG_3377-1536x1024.jpg 1536w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/IMG_3377-270x180.jpg 270w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/IMG_3377-250x167.jpg 250w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/IMG_3377-600x400.jpg 600w","file_sizes":"(max-width: 2000px) 100vw, 2000px","dimension":{"width":2000,"height":1333},"download_link":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/IMG_3377.jpg","data":{"id":1003983643,"title":"IMG_3377","caption":"(Photo courtesy of Buildots)","description":"","gps":"N\/A","copyright":"N\/A","camera":"Canon 5D Mark IV","date":"December 29, 2019 - 12:44 pm","lens":"24-70mm f\/2.8","aperture":"f\/10","focal_length":"24mm","iso":"ISO 100","shutter_speed":"1\/160","keywords":"N\/A"}},"1003973027":{"success":true,"file":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2021\/04\/data-security-cyber-security.jpeg","file_srcset":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2021\/04\/data-security-cyber-security.jpeg 650w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2021\/04\/data-security-cyber-security-300x195.jpeg 300w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2021\/04\/data-security-cyber-security-250x163.jpeg 250w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2021\/04\/data-security-cyber-security-600x390.jpeg 600w","file_sizes":"(max-width: 650px) 100vw, 650px","dimension":{"width":650,"height":423},"download_link":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2021\/04\/data-security-cyber-security.jpeg","data":{"id":1003973027,"title":"Data protection Cyber Security Privacy Business Internet Technology Concept","caption":"PHOTO: Adobe Stock\/Sikov","description":"","gps":"N\/A","copyright":"\u00a9Sikov - stock.adobe.com","camera":"NIKON D800","date":"June 11, 2019 - 3:54 pm","lens":"35.0 mm f\/1.4","aperture":"f\/2.8","focal_length":"35mm","iso":"ISO 100","shutter_speed":"1\/160","keywords":["data","protection","secure","cyber","privacy","security","policy","business","information","system","network","confidential","attack","technology","defense","computer","attacks","online","internet","fraud","encryption","concept","systems","digital","secured","email","private","web","encrypt","server","confidentiality","protect","computers","safety"]}},"1003983388":{"success":true,"file":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/10\/OS_Cybersecurity-webinar_LINKEDIN-1104x736_SEPT24_SVA.jpg","file_srcset":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/10\/OS_Cybersecurity-webinar_LINKEDIN-1104x736_SEPT24_SVA.jpg 1104w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/10\/OS_Cybersecurity-webinar_LINKEDIN-1104x736_SEPT24_SVA-300x200.jpg 300w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/10\/OS_Cybersecurity-webinar_LINKEDIN-1104x736_SEPT24_SVA-1024x683.jpg 1024w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/10\/OS_Cybersecurity-webinar_LINKEDIN-1104x736_SEPT24_SVA-768x512.jpg 768w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/10\/OS_Cybersecurity-webinar_LINKEDIN-1104x736_SEPT24_SVA-270x180.jpg 270w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/10\/OS_Cybersecurity-webinar_LINKEDIN-1104x736_SEPT24_SVA-250x167.jpg 250w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/10\/OS_Cybersecurity-webinar_LINKEDIN-1104x736_SEPT24_SVA-600x400.jpg 600w","file_sizes":"(max-width: 1104px) 100vw, 1104px","dimension":{"width":1104,"height":736},"download_link":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/10\/OS_Cybersecurity-webinar_LINKEDIN-1104x736_SEPT24_SVA.jpg","data":{"id":1003983388,"title":"OS_Cybersecurity webinar_LINKEDIN 1104x736_SEPT24_SVA","caption":"","description":"","gps":"N\/A","copyright":"N\/A","camera":"N\/A","date":"","lens":"N\/A","aperture":"N\/A","focal_length":"N\/A","iso":"N\/A","shutter_speed":"N\/A","keywords":"N\/A"}},"1003983041":{"success":true,"file":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/09\/IFS_Graphic_for_MA-1200x630-1.png","file_srcset":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/09\/IFS_Graphic_for_MA-1200x630-1.png 1200w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/09\/IFS_Graphic_for_MA-1200x630-1-300x158.png 300w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/09\/IFS_Graphic_for_MA-1200x630-1-1024x538.png 1024w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/09\/IFS_Graphic_for_MA-1200x630-1-768x403.png 768w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/09\/IFS_Graphic_for_MA-1200x630-1-250x131.png 250w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/09\/IFS_Graphic_for_MA-1200x630-1-600x315.png 600w","file_sizes":"(max-width: 1200px) 100vw, 1200px","dimension":{"width":1200,"height":630},"download_link":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/09\/IFS_Graphic_for_MA-1200x630-1.png","data":{"id":1003983041,"title":"IFS_Graphic_for_M&A-1200x630","caption":"","description":"","gps":"N\/A","copyright":"N\/A","camera":"N\/A","date":"","lens":"N\/A","aperture":"N\/A","focal_length":"N\/A","iso":"N\/A","shutter_speed":"N\/A","keywords":"N\/A"}},"1003982967":{"success":true,"file":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/CrewCost-on-a-laptop-scaled.jpg","file_srcset":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/CrewCost-on-a-laptop-scaled.jpg 2560w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/CrewCost-on-a-laptop-300x225.jpg 300w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/CrewCost-on-a-laptop-1024x768.jpg 1024w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/CrewCost-on-a-laptop-768x576.jpg 768w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/CrewCost-on-a-laptop-1536x1152.jpg 1536w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/CrewCost-on-a-laptop-2048x1536.jpg 2048w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/CrewCost-on-a-laptop-250x188.jpg 250w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/CrewCost-on-a-laptop-533x400.jpg 533w","file_sizes":"(max-width: 2560px) 100vw, 2560px","dimension":{"width":2560,"height":1920},"download_link":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/CrewCost-on-a-laptop-scaled.jpg","data":{"id":1003982967,"title":"CrewCost on a laptop","caption":"(Photo courtesy of CrewCost)","description":"","gps":"N\/A","copyright":"N\/A","camera":"N\/A","date":"","lens":"N\/A","aperture":"N\/A","focal_length":"N\/A","iso":"N\/A","shutter_speed":"N\/A","keywords":"N\/A"}},"1003982858":{"success":true,"file":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/devices-scaled.jpg","file_srcset":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/devices-scaled.jpg 2560w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/devices-300x177.jpg 300w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/devices-1024x605.jpg 1024w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/devices-768x454.jpg 768w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/devices-1536x908.jpg 1536w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/devices-2048x1210.jpg 2048w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/devices-370x218.jpg 370w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/devices-250x148.jpg 250w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/devices-600x355.jpg 600w","file_sizes":"(max-width: 2560px) 100vw, 2560px","dimension":{"width":2560,"height":1513},"download_link":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/devices-scaled.jpg","data":{"id":1003982858,"title":"devices","caption":"(Photo courtesy of Buildots)","description":"","gps":"N\/A","copyright":"N\/A","camera":"N\/A","date":"","lens":"N\/A","aperture":"N\/A","focal_length":"N\/A","iso":"N\/A","shutter_speed":"N\/A","keywords":"N\/A"}},"1003982855":{"success":true,"file":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/GettyImages-1487278371-scaled.jpg","file_srcset":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/GettyImages-1487278371-scaled.jpg 2560w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/GettyImages-1487278371-300x200.jpg 300w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/GettyImages-1487278371-1024x683.jpg 1024w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/GettyImages-1487278371-768x512.jpg 768w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/GettyImages-1487278371-1536x1024.jpg 1536w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/GettyImages-1487278371-2048x1365.jpg 2048w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/GettyImages-1487278371-270x180.jpg 270w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/GettyImages-1487278371-250x167.jpg 250w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/GettyImages-1487278371-600x400.jpg 600w","file_sizes":"(max-width: 2560px) 100vw, 2560px","dimension":{"width":2560,"height":1707},"download_link":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/GettyImages-1487278371-scaled.jpg","data":{"id":1003982855,"title":"Professional industry engineer and factory foreman worker team person Wearing safety helmet hard hat, Technician people teamwork in work site of business construction and manufacturing technology job","caption":"(Photo: greenleaf123 \/ iStock \/ Getty Images Plus)","description":"","gps":"N\/A","copyright":"CHUANCHAI PUNDEJ","camera":"ILCE-9","date":"February 20, 2022 - 10:45 am","lens":"85mm F1.4 DG DN | Art 020","aperture":"f\/1.4","focal_length":"85mm","iso":"ISO 100","shutter_speed":"1\/800","keywords":"N\/A"}},"1003982813":{"success":true,"file":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/Asset_Tag_Hardware-scaled.jpg","file_srcset":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/Asset_Tag_Hardware-scaled.jpg 2560w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/Asset_Tag_Hardware-300x259.jpg 300w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/Asset_Tag_Hardware-1024x885.jpg 1024w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/Asset_Tag_Hardware-768x663.jpg 768w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/Asset_Tag_Hardware-1536x1327.jpg 1536w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/Asset_Tag_Hardware-2048x1769.jpg 2048w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/Asset_Tag_Hardware-232x200.jpg 232w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/Asset_Tag_Hardware-463x400.jpg 463w","file_sizes":"(max-width: 2560px) 100vw, 2560px","dimension":{"width":2560,"height":2211},"download_link":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/08\/Asset_Tag_Hardware-scaled.jpg","data":{"id":1003982813,"title":"Asset_Tag_Hardware","caption":"(Photo courtesy of Samsara)","description":"","gps":"N\/A","copyright":"N\/A","camera":"N\/A","date":"","lens":"N\/A","aperture":"N\/A","focal_length":"N\/A","iso":"N\/A","shutter_speed":"N\/A","keywords":"N\/A"}},"1003982760":{"success":true,"file":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/07\/DokaXact-Load-Sensor.jpg","file_srcset":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/07\/DokaXact-Load-Sensor.jpg 1680w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/07\/DokaXact-Load-Sensor-300x169.jpg 300w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/07\/DokaXact-Load-Sensor-1024x576.jpg 1024w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/07\/DokaXact-Load-Sensor-768x432.jpg 768w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/07\/DokaXact-Load-Sensor-1536x864.jpg 1536w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/07\/DokaXact-Load-Sensor-250x141.jpg 250w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/07\/DokaXact-Load-Sensor-600x338.jpg 600w","file_sizes":"(max-width: 1680px) 100vw, 1680px","dimension":{"width":1680,"height":945},"download_link":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/07\/DokaXact-Load-Sensor.jpg","data":{"id":1003982760,"title":"DokaXact Load-Sensor","caption":"(Photo courtesy of Doka)","description":"","gps":"N\/A","copyright":"N\/A","camera":"N\/A","date":"","lens":"N\/A","aperture":"N\/A","focal_length":"N\/A","iso":"N\/A","shutter_speed":"N\/A","keywords":"N\/A"}},"1003982720":{"success":true,"file":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/07\/0d256983-3f02-4e26-ae06-f1e68bbdd4b0.jpg","file_srcset":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/07\/0d256983-3f02-4e26-ae06-f1e68bbdd4b0.jpg 1000w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/07\/0d256983-3f02-4e26-ae06-f1e68bbdd4b0-300x200.jpg 300w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/07\/0d256983-3f02-4e26-ae06-f1e68bbdd4b0-768x512.jpg 768w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/07\/0d256983-3f02-4e26-ae06-f1e68bbdd4b0-270x180.jpg 270w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/07\/0d256983-3f02-4e26-ae06-f1e68bbdd4b0-250x167.jpg 250w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/07\/0d256983-3f02-4e26-ae06-f1e68bbdd4b0-600x400.jpg 600w","file_sizes":"(max-width: 1000px) 100vw, 1000px","dimension":{"width":1000,"height":667},"download_link":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/07\/0d256983-3f02-4e26-ae06-f1e68bbdd4b0.jpg","data":{"id":1003982720,"title":"0d256983-3f02-4e26-ae06-f1e68bbdd4b0","caption":"(Photo courtesy of HCSS)","description":"","gps":"N\/A","copyright":"N\/A","camera":"N\/A","date":"","lens":"N\/A","aperture":"N\/A","focal_length":"N\/A","iso":"N\/A","shutter_speed":"N\/A","keywords":"N\/A"}},"1003982577":{"success":true,"file":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/07\/Hexagon-Logo.jpeg","file_srcset":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/07\/Hexagon-Logo.jpeg 1380w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/07\/Hexagon-Logo-300x124.jpeg 300w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/07\/Hexagon-Logo-1024x424.jpeg 1024w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/07\/Hexagon-Logo-768x318.jpeg 768w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/07\/Hexagon-Logo-250x104.jpeg 250w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/07\/Hexagon-Logo-600x249.jpeg 600w","file_sizes":"(max-width: 1380px) 100vw, 1380px","dimension":{"width":1380,"height":572},"download_link":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/07\/Hexagon-Logo.jpeg","data":{"id":1003982577,"title":"Print","caption":"","description":"","gps":"N\/A","copyright":"N\/A","camera":"N\/A","date":"","lens":"N\/A","aperture":"N\/A","focal_length":"N\/A","iso":"N\/A","shutter_speed":"N\/A","keywords":"N\/A"}},"1003979465":{"success":true,"file":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2023\/05\/Ontario-Icon.jpeg","file_srcset":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2023\/05\/Ontario-Icon.jpeg 500w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2023\/05\/Ontario-Icon-300x300.jpeg 300w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2023\/05\/Ontario-Icon-200x200.jpeg 200w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2023\/05\/Ontario-Icon-400x400.jpeg 400w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2023\/05\/Ontario-Icon-120x120.jpeg 120w","file_sizes":"(max-width: 500px) 100vw, 500px","dimension":{"width":500,"height":500},"download_link":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2023\/05\/Ontario-Icon.jpeg","data":{"id":1003979465,"title":"Ontario Icon","caption":"","description":"","gps":"N\/A","copyright":"N\/A","camera":"N\/A","date":"","lens":"N\/A","aperture":"N\/A","focal_length":"N\/A","iso":"N\/A","shutter_speed":"N\/A","keywords":"N\/A"}},"1003982383":{"success":true,"file":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/06\/20240604_Pressemitteilung_gocanva_final-scaled.jpg","file_srcset":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/06\/20240604_Pressemitteilung_gocanva_final-scaled.jpg 2560w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/06\/20240604_Pressemitteilung_gocanva_final-300x62.jpg 300w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/06\/20240604_Pressemitteilung_gocanva_final-1024x212.jpg 1024w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/06\/20240604_Pressemitteilung_gocanva_final-768x159.jpg 768w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/06\/20240604_Pressemitteilung_gocanva_final-1536x318.jpg 1536w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/06\/20240604_Pressemitteilung_gocanva_final-2048x424.jpg 2048w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/06\/20240604_Pressemitteilung_gocanva_final-250x52.jpg 250w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/06\/20240604_Pressemitteilung_gocanva_final-600x124.jpg 600w","file_sizes":"(max-width: 2560px) 100vw, 2560px","dimension":{"width":2560,"height":530},"download_link":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/06\/20240604_Pressemitteilung_gocanva_final-scaled.jpg","data":{"id":1003982383,"title":"20240604_Pressemitteilung_gocanva_final","caption":"(Image courtesy of Nemetschek Group)","description":"","gps":"N\/A","copyright":"N\/A","camera":"N\/A","date":"","lens":"N\/A","aperture":"N\/A","focal_length":"N\/A","iso":"N\/A","shutter_speed":"N\/A","keywords":"N\/A"}},"1003982318":{"success":true,"file":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/2b5ea0a5-828e-4f1b-b5ea-e7a965b9aeaa.jpg","file_srcset":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/2b5ea0a5-828e-4f1b-b5ea-e7a965b9aeaa.jpg 700w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/2b5ea0a5-828e-4f1b-b5ea-e7a965b9aeaa-300x200.jpg 300w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/2b5ea0a5-828e-4f1b-b5ea-e7a965b9aeaa-270x180.jpg 270w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/2b5ea0a5-828e-4f1b-b5ea-e7a965b9aeaa-250x167.jpg 250w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/2b5ea0a5-828e-4f1b-b5ea-e7a965b9aeaa-600x400.jpg 600w","file_sizes":"(max-width: 700px) 100vw, 700px","dimension":{"width":700,"height":467},"download_link":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/2b5ea0a5-828e-4f1b-b5ea-e7a965b9aeaa.jpg","data":{"id":1003982318,"title":"2b5ea0a5-828e-4f1b-b5ea-e7a965b9aeaa","caption":"(Photo courtesy of HCSS)","description":"","gps":"N\/A","copyright":"N\/A","camera":"N\/A","date":"","lens":"N\/A","aperture":"N\/A","focal_length":"N\/A","iso":"N\/A","shutter_speed":"N\/A","keywords":"N\/A"}},"1003982238":{"success":true,"file":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/IFS_AI.png","file_srcset":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/IFS_AI.png 930w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/IFS_AI-300x136.png 300w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/IFS_AI-768x349.png 768w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/IFS_AI-250x114.png 250w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/IFS_AI-600x273.png 600w","file_sizes":"(max-width: 930px) 100vw, 930px","dimension":{"width":930,"height":423},"download_link":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/IFS_AI.png","data":{"id":1003982238,"title":"IFS_AI","caption":"(Image courtesy of IFS)","description":"","gps":"N\/A","copyright":"N\/A","camera":"N\/A","date":"","lens":"N\/A","aperture":"N\/A","focal_length":"N\/A","iso":"N\/A","shutter_speed":"N\/A","keywords":"N\/A"}},"1003982219":{"success":true,"file":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/Buildots-Delay-Forecast-scaled.jpg","file_srcset":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/Buildots-Delay-Forecast-scaled.jpg 2560w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/Buildots-Delay-Forecast-300x164.jpg 300w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/Buildots-Delay-Forecast-1024x561.jpg 1024w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/Buildots-Delay-Forecast-768x421.jpg 768w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/Buildots-Delay-Forecast-1536x842.jpg 1536w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/Buildots-Delay-Forecast-2048x1122.jpg 2048w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/Buildots-Delay-Forecast-250x137.jpg 250w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/Buildots-Delay-Forecast-600x329.jpg 600w","file_sizes":"(max-width: 2560px) 100vw, 2560px","dimension":{"width":2560,"height":1403},"download_link":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/Buildots-Delay-Forecast-scaled.jpg","data":{"id":1003982219,"title":"Buildots-Delay Forecast","caption":"(Image courtesy of Buildots)","description":"","gps":"N\/A","copyright":"N\/A","camera":"N\/A","date":"","lens":"N\/A","aperture":"N\/A","focal_length":"N\/A","iso":"N\/A","shutter_speed":"N\/A","keywords":"N\/A"}},"1003982179":{"success":true,"file":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/MY-DEVELON-graphic.png","file_srcset":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/MY-DEVELON-graphic.png 1856w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/MY-DEVELON-graphic-300x278.png 300w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/MY-DEVELON-graphic-1024x949.png 1024w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/MY-DEVELON-graphic-768x712.png 768w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/MY-DEVELON-graphic-1536x1423.png 1536w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/MY-DEVELON-graphic-216x200.png 216w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/MY-DEVELON-graphic-432x400.png 432w","file_sizes":"(max-width: 1856px) 100vw, 1856px","dimension":{"width":1856,"height":1720},"download_link":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/05\/MY-DEVELON-graphic.png","data":{"id":1003982179,"title":"MY DEVELON graphic","caption":"(Photo courtesy of Develon)","description":"","gps":"N\/A","copyright":"N\/A","camera":"N\/A","date":"","lens":"N\/A","aperture":"N\/A","focal_length":"N\/A","iso":"N\/A","shutter_speed":"N\/A","keywords":"N\/A"}},"1003983411":{"success":true,"file":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/10\/OS_Survey_Twitter_Oct24_GWJ.jpg","file_srcset":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/10\/OS_Survey_Twitter_Oct24_GWJ.jpg 506w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/10\/OS_Survey_Twitter_Oct24_GWJ-300x150.jpg 300w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/10\/OS_Survey_Twitter_Oct24_GWJ-250x125.jpg 250w","file_sizes":"(max-width: 506px) 100vw, 506px","dimension":{"width":506,"height":253},"download_link":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/10\/OS_Survey_Twitter_Oct24_GWJ.jpg","data":{"id":1003983411,"title":"OS_Survey_Twitter_Oct24_GWJ","caption":"","description":"","gps":"N\/A","copyright":"N\/A","camera":"N\/A","date":"","lens":"N\/A","aperture":"N\/A","focal_length":"N\/A","iso":"N\/A","shutter_speed":"N\/A","keywords":"N\/A"}},"1003981756":{"success":true,"file":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/03\/InfrastructureReportButton24.jpg","file_srcset":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/03\/InfrastructureReportButton24.jpg 300w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/03\/InfrastructureReportButton24-250x153.jpg 250w","file_sizes":"(max-width: 300px) 100vw, 300px","dimension":{"width":300,"height":183},"download_link":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/03\/InfrastructureReportButton24.jpg","data":{"id":1003981756,"title":"InfrastructureReportButton24","caption":"","description":"","gps":"N\/A","copyright":"N\/A","camera":"N\/A","date":"","lens":"N\/A","aperture":"N\/A","focal_length":"N\/A","iso":"N\/A","shutter_speed":"N\/A","keywords":"N\/A"}},"1003981388":{"success":true,"file":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/02\/2024-TechreportButton.jpg","file_srcset":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/02\/2024-TechreportButton.jpg 300w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/02\/2024-TechreportButton-250x153.jpg 250w","file_sizes":"(max-width: 300px) 100vw, 300px","dimension":{"width":300,"height":183},"download_link":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/02\/2024-TechreportButton.jpg","data":{"id":1003981388,"title":"2024 TechreportButton","caption":"","description":"","gps":"N\/A","copyright":"N\/A","camera":"N\/A","date":"","lens":"N\/A","aperture":"N\/A","focal_length":"N\/A","iso":"N\/A","shutter_speed":"N\/A","keywords":"N\/A"}},"1003983873":{"success":true,"file":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/OS_2025-Forecast.jpg","file_srcset":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/OS_2025-Forecast.jpg 300w, https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/OS_2025-Forecast-250x153.jpg 250w","file_sizes":"(max-width: 300px) 100vw, 300px","dimension":{"width":300,"height":183},"download_link":"https:\/\/www.on-sitemag.com\/wp-content\/uploads\/2024\/11\/OS_2025-Forecast.jpg","data":{"id":1003983873,"title":"OS_2025-Forecast","caption":"","description":"","gps":"N\/A","copyright":"N\/A","camera":"N\/A","date":"","lens":"N\/A","aperture":"N\/A","focal_length":"N\/A","iso":"N\/A","shutter_speed":"N\/A","keywords":"N\/A"}}}; </script> <!-- Google Tag Manager (noscript) --> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-5JTDLPD" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <!-- End Google Tag Manager (noscript) --> <div class="navbar header-shadow"> <!-- /17493223/AN_WelcomeTop --> <div style="width:100%;padding: 0px 0; "> <div id='div-gpt-ad-1680205143387-0' class="center-block text-center"> <script> googletag.cmd.push(function() { googletag.display('div-gpt-ad-1680205143387-0'); }); </script> </div> </div> <div class="topbox headerad"> <div id='div-gpt-ad-1587474480357-0' class="center-block text-center"> <script> googletag.cmd.push(function() { googletag.display('div-gpt-ad-1587474480357-0'); }); </script> </div> <!-- /17493223/AN_TOP_Leaderboard_Special/AN_TOP_Mobile_Special --> <div id='' class="center-block text-center"> </div> </div> <div class="logo-and-nav"> <div class="navbar navbar-default navbar"> <div class="container"> <div class="logo"> <a href="https://www.on-sitemag.com/" title="On-Site Magazine" rel="home"> <img src="https://www.on-sitemag.com/wp-content/uploads/2020/07/onsite-logo-web.png" alt="On-Site Magazine" class="img-resposnive"/> </a> </div> <div class="pull-right"> <ul class="list-inline pull-right text-right" style="margin-bottom: 0;margin-top:5px;"> <li><a href="https://twitter.com/OnSiteMag" target="_blank"><i class="fa fa-twitter"></i></a></li> <li><a href="https://www.facebook.com/OnSiteMag/" target="_blank"><i class="fa fa-facebook"></i> </a></li> <li><a href="https://ca.linkedin.com/company/on-site-magazine" target="_blank"><i class="fa fa-linkedin"></i></a> </li> </ul> <div class="clearfix"></div> <!-- Single button --> <div class="btn-group hidden-xs pull-right" style="margin-top:15px;"> <button type="button" class="btn btn-primary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <strong>Subscribe</strong> <span class="caret"></span> </button> <ul class="dropdown-menu"> <li><a class="dropdown-item" href="https://annex.dragonforms.com/loading.do?omedasite=OS_new" target="_blank">Magazine + Enews</a></li> <li><a class="dropdown-item" href="https://annex.dragonforms.com/loading.do?omedasite=OS_prefsnew" target="_blank">Enews</a></li> </ul> </div> <!-- Single button mobile --> <div class="btn-group visible-xs pull-right"> <button type="button" class="dropdowndsmall btn btn-primary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <strong>Subscribe</strong> <span class="caret"></span> </button> <ul class="dropdown-menu"> <li><a class="dropdown-item" href="https://annex.dragonforms.com/loading.do?omedasite=OS_new" target="_blank">Magazine + Enews</a></li> <li><a class="dropdown-item" href="https://annex.dragonforms.com/loading.do?omedasite=OS_prefsnew" target="_blank">ENews</a></li> </ul> </div> </div> </div> </div> <nav class="navbar navbar-inverse"> <div class="container"> <!-- mobile search --> <div class="xvisible-xs xvisible-s msearch1" style=""> <div class="asl_w_container asl_w_container_1"> <div id='ajaxsearchlite1' data-id="1" data-instance="1" class="asl_w asl_m asl_m_1 asl_m_1_1"> <div class="probox"> <div class='prosettings' style='display:none;' data-opened=0> <div class='innericon'> <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="22" height="22" viewbox="0 0 512 512" enable-background="new 0 0 512 512" xml:space="preserve"> <polygon transform = "rotate(90 256 256)" points="142.332,104.886 197.48,50 402.5,256 197.48,462 142.332,407.113 292.727,256 "/> </svg> </div> </div> <div class='proinput'> <form role="search" action='#' autocomplete="off" aria-label="Search form"> <input aria-label="Search input" type='search' class='orig' tabindex="0" name='phrase' placeholder='Search..' value='' autocomplete="off"/> <input aria-label="Search autocomplete input" type='text' class='autocomplete' tabindex="-1" name='phrase' value='' autocomplete="off" disabled> <input type='submit' value="Start search" style='width:0; height: 0; visibility: hidden;'> </form> </div> <button class='promagnifier' tabindex="0" aria-label="Search magnifier button"> <span class='innericon' style="display:block;"> <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="22" height="22" viewbox="0 0 512 512" enable-background="new 0 0 512 512" xml:space="preserve"> <path d="M460.355,421.59L353.844,315.078c20.041-27.553,31.885-61.437,31.885-98.037 C385.729,124.934,310.793,50,218.686,50C126.58,50,51.645,124.934,51.645,217.041c0,92.106,74.936,167.041,167.041,167.041 c34.912,0,67.352-10.773,94.184-29.158L419.945,462L460.355,421.59z M100.631,217.041c0-65.096,52.959-118.056,118.055-118.056 c65.098,0,118.057,52.959,118.057,118.056c0,65.096-52.959,118.056-118.057,118.056C153.59,335.097,100.631,282.137,100.631,217.041 z"/> </svg> </span> </button> <div class='proloading'> <div class="asl_loader"><div class="asl_loader-inner asl_simple-circle"></div></div> </div> <div class='proclose'> <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="12" height="12" viewbox="0 0 512 512" enable-background="new 0 0 512 512" xml:space="preserve"> <polygon points="438.393,374.595 319.757,255.977 438.378,137.348 374.595,73.607 255.995,192.225 137.375,73.622 73.607,137.352 192.246,255.983 73.622,374.625 137.352,438.393 256.002,319.734 374.652,438.378 "/> </svg> </div> </div> </div> <div class='asl_data_container' style="display:none !important;"> <div class="asl_init_data wpdreams_asl_data_ct" style="display:none !important;" id="asl_init_id_1" data-asl-id="1" data-asl-instance="1" data-asldata="ew0KCSJob21ldXJsIjogImh0dHBzOi8vd3d3Lm9uLXNpdGVtYWcuY29tLyIsDQoJInJlc3VsdHN0eXBlIjogInZlcnRpY2FsIiwNCgkicmVzdWx0c3Bvc2l0aW9uIjogImhvdmVyIiwNCgkiaXRlbXNjb3VudCI6IDQsDQoJImNoYXJjb3VudCI6ICAwLA0KCSJoaWdobGlnaHQiOiAwLA0KCSJoaWdobGlnaHR3aG9sZXdvcmRzIjogMSwNCgkic2luZ2xlSGlnaGxpZ2h0IjogMCwNCgkic2Nyb2xsVG9SZXN1bHRzIjogew0KCQkiZW5hYmxlZCI6IDAsDQoJCSJvZmZzZXQiOiAwDQoJfSwNCgkicmVzdWx0YXJlYWNsaWNrYWJsZSI6IDEsDQoJImF1dG9jb21wbGV0ZSI6IHsNCgkJImVuYWJsZWQiIDogMSwNCgkJImxhbmciIDogImVuIiwNCgkJInRyaWdnZXJfY2hhcmNvdW50IiA6IDANCgl9LA0KCSJtb2JpbGUiOiB7DQoJCSJtZW51X3NlbGVjdG9yIjogIiNtZW51LXRvZ2dsZSINCgl9LA0KCSJ0cmlnZ2VyIjogew0KCQkiY2xpY2siOiAicmVzdWx0c19wYWdlIiwNCgkJImNsaWNrX2xvY2F0aW9uIjogInNhbWUiLA0KCQkidXBkYXRlX2hyZWYiOiAwLA0KCQkicmV0dXJuIjogInJlc3VsdHNfcGFnZSIsDQoJCSJyZXR1cm5fbG9jYXRpb24iOiAic2FtZSIsDQoJCSJmYWNldCI6IDEsDQoJCSJ0eXBlIjogMSwNCgkJInJlZGlyZWN0X3VybCI6ICI/cz17cGhyYXNlfSIsDQoJCSJkZWxheSI6IDMwMA0KCX0sDQogICAgImFuaW1hdGlvbnMiOiB7DQogICAgICAgICJwYyI6IHsNCiAgICAgICAgICAgICJzZXR0aW5ncyI6IHsNCiAgICAgICAgICAgICAgICAiYW5pbSIgOiAiZmFkZWRyb3AiLA0KICAgICAgICAgICAgICAgICJkdXIiICA6IDMwMA0KICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICJyZXN1bHRzIiA6IHsNCgkJCQkiYW5pbSIgOiAiZmFkZWRyb3AiLA0KCQkJCSJkdXIiICA6IDMwMA0KICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICJpdGVtcyIgOiAidm9pZGFuaW0iDQogICAgICAgIH0sDQogICAgICAgICJtb2IiOiB7DQogICAgICAgICAgICAic2V0dGluZ3MiOiB7DQogICAgICAgICAgICAgICAgImFuaW0iIDogImZhZGVkcm9wIiwNCiAgICAgICAgICAgICAgICAiZHVyIiAgOiAzMDANCiAgICAgICAgICAgIH0sDQogICAgICAgICAgICAicmVzdWx0cyIgOiB7DQoJCQkJImFuaW0iIDogImZhZGVkcm9wIiwNCgkJCQkiZHVyIiAgOiAzMDANCiAgICAgICAgICAgIH0sDQogICAgICAgICAgICAiaXRlbXMiIDogInZvaWRhbmltIg0KICAgICAgICB9DQogICAgfSwNCgkiYXV0b3AiOiB7DQoJCSJzdGF0ZSI6ICJkaXNhYmxlZCIsDQoJCSJwaHJhc2UiOiAiIiwNCgkJImNvdW50IjogMQl9LA0KICAgICJyZXNQYWdlIjogew0KICAgICAgICAidXNlQWpheCI6IDAsDQogICAgICAgICJzZWxlY3RvciI6ICIjbWFpbiIsDQogICAgICAgICJ0cmlnZ2VyX3R5cGUiOiAxLA0KICAgICAgICAidHJpZ2dlcl9mYWNldCI6IDEsDQogICAgICAgICJ0cmlnZ2VyX21hZ25pZmllciI6IDAsDQogICAgICAgICJ0cmlnZ2VyX3JldHVybiI6IDAgICAgfSwNCgkicmVzdWx0c1NuYXBUbyI6ICJsZWZ0IiwNCiAgICAicmVzdWx0cyI6IHsNCiAgICAgICAgIndpZHRoIjogImF1dG8iLA0KICAgICAgICAid2lkdGhfdGFibGV0IjogImF1dG8iLA0KICAgICAgICAid2lkdGhfcGhvbmUiOiAiYXV0byINCiAgICB9LA0KCSJzZXR0aW5nc2ltYWdlcG9zIjogInJpZ2h0IiwNCgkiY2xvc2VPbkRvY0NsaWNrIjogMSwNCgkib3ZlcnJpZGV3cGRlZmF1bHQiOiAwLA0KCSJvdmVycmlkZV9tZXRob2QiOiAiZ2V0Ig0KfQ0K"></div> <div id="asl_hidden_data"> <svg style="position:absolute" height="0" width="0"> <filter id="aslblur"> <fegaussianblur in="SourceGraphic" stddeviation="4"/> </filter> </svg> <svg style="position:absolute" height="0" width="0"> <filter id="no_aslblur"></filter> </svg> </div> </div> <div id='ajaxsearchliteres1' class='vertical wpdreams_asl_results asl_w asl_r asl_r_1 asl_r_1_1'> <div class="results"> <div class="resdrg"> </div> </div> </div> <div id='__original__ajaxsearchlitesettings1' data-id="1" class="searchsettings wpdreams_asl_settings asl_w asl_s asl_s_1"> <form name='options' aria-label="Search settings form" autocomplete = 'off'> <input type="hidden" name="filters_changed" style="display:none;" value="0"> <input type="hidden" name="filters_initial" style="display:none;" value="1"> <div class="asl_option_inner hiddend"> <input type='hidden' name='qtranslate_lang' id='qtranslate_lang1' value='0'/> </div> <fieldset class="asl_sett_scroll"> <legend style="display: none;">Generic selectors</legend> <div class="asl_option" tabindex="0"> <div class="asl_option_inner"> <input type="checkbox" value="exact" aria-label="Exact matches only" name="asl_gen[]" /> <div class="asl_option_checkbox"></div> </div> <div class="asl_option_label"> Exact matches only </div> </div> <div class="asl_option" tabindex="0"> <div class="asl_option_inner"> <input type="checkbox" value="title" aria-label="Search in title" name="asl_gen[]" checked="checked"/> <div class="asl_option_checkbox"></div> </div> <div class="asl_option_label"> Search in title </div> </div> <div class="asl_option" tabindex="0"> <div class="asl_option_inner"> <input type="checkbox" value="content" aria-label="Search in content" name="asl_gen[]" checked="checked"/> <div class="asl_option_checkbox"></div> </div> <div class="asl_option_label"> Search in content </div> </div> <div class="asl_option_inner hiddend"> <input type="checkbox" value="excerpt" aria-label="Search in excerpt" name="asl_gen[]" checked="checked"/> <div class="asl_option_checkbox"></div> </div> </fieldset> <fieldset class="asl_sett_scroll"> <legend style="display: none;">Post Type Selectors</legend> <div class="asl_option" tabindex="0"> <div class="asl_option_inner"> <input type="checkbox" value="post" aria-label="Search in posts" name="customset[]" checked="checked"/> <div class="asl_option_checkbox"></div> </div> <div class="asl_option_label"> Search in posts </div> </div> <div class="asl_option" tabindex="0"> <div class="asl_option_inner"> <input type="checkbox" value="page" aria-label="Search in pages" name="customset[]" checked="checked"/> <div class="asl_option_checkbox"></div> </div> <div class="asl_option_label"> Search in pages </div> </div> </fieldset> </form> </div> </div> </div> <!-- mobile search end --> <ul class="nav navbar-nav"> <li> <a href="#" id="btn-menu" title="Click to show site navigation"> <i class="fa fa-bars"></i> Menu </a> </li> </ul> <div class="navbar-collapse collapse"> <ul id="menu-magazine" class="nav navbar-nav"><li id="menu-item-1003969131" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1003969131"><a href="https://www.on-sitemag.com/news/">News</a></li> <li id="menu-item-1003969132" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1003969132"><a href="/features">Articles</a></li> <li id="menu-item-1003969133" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1003969133"><a href="/products">Products</a></li> <li id="menu-item-1003969135" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1003969135"><a href="/on-your-radar">On Your Radar</a></li> <li id="menu-item-1003971100" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children dropdown menu-item-1003971100"><a href="#" class="dropdown-toggle" data-toggle="dropdown">Reports & Awards <b class="caret"></b></a> <ul class="dropdown-menu"> <li id="menu-item-1003971102" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1003971102"><a href="https://www.on-sitemag.com/40-under-40/">40 Under 40</a></li> <li id="menu-item-1003971105" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1003971105"><a href="https://www.on-sitemag.com/technology-report/">Technology Report</a></li> <li id="menu-item-1003971103" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1003971103"><a href="https://www.on-sitemag.com/construction-forecast/">Construction Forecast</a></li> <li id="menu-item-1003971104" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1003971104"><a href="https://www.on-sitemag.com/infrastructure-report/">Infrastructure Report</a></li> <li id="menu-item-1003971106" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1003971106"><a href="https://www.on-sitemag.com/top-contractors/">Top Contractors</a></li> <li id="menu-item-1003973452" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1003973452"><a href="https://www.on-sitemag.com/smart-buildings/">Smart Buildings</a></li> </ul> </li> <li id="menu-item-1003972572" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1003972572"><a target="_blank" href="https://www.constructionjobsite.ca/">Job Board</a></li> <li id="menu-item-1003978546" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children dropdown menu-item-1003978546"><a href="#" class="dropdown-toggle" data-toggle="dropdown">Events <b class="caret"></b></a> <ul class="dropdown-menu"> <li id="menu-item-1003982653" class="menu-item menu-item-type-post_type menu-item-object-virtual-event menu-item-1003982653"><a href="https://www.on-sitemag.com/virtual-events/on-site-40-under-40-symposium-2024/">40 Under 40 Symposium 2024</a></li> <li id="menu-item-1003978547" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1003978547"><a target="_blank" href="https://www.women-in-construction.ca/virtual-events/women-in-construction-2024/">Women in Construction 2024</a></li> <li id="menu-item-1003982654" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1003982654"><a target="_blank" href="https://www.hpacmag.com/virtual-events/pursuing-dei-enhancing-your-workforce-and-community/">DEI</a></li> </ul> </li> <li id="menu-item-1003969130" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children dropdown menu-item-1003969130"><a href="#" class="dropdown-toggle" data-toggle="dropdown">Magazine <b class="caret"></b></a> <ul class="dropdown-menu"> <li id="menu-item-1003969124" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1003969124"><a href="https://www.on-sitemag.com/digital-edition/">Digital Edition</a></li> <li id="menu-item-1003978807" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1003978807"><a href="https://www.on-sitemag.com/photo-contest/">Photo Contest</a></li> <li id="menu-item-1003969129" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1003969129"><a href="https://www.on-sitemag.com/digital-archives/">Archives</a></li> <li id="menu-item-1003969125" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1003969125"><a href="https://www.on-sitemag.com/newsletter-archive/">E-News</a></li> <li id="menu-item-1003969127" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1003969127"><a href="https://www.on-sitemag.com/contacts/">Contacts</a></li> <li id="menu-item-1003969128" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1003969128"><a href="https://www.on-sitemag.com/advertise/">Advertise</a></li> <li id="menu-item-1003969126" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1003969126"><a href="https://www.on-sitemag.com/subscribe/">Subscribe</a></li> </ul> </li> </ul> <div class="search-bar-header"> <div class="asl_w_container asl_w_container_2"> <div id='ajaxsearchlite2' data-id="2" data-instance="1" class="asl_w asl_m asl_m_2 asl_m_2_1"> <div class="probox"> <div class='prosettings' style='display:none;' data-opened=0> <div class='innericon'> <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="22" height="22" viewbox="0 0 512 512" enable-background="new 0 0 512 512" xml:space="preserve"> <polygon transform = "rotate(90 256 256)" points="142.332,104.886 197.48,50 402.5,256 197.48,462 142.332,407.113 292.727,256 "/> </svg> </div> </div> <div class='proinput'> <form role="search" action='#' autocomplete="off" aria-label="Search form"> <input aria-label="Search input" type='search' class='orig' tabindex="0" name='phrase' placeholder='Search..' value='' autocomplete="off"/> <input aria-label="Search autocomplete input" type='text' class='autocomplete' tabindex="-1" name='phrase' value='' autocomplete="off" disabled> <input type='submit' value="Start search" style='width:0; height: 0; visibility: hidden;'> </form> </div> <button class='promagnifier' tabindex="0" aria-label="Search magnifier button"> <span class='innericon' style="display:block;"> <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="22" height="22" viewbox="0 0 512 512" enable-background="new 0 0 512 512" xml:space="preserve"> <path d="M460.355,421.59L353.844,315.078c20.041-27.553,31.885-61.437,31.885-98.037 C385.729,124.934,310.793,50,218.686,50C126.58,50,51.645,124.934,51.645,217.041c0,92.106,74.936,167.041,167.041,167.041 c34.912,0,67.352-10.773,94.184-29.158L419.945,462L460.355,421.59z M100.631,217.041c0-65.096,52.959-118.056,118.055-118.056 c65.098,0,118.057,52.959,118.057,118.056c0,65.096-52.959,118.056-118.057,118.056C153.59,335.097,100.631,282.137,100.631,217.041 z"/> </svg> </span> </button> <div class='proloading'> <div class="asl_loader"><div class="asl_loader-inner asl_simple-circle"></div></div> </div> <div class='proclose'> <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="12" height="12" viewbox="0 0 512 512" enable-background="new 0 0 512 512" xml:space="preserve"> <polygon points="438.393,374.595 319.757,255.977 438.378,137.348 374.595,73.607 255.995,192.225 137.375,73.622 73.607,137.352 192.246,255.983 73.622,374.625 137.352,438.393 256.002,319.734 374.652,438.378 "/> </svg> </div> </div> </div> <div class='asl_data_container' style="display:none !important;"> <div class="asl_init_data wpdreams_asl_data_ct" style="display:none !important;" id="asl_init_id_2" data-asl-id="2" data-asl-instance="1" data-asldata="ew0KCSJob21ldXJsIjogImh0dHBzOi8vd3d3Lm9uLXNpdGVtYWcuY29tLyIsDQoJInJlc3VsdHN0eXBlIjogInZlcnRpY2FsIiwNCgkicmVzdWx0c3Bvc2l0aW9uIjogImhvdmVyIiwNCgkiaXRlbXNjb3VudCI6IDQsDQoJImNoYXJjb3VudCI6ICAwLA0KCSJoaWdobGlnaHQiOiAwLA0KCSJoaWdobGlnaHR3aG9sZXdvcmRzIjogMSwNCgkic2luZ2xlSGlnaGxpZ2h0IjogMCwNCgkic2Nyb2xsVG9SZXN1bHRzIjogew0KCQkiZW5hYmxlZCI6IDAsDQoJCSJvZmZzZXQiOiAwDQoJfSwNCgkicmVzdWx0YXJlYWNsaWNrYWJsZSI6IDEsDQoJImF1dG9jb21wbGV0ZSI6IHsNCgkJImVuYWJsZWQiIDogMSwNCgkJImxhbmciIDogImVuIiwNCgkJInRyaWdnZXJfY2hhcmNvdW50IiA6IDANCgl9LA0KCSJtb2JpbGUiOiB7DQoJCSJtZW51X3NlbGVjdG9yIjogIiNtZW51LXRvZ2dsZSINCgl9LA0KCSJ0cmlnZ2VyIjogew0KCQkiY2xpY2siOiAicmVzdWx0c19wYWdlIiwNCgkJImNsaWNrX2xvY2F0aW9uIjogInNhbWUiLA0KCQkidXBkYXRlX2hyZWYiOiAwLA0KCQkicmV0dXJuIjogInJlc3VsdHNfcGFnZSIsDQoJCSJyZXR1cm5fbG9jYXRpb24iOiAic2FtZSIsDQoJCSJmYWNldCI6IDEsDQoJCSJ0eXBlIjogMSwNCgkJInJlZGlyZWN0X3VybCI6ICI/cz17cGhyYXNlfSIsDQoJCSJkZWxheSI6IDMwMA0KCX0sDQogICAgImFuaW1hdGlvbnMiOiB7DQogICAgICAgICJwYyI6IHsNCiAgICAgICAgICAgICJzZXR0aW5ncyI6IHsNCiAgICAgICAgICAgICAgICAiYW5pbSIgOiAiZmFkZWRyb3AiLA0KICAgICAgICAgICAgICAgICJkdXIiICA6IDMwMA0KICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICJyZXN1bHRzIiA6IHsNCgkJCQkiYW5pbSIgOiAiZmFkZWRyb3AiLA0KCQkJCSJkdXIiICA6IDMwMA0KICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICJpdGVtcyIgOiAidm9pZGFuaW0iDQogICAgICAgIH0sDQogICAgICAgICJtb2IiOiB7DQogICAgICAgICAgICAic2V0dGluZ3MiOiB7DQogICAgICAgICAgICAgICAgImFuaW0iIDogImZhZGVkcm9wIiwNCiAgICAgICAgICAgICAgICAiZHVyIiAgOiAzMDANCiAgICAgICAgICAgIH0sDQogICAgICAgICAgICAicmVzdWx0cyIgOiB7DQoJCQkJImFuaW0iIDogImZhZGVkcm9wIiwNCgkJCQkiZHVyIiAgOiAzMDANCiAgICAgICAgICAgIH0sDQogICAgICAgICAgICAiaXRlbXMiIDogInZvaWRhbmltIg0KICAgICAgICB9DQogICAgfSwNCgkiYXV0b3AiOiB7DQoJCSJzdGF0ZSI6ICJkaXNhYmxlZCIsDQoJCSJwaHJhc2UiOiAiIiwNCgkJImNvdW50IjogMQl9LA0KICAgICJyZXNQYWdlIjogew0KICAgICAgICAidXNlQWpheCI6IDAsDQogICAgICAgICJzZWxlY3RvciI6ICIjbWFpbiIsDQogICAgICAgICJ0cmlnZ2VyX3R5cGUiOiAxLA0KICAgICAgICAidHJpZ2dlcl9mYWNldCI6IDEsDQogICAgICAgICJ0cmlnZ2VyX21hZ25pZmllciI6IDAsDQogICAgICAgICJ0cmlnZ2VyX3JldHVybiI6IDAgICAgfSwNCgkicmVzdWx0c1NuYXBUbyI6ICJsZWZ0IiwNCiAgICAicmVzdWx0cyI6IHsNCiAgICAgICAgIndpZHRoIjogImF1dG8iLA0KICAgICAgICAid2lkdGhfdGFibGV0IjogImF1dG8iLA0KICAgICAgICAid2lkdGhfcGhvbmUiOiAiYXV0byINCiAgICB9LA0KCSJzZXR0aW5nc2ltYWdlcG9zIjogInJpZ2h0IiwNCgkiY2xvc2VPbkRvY0NsaWNrIjogMSwNCgkib3ZlcnJpZGV3cGRlZmF1bHQiOiAwLA0KCSJvdmVycmlkZV9tZXRob2QiOiAiZ2V0Ig0KfQ0K"></div> </div> <div id='ajaxsearchliteres2' class='vertical wpdreams_asl_results asl_w asl_r asl_r_2 asl_r_2_1'> <div class="results"> <div class="resdrg"> </div> </div> </div> <div id='__original__ajaxsearchlitesettings2' data-id="2" class="searchsettings wpdreams_asl_settings asl_w asl_s asl_s_2"> <form name='options' aria-label="Search settings form" autocomplete = 'off'> <input type="hidden" name="filters_changed" style="display:none;" value="0"> <input type="hidden" name="filters_initial" style="display:none;" value="1"> <div class="asl_option_inner hiddend"> <input type='hidden' name='qtranslate_lang' id='qtranslate_lang2' value='0'/> </div> <fieldset class="asl_sett_scroll"> <legend style="display: none;">Generic selectors</legend> <div class="asl_option" tabindex="0"> <div class="asl_option_inner"> <input type="checkbox" value="exact" aria-label="Exact matches only" name="asl_gen[]" /> <div class="asl_option_checkbox"></div> </div> <div class="asl_option_label"> Exact matches only </div> </div> <div class="asl_option" tabindex="0"> <div class="asl_option_inner"> <input type="checkbox" value="title" aria-label="Search in title" name="asl_gen[]" checked="checked"/> <div class="asl_option_checkbox"></div> </div> <div class="asl_option_label"> Search in title </div> </div> <div class="asl_option" tabindex="0"> <div class="asl_option_inner"> <input type="checkbox" value="content" aria-label="Search in content" name="asl_gen[]" checked="checked"/> <div class="asl_option_checkbox"></div> </div> <div class="asl_option_label"> Search in content </div> </div> <div class="asl_option_inner hiddend"> <input type="checkbox" value="excerpt" aria-label="Search in excerpt" name="asl_gen[]" checked="checked"/> <div class="asl_option_checkbox"></div> </div> </fieldset> <fieldset class="asl_sett_scroll"> <legend style="display: none;">Post Type Selectors</legend> <div class="asl_option" tabindex="0"> <div class="asl_option_inner"> <input type="checkbox" value="post" aria-label="Search in posts" name="customset[]" checked="checked"/> <div class="asl_option_checkbox"></div> </div> <div class="asl_option_label"> Search in posts </div> </div> <div class="asl_option" tabindex="0"> <div class="asl_option_inner"> <input type="checkbox" value="page" aria-label="Search in pages" name="customset[]" checked="checked"/> <div class="asl_option_checkbox"></div> </div> <div class="asl_option_label"> Search in pages </div> </div> </fieldset> </form> </div> </div> </div> </div> </div> </nav> </div> <!-- /logo-and-nav --> </div> <!--------------------------------------------------------------------------------------> <div id="mega-menu" style="display:none;"> <a href="#" id="closemenu" style="position:absolute; top:5px; right:25px; color:#fff;font-size:34px;margin-bottom:10px; z-index: 1000;">×</a> <div class="container"> <div class="row"> <div class="col-sm-3"> <h4>Explore</h4> <div class="menu-main-menu-container"><ul id="menu-main-menu" class="menu"><li id="menu-item-1003736360" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1003736360"><a href="https://www.on-sitemag.com/news/">News</a></li> <li id="menu-item-1003736361" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1003736361"><a href="/features">Articles</a></li> <li id="menu-item-1003736362" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1003736362"><a href="/products">Products</a></li> <li id="menu-item-1003736363" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1003736363"><a href="/events">Events</a></li> <li id="menu-item-1003956979" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1003956979"><a href="/on-your-radar">On Your Radar</a></li> <li id="menu-item-1003969115" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1003969115"><a href="https://www.on-sitemag.com/newsletter-archive/">e-News</a></li> <li id="menu-item-1003972575" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1003972575"><a target="_blank" href="https://www.constructionjobsite.ca/">Job Board</a></li> <li id="menu-item-1003978544" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-1003978544"><a href="#">Events</a> <ul class="sub-menu"> <li id="menu-item-1003982648" class="menu-item menu-item-type-post_type menu-item-object-virtual-event menu-item-1003982648"><a href="https://www.on-sitemag.com/virtual-events/on-site-40-under-40-symposium-2024/">40 Under 40 Symposium 2024</a></li> <li id="menu-item-1003978545" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1003978545"><a target="_blank" href="https://www.women-in-construction.ca/virtual-events/women-in-construction-2024/">WIC 2024</a></li> <li id="menu-item-1003982649" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1003982649"><a target="_blank" href="https://www.hpacmag.com/virtual-events/pursuing-dei-enhancing-your-workforce-and-community/">DEI</a></li> </ul> </li> <li id="menu-item-1003978808" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1003978808"><a href="https://www.on-sitemag.com/photo-contest/">Photo Contest</a></li> </ul></div><div class="textwidget custom-html-widget"><br/></div><h4>Information</h4><div class="menu-information-container"><ul id="menu-information" class="menu"><li id="menu-item-1003736365" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1003736365"><a href="https://www.on-sitemag.com/advertise/">Advertise</a></li> <li id="menu-item-1003736366" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1003736366"><a href="https://www.on-sitemag.com/contacts/">Contacts</a></li> </ul></div> </div> <div class="col-sm-6"> <h4>Browse by</h4> <div class="row"> <div class="col-md-6"> <div class="menu-topics-1-container"><ul id="menu-topics-1" class="menu"><li id="menu-item-1003736367" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1003736367"><a href="https://www.on-sitemag.com/category/asphalt/">Asphalt</a></li> <li id="menu-item-1003736368" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1003736368"><a href="https://www.on-sitemag.com/category/bridges/">Bridges</a></li> <li id="menu-item-1003972527" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1003972527"><a href="https://www.on-sitemag.com/category/commercial/">Commercial</a></li> <li id="menu-item-1003736370" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1003736370"><a href="https://www.on-sitemag.com/category/concrete/">Concrete</a></li> <li id="menu-item-1003736371" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1003736371"><a href="https://www.on-sitemag.com/category/construction/">Construction</a></li> <li id="menu-item-1003736372" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1003736372"><a href="https://www.on-sitemag.com/category/construction-materials/">Construction Materials</a></li> <li id="menu-item-1003736373" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1003736373"><a href="https://www.on-sitemag.com/category/demolition/">Demolition</a></li> <li id="menu-item-1003972523" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1003972523"><a href="https://www.on-sitemag.com/category/equipment/">Equipment</a></li> <li id="menu-item-1003972526" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1003972526"><a href="https://www.on-sitemag.com/category/equipment-technology/">Equipment Technology</a></li> <li id="menu-item-1003736374" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1003736374"><a href="https://www.on-sitemag.com/category/financing/">Financing</a></li> <li id="menu-item-1003736375" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1003736375"><a href="https://www.on-sitemag.com/category/green-construction/">Green Construction</a></li> <li id="menu-item-1003736376" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1003736376"><a href="https://www.on-sitemag.com/category/health-safety/">Health & Safety</a></li> <li id="menu-item-1003972528" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1003972528"><a href="https://www.on-sitemag.com/category/industrial/">Industrial</a></li> </ul></div> </div> <div class="col-md-6"> <div class="menu-topics-2-container"><ul id="menu-topics-2" class="menu"><li id="menu-item-1003952845" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1003952845"><a href="https://www.on-sitemag.com/category/infrastructure/">Infrastructure</a></li> <li id="menu-item-1003972529" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1003972529"><a href="https://www.on-sitemag.com/category/institutional/">Institutional</a></li> <li id="menu-item-1003736380" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1003736380"><a href="https://www.on-sitemag.com/category/labour/">Labour</a></li> <li id="menu-item-1003736381" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1003736381"><a href="https://www.on-sitemag.com/category/law/">Law</a></li> <li id="menu-item-1003972530" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1003972530"><a href="https://www.on-sitemag.com/category/leadership/">Leadership</a></li> <li id="menu-item-1003972531" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1003972531"><a href="https://www.on-sitemag.com/category/1752/">LEED</a></li> <li id="menu-item-1003736385" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1003736385"><a href="https://www.on-sitemag.com/category/p3s/">P3s</a></li> <li id="menu-item-1003972532" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1003972532"><a href="https://www.on-sitemag.com/category/residential/">Residential</a></li> <li id="menu-item-1003736386" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1003736386"><a href="https://www.on-sitemag.com/category/risk-management/">Risk Management</a></li> <li id="menu-item-1003736387" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1003736387"><a href="https://www.on-sitemag.com/category/roads/">Roads</a></li> <li id="menu-item-1003972533" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1003972533"><a href="https://www.on-sitemag.com/category/1757/">Skills Development</a></li> <li id="menu-item-1003736389" class="menu-item menu-item-type-taxonomy menu-item-object-category current-menu-item menu-item-1003736389"><a href="https://www.on-sitemag.com/category/software/" aria-current="page">Software</a></li> <li id="menu-item-1003736390" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-1003736390"><a href="https://www.on-sitemag.com/category/trucks/">Trucks</a></li> </ul></div> </div> </div> </div> <div class="col-sm-3"> <br/><a href="https://www.on-sitemag.com/digital-archives/december-2024/"><img src="https://www.on-sitemag.com/wp-content/uploads/2024/09/OS_Dec24_EJS_DE-1.png" alt="December 2024" style="width:px;height:400px;"></a><a href="https://www.on-sitemag.com/digital-archives/december-2024/" class="btn btn-primary btn-block btn-lg">View Digital Edition</a> <div class="textwidget"> </div> </div> </div> </div> </div><!-- end mega menu --> <div id="wallpaper-ad" class="xhidden-xs xhidden-sm xhidden-md"> <div id="wallpaperright"> <div id='div-gpt-ad-1467126364434-0' style=''> <script type='text/javascript'> googletag.cmd.push(function() { googletag.display('div-gpt-ad-1467126364434-0'); }); </script> </div> </div> <div id="wallpaperleft"> <div id='div-gpt-ad-1451581644708-28' style=''> <script type='text/javascript'> googletag.cmd.push(function() { googletag.display('div-gpt-ad-1451581644708-28'); } ); </script> </div> <div id='div-gpt-ad-1452615684922-0' style=''> <script type='text/javascript'> googletag.cmd.push(function() { googletag.display('div-gpt-ad-1452615684922-0'); }); </script> </div> </div> </div> <!-- wallpaper code was here --> <div class="topbox" style=""> <div class="container xhidden-xs"> <div id='div-gpt-ad-1452016996062-15' style='margin-top:0px;' class="Leader1 center-block text-center leaderboard"> <script type='text/javascript'> googletag.cmd.push(function() { googletag.display('div-gpt-ad-1452016996062-15'); }); </script> </div> </div> </div> <div class="container main-content"> <div id="wrapper" class="clearfix"> <div class="visible-print"> <img src="https://www.on-sitemag.com/wp-content/uploads/2020/07/onsite-logo-web.png" alt="On-Site Magazine" /> </div> <div class="row"> <div class="col-md-9"> <h1> <small>Category</small><br/>Software </h1> <div class="Toplayer"> <a href="https://www.on-sitemag.com/construction/procore-acquires-edmonton-tech-firm-as-part-of-innovation-drive/1003983807/" class="thumbnail headline clearfix media"> <div class="hidden-xs"> <img width="170" height="113" src="https://www.on-sitemag.com/wp-content/uploads/2024/11/Construction-Technology-270x180.jpg" class="pull-right media-object archive-thumb wp-image-1003983809 wp-post-image" alt="" decoding="async" data-mwl-img-id="1003983809" /> </div> <div class="media-body"> <span class="label label-light">Construction</span> <span class="label label-light">Health & Safety</span> <span class="label label-light">Labour</span> <span class="label label-light">Leadership</span> <span class="label label-light">Software</span> <h3 class="headline"> <small> November 22, 2024 </small><br/> Procore acquires Edmonton tech firm as part of innovation drive </h3> </div> </a> <a href="https://www.on-sitemag.com/construction/aec-report-reveals-growing-use-of-ai/1003983779/" class="thumbnail headline clearfix media"> <div class="hidden-xs"> <img width="170" height="113" src="https://www.on-sitemag.com/wp-content/uploads/2024/11/Bluebeam-AI-Tech-Report-2024-cover-page-270x180.jpg" class="pull-right media-object archive-thumb wp-image-1003983780 wp-post-image" alt="" decoding="async" data-mwl-img-id="1003983780" /> </div> <div class="media-body"> <span class="label label-light">Construction</span> <span class="label label-light">Software</span> <h3 class="headline"> <small> November 18, 2024 </small><br/> AEC report reveals growing use of AI </h3> </div> </a> <a href="https://www.on-sitemag.com/features/software-strategies-customization-vs-standardization/" class="thumbnail headline clearfix media"> <div class="hidden-xs"> <img width="170" height="113" src="https://www.on-sitemag.com/wp-content/uploads/2024/11/GettyImages-2057470621-270x180.jpg" class="pull-right media-object archive-thumb wp-image-1003983752 wp-post-image" alt="" decoding="async" srcset="https://www.on-sitemag.com/wp-content/uploads/2024/11/GettyImages-2057470621-270x180.jpg 270w, https://www.on-sitemag.com/wp-content/uploads/2024/11/GettyImages-2057470621-300x200.jpg 300w, https://www.on-sitemag.com/wp-content/uploads/2024/11/GettyImages-2057470621-1024x683.jpg 1024w, https://www.on-sitemag.com/wp-content/uploads/2024/11/GettyImages-2057470621-768x512.jpg 768w, https://www.on-sitemag.com/wp-content/uploads/2024/11/GettyImages-2057470621-1536x1024.jpg 1536w, https://www.on-sitemag.com/wp-content/uploads/2024/11/GettyImages-2057470621-2048x1365.jpg 2048w, https://www.on-sitemag.com/wp-content/uploads/2024/11/GettyImages-2057470621-250x167.jpg 250w, https://www.on-sitemag.com/wp-content/uploads/2024/11/GettyImages-2057470621-600x400.jpg 600w" sizes="(max-width: 170px) 100vw, 170px" data-mwl-img-id="1003983752" /> </div> <div class="media-body"> <span class="label label-light">Construction</span> <span class="label label-light">Software</span> <h3 class="headline"> <small> November 13, 2024 </small><br/> Software strategies: Customization vs Standardization </h3> </div> </a> <a href="https://www.on-sitemag.com/products/buildots-launches-genai-assistant-dot/" class="thumbnail headline clearfix media"> <div class="hidden-xs"> <img width="170" height="113" src="https://www.on-sitemag.com/wp-content/uploads/2024/11/IMG_3377-270x180.jpg" class="pull-right media-object archive-thumb wp-image-1003983643 wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://www.on-sitemag.com/wp-content/uploads/2024/11/IMG_3377-270x180.jpg 270w, https://www.on-sitemag.com/wp-content/uploads/2024/11/IMG_3377-300x200.jpg 300w, https://www.on-sitemag.com/wp-content/uploads/2024/11/IMG_3377-1024x682.jpg 1024w, https://www.on-sitemag.com/wp-content/uploads/2024/11/IMG_3377-768x512.jpg 768w, https://www.on-sitemag.com/wp-content/uploads/2024/11/IMG_3377-1536x1024.jpg 1536w, https://www.on-sitemag.com/wp-content/uploads/2024/11/IMG_3377-250x167.jpg 250w, https://www.on-sitemag.com/wp-content/uploads/2024/11/IMG_3377-600x400.jpg 600w, https://www.on-sitemag.com/wp-content/uploads/2024/11/IMG_3377.jpg 2000w" sizes="auto, (max-width: 170px) 100vw, 170px" data-mwl-img-id="1003983643" /> </div> <div class="media-body"> <span class="label label-light">Construction</span> <span class="label label-light">Software</span> <h3 class="headline"> <small> November 1, 2024 </small><br/> Buildots launches GenAI assistant Dot </h3> </div> </a> </div> <!-- /Toplayer --> <section class="showad2"> <div class="ad__section-border ad__section-border--category"> <h2 class="visually-hidden">Advertisement</h2> <div class="ad__container"> <div class="ad__label"> <div class="ad__label__left"></div> <div class="ad__label__center"> Stories continue below </div> <div class="ad__label__right"></div> </div> <div class="ad__inner" id="ad__inner-3"> <div id="ad-2" style='' class="ad__inner__container ad-refresh-bkgd ad-refresh ad-2"> <!-- /17493223/AN_750x1300_interHOME --> <div id="InterAdspot"> <div id='div-gpt-ad-1638203319690-0' > <script> googletag.cmd.push(function() { googletag.display('div-gpt-ad-1638203319690-0'); }); </script></div> </div> </div> </div> </div> </div> </section> <br/> <div class="Toplayer"> <a href="https://www.on-sitemag.com/construction/cyber-threats-the-top-business-concern/1003983403/" class="thumbnail headline clearfix media"> <div class="hidden-xs"> <img width="170" height="113" src="https://www.on-sitemag.com/wp-content/uploads/2021/04/data-security-cyber-security-270x180.jpeg" class="pull-right media-object archive-thumb wp-image-1003973027 wp-post-image" alt="" decoding="async" loading="lazy" data-mwl-img-id="1003973027" /> </div> <div class="media-body"> <span class="label label-light">Construction</span> <span class="label label-light">Risk Management</span> <span class="label label-light">Software</span> <h3 class="headline"> <small> October 8, 2024 </small><br/> Cyber threats the top business concern </h3> </div> </a> <a href="https://www.on-sitemag.com/construction/on-site-webinar-to-put-focus-on-cybersecurity/1003983387/" class="thumbnail headline clearfix media"> <div class="hidden-xs"> <img width="170" height="113" src="https://www.on-sitemag.com/wp-content/uploads/2024/10/OS_Cybersecurity-webinar_LINKEDIN-1104x736_SEPT24_SVA-270x180.jpg" class="pull-right media-object archive-thumb wp-image-1003983388 wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://www.on-sitemag.com/wp-content/uploads/2024/10/OS_Cybersecurity-webinar_LINKEDIN-1104x736_SEPT24_SVA-270x180.jpg 270w, https://www.on-sitemag.com/wp-content/uploads/2024/10/OS_Cybersecurity-webinar_LINKEDIN-1104x736_SEPT24_SVA-300x200.jpg 300w, https://www.on-sitemag.com/wp-content/uploads/2024/10/OS_Cybersecurity-webinar_LINKEDIN-1104x736_SEPT24_SVA-1024x683.jpg 1024w, https://www.on-sitemag.com/wp-content/uploads/2024/10/OS_Cybersecurity-webinar_LINKEDIN-1104x736_SEPT24_SVA-768x512.jpg 768w, https://www.on-sitemag.com/wp-content/uploads/2024/10/OS_Cybersecurity-webinar_LINKEDIN-1104x736_SEPT24_SVA-250x167.jpg 250w, https://www.on-sitemag.com/wp-content/uploads/2024/10/OS_Cybersecurity-webinar_LINKEDIN-1104x736_SEPT24_SVA-600x400.jpg 600w, https://www.on-sitemag.com/wp-content/uploads/2024/10/OS_Cybersecurity-webinar_LINKEDIN-1104x736_SEPT24_SVA.jpg 1104w" sizes="auto, (max-width: 170px) 100vw, 170px" data-mwl-img-id="1003983388" /> </div> <div class="media-body"> <span class="label label-light">Construction</span> <span class="label label-light">Risk Management</span> <span class="label label-light">Software</span> <h3 class="headline"> <small> October 7, 2024 </small><br/> On-Site webinar to put focus on cybersecurity </h3> </div> </a> <a href="https://www.on-sitemag.com/construction/ifs-completes-copperleaf-acquisition/1003983040/" class="thumbnail headline clearfix media"> <div class="hidden-xs"> <img width="170" height="113" src="https://www.on-sitemag.com/wp-content/uploads/2024/09/IFS_Graphic_for_MA-1200x630-1-270x180.png" class="pull-right media-object archive-thumb wp-image-1003983041 wp-post-image" alt="" decoding="async" loading="lazy" data-mwl-img-id="1003983041" /> </div> <div class="media-body"> <span class="label label-light">Construction</span> <span class="label label-light">Software</span> <h3 class="headline"> <small> September 3, 2024 </small><br/> IFS completes Copperleaf acquisition </h3> </div> </a> <a href="https://www.on-sitemag.com/products/crewcost-accounting-software/" class="thumbnail headline clearfix media"> <div class="hidden-xs"> <img width="170" height="113" src="https://www.on-sitemag.com/wp-content/uploads/2024/08/CrewCost-on-a-laptop-270x180.jpg" class="pull-right media-object archive-thumb wp-image-1003982967 wp-post-image" alt="" decoding="async" loading="lazy" data-mwl-img-id="1003982967" /> </div> <div class="media-body"> <span class="label label-light">Construction</span> <span class="label label-light">Software</span> <h3 class="headline"> <small> August 18, 2024 </small><br/> CrewCost accounting software </h3> </div> </a> <div class='code-block code-block-center code-block-10 code-block-article-bill--list-pages'> <div class="code-block-label">Advertisement</div> <!-- Article Billboard --> <div id='div-gpt-ad-1547760826902-0' > <script> googletag.cmd.push(function() { googletag.display('div-gpt-ad-1547760826902-0'); }); </script> </div></div> <a href="https://www.on-sitemag.com/products/buildots-adds-integrated-tracking/" class="thumbnail headline clearfix media"> <div class="hidden-xs"> <img width="170" height="113" src="https://www.on-sitemag.com/wp-content/uploads/2024/08/devices-270x180.jpg" class="pull-right media-object archive-thumb wp-image-1003982858 wp-post-image" alt="" decoding="async" loading="lazy" data-mwl-img-id="1003982858" /> </div> <div class="media-body"> <span class="label label-light">Construction</span> <span class="label label-light">Software</span> <h3 class="headline"> <small> August 8, 2024 </small><br/> Buildots adds Integrated Tracking </h3> </div> </a> <a href="https://www.on-sitemag.com/construction/procore-partners-on-diversity-in-canadas-construction-industry/1003982854/" class="thumbnail headline clearfix media"> <div class="hidden-xs"> <img width="170" height="113" src="https://www.on-sitemag.com/wp-content/uploads/2024/08/GettyImages-1487278371-270x180.jpg" class="pull-right media-object archive-thumb wp-image-1003982855 wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://www.on-sitemag.com/wp-content/uploads/2024/08/GettyImages-1487278371-270x180.jpg 270w, https://www.on-sitemag.com/wp-content/uploads/2024/08/GettyImages-1487278371-300x200.jpg 300w, https://www.on-sitemag.com/wp-content/uploads/2024/08/GettyImages-1487278371-1024x683.jpg 1024w, https://www.on-sitemag.com/wp-content/uploads/2024/08/GettyImages-1487278371-768x512.jpg 768w, https://www.on-sitemag.com/wp-content/uploads/2024/08/GettyImages-1487278371-1536x1024.jpg 1536w, https://www.on-sitemag.com/wp-content/uploads/2024/08/GettyImages-1487278371-2048x1365.jpg 2048w, https://www.on-sitemag.com/wp-content/uploads/2024/08/GettyImages-1487278371-250x167.jpg 250w, https://www.on-sitemag.com/wp-content/uploads/2024/08/GettyImages-1487278371-600x400.jpg 600w" sizes="auto, (max-width: 170px) 100vw, 170px" data-mwl-img-id="1003982855" /> </div> <div class="media-body"> <span class="label label-light">Construction</span> <span class="label label-light">Labour</span> <span class="label label-light">Leadership</span> <span class="label label-light">Skills Development</span> <span class="label label-light">Software</span> <h3 class="headline"> <small> August 7, 2024 </small><br/> Procore partners on diversity in Canada’s construction industry </h3> </div> </a> <a href="https://www.on-sitemag.com/products/samsara-asset-tag-sensor/" class="thumbnail headline clearfix media"> <div class="hidden-xs"> <img width="170" height="113" src="https://www.on-sitemag.com/wp-content/uploads/2024/08/Asset_Tag_Hardware-270x180.jpg" class="pull-right media-object archive-thumb wp-image-1003982813 wp-post-image" alt="" decoding="async" loading="lazy" data-mwl-img-id="1003982813" /> </div> <div class="media-body"> <span class="label label-light">Construction</span> <span class="label label-light">Equipment</span> <span class="label label-light">Risk Management</span> <span class="label label-light">Software</span> <h3 class="headline"> <small> August 2, 2024 </small><br/> Samsara Asset Tag sensor </h3> </div> </a> <a href="https://www.on-sitemag.com/products/doka-smart-sensor-for-concrete/" class="thumbnail headline clearfix media"> <div class="hidden-xs"> <img width="170" height="113" src="https://www.on-sitemag.com/wp-content/uploads/2024/07/DokaXact-Load-Sensor-270x180.jpg" class="pull-right media-object archive-thumb wp-image-1003982760 wp-post-image" alt="" decoding="async" loading="lazy" data-mwl-img-id="1003982760" /> </div> <div class="media-body"> <span class="label label-light">Concrete</span> <span class="label label-light">Construction</span> <span class="label label-light">Software</span> <h3 class="headline"> <small> July 26, 2024 </small><br/> Doka smart sensor for concrete </h3> </div> </a> <a href="https://www.on-sitemag.com/products/hcss-change-order-tracking/" class="thumbnail headline clearfix media"> <div class="hidden-xs"> <img width="170" height="113" src="https://www.on-sitemag.com/wp-content/uploads/2024/07/0d256983-3f02-4e26-ae06-f1e68bbdd4b0-270x180.jpg" class="pull-right media-object archive-thumb wp-image-1003982720 wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://www.on-sitemag.com/wp-content/uploads/2024/07/0d256983-3f02-4e26-ae06-f1e68bbdd4b0-270x180.jpg 270w, https://www.on-sitemag.com/wp-content/uploads/2024/07/0d256983-3f02-4e26-ae06-f1e68bbdd4b0-300x200.jpg 300w, https://www.on-sitemag.com/wp-content/uploads/2024/07/0d256983-3f02-4e26-ae06-f1e68bbdd4b0-768x512.jpg 768w, https://www.on-sitemag.com/wp-content/uploads/2024/07/0d256983-3f02-4e26-ae06-f1e68bbdd4b0-250x167.jpg 250w, https://www.on-sitemag.com/wp-content/uploads/2024/07/0d256983-3f02-4e26-ae06-f1e68bbdd4b0-600x400.jpg 600w, https://www.on-sitemag.com/wp-content/uploads/2024/07/0d256983-3f02-4e26-ae06-f1e68bbdd4b0.jpg 1000w" sizes="auto, (max-width: 170px) 100vw, 170px" data-mwl-img-id="1003982720" /> </div> <div class="media-body"> <span class="label label-light">Construction</span> <span class="label label-light">Software</span> <h3 class="headline"> <small> July 19, 2024 </small><br/> HCSS change order tracking </h3> </div> </a> <a href="https://www.on-sitemag.com/construction/hexagon-acquires-voyansi/1003982576/" class="thumbnail headline clearfix media"> <div class="hidden-xs"> <img width="170" height="113" src="https://www.on-sitemag.com/wp-content/uploads/2024/07/Hexagon-Logo-270x180.jpeg" class="pull-right media-object archive-thumb wp-image-1003982577 wp-post-image" alt="" decoding="async" loading="lazy" data-mwl-img-id="1003982577" /> </div> <div class="media-body"> <span class="label label-light">Construction</span> <span class="label label-light">Software</span> <h3 class="headline"> <small> July 4, 2024 </small><br/> Hexagon acquires Voyansi </h3> </div> </a> <a href="https://www.on-sitemag.com/construction/ontario-exploring-tech-for-infrastructure-construction/1003982531/" class="thumbnail headline clearfix media"> <div class="hidden-xs"> <img width="170" height="113" src="https://www.on-sitemag.com/wp-content/uploads/2023/05/Ontario-Icon-270x180.jpeg" class="pull-right media-object archive-thumb wp-image-1003979465 wp-post-image" alt="" decoding="async" loading="lazy" data-mwl-img-id="1003979465" /> </div> <div class="media-body"> <span class="label label-light">Construction</span> <span class="label label-light">Software</span> <h3 class="headline"> <small> June 27, 2024 </small><br/> Ontario exploring tech for infrastructure construction </h3> </div> </a> <a href="https://www.on-sitemag.com/construction/nemetschek-group-to-acquire-gocanvas/1003982382/" class="thumbnail headline clearfix media"> <div class="hidden-xs"> <img width="170" height="113" src="https://www.on-sitemag.com/wp-content/uploads/2024/06/20240604_Pressemitteilung_gocanva_final-270x180.jpg" class="pull-right media-object archive-thumb wp-image-1003982383 wp-post-image" alt="" decoding="async" loading="lazy" data-mwl-img-id="1003982383" /> </div> <div class="media-body"> <span class="label label-light">Construction</span> <span class="label label-light">Software</span> <h3 class="headline"> <small> June 6, 2024 </small><br/> Nemetschek Group to acquire GoCanvas </h3> </div> </a> <a href="https://www.on-sitemag.com/products/hcss-heavybid-pre-construction-software/" class="thumbnail headline clearfix media"> <div class="hidden-xs"> <img width="170" height="113" src="https://www.on-sitemag.com/wp-content/uploads/2024/05/2b5ea0a5-828e-4f1b-b5ea-e7a965b9aeaa-270x180.jpg" class="pull-right media-object archive-thumb wp-image-1003982318 wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://www.on-sitemag.com/wp-content/uploads/2024/05/2b5ea0a5-828e-4f1b-b5ea-e7a965b9aeaa-270x180.jpg 270w, https://www.on-sitemag.com/wp-content/uploads/2024/05/2b5ea0a5-828e-4f1b-b5ea-e7a965b9aeaa-300x200.jpg 300w, https://www.on-sitemag.com/wp-content/uploads/2024/05/2b5ea0a5-828e-4f1b-b5ea-e7a965b9aeaa-250x167.jpg 250w, https://www.on-sitemag.com/wp-content/uploads/2024/05/2b5ea0a5-828e-4f1b-b5ea-e7a965b9aeaa-600x400.jpg 600w, https://www.on-sitemag.com/wp-content/uploads/2024/05/2b5ea0a5-828e-4f1b-b5ea-e7a965b9aeaa.jpg 700w" sizes="auto, (max-width: 170px) 100vw, 170px" data-mwl-img-id="1003982318" /> </div> <div class="media-body"> <span class="label label-light">Construction</span> <span class="label label-light">Infrastructure</span> <span class="label label-light">Software</span> <h3 class="headline"> <small> June 3, 2024 </small><br/> HCSS HeavyBid Pre-Construction software </h3> </div> </a> <a href="https://www.on-sitemag.com/software/facing-the-realities-of-ai-application/1003982237/" class="thumbnail headline clearfix media"> <div class="hidden-xs"> <img width="170" height="113" src="https://www.on-sitemag.com/wp-content/uploads/2024/05/IFS_AI-270x180.png" class="pull-right media-object archive-thumb wp-image-1003982238 wp-post-image" alt="" decoding="async" loading="lazy" data-mwl-img-id="1003982238" /> </div> <div class="media-body"> <span class="label label-light">Construction</span> <span class="label label-light">Software</span> <h3 class="headline"> <small> May 21, 2024 </small><br/> Facing the realities of AI application </h3> </div> </a> <a href="https://www.on-sitemag.com/products/buildots-ai-powered-forecasting-tool/" class="thumbnail headline clearfix media"> <div class="hidden-xs"> <img width="170" height="113" src="https://www.on-sitemag.com/wp-content/uploads/2024/05/Buildots-Delay-Forecast-270x180.jpg" class="pull-right media-object archive-thumb wp-image-1003982219 wp-post-image" alt="" decoding="async" loading="lazy" data-mwl-img-id="1003982219" /> </div> <div class="media-body"> <span class="label label-light">Construction</span> <span class="label label-light">Software</span> <h3 class="headline"> <small> May 17, 2024 </small><br/> Buildots AI-powered forecasting tool </h3> </div> </a> <a href="https://www.on-sitemag.com/products/develon-digital-platform/" class="thumbnail headline clearfix media"> <div class="hidden-xs"> <img width="170" height="113" src="https://www.on-sitemag.com/wp-content/uploads/2024/05/MY-DEVELON-graphic-270x180.png" class="pull-right media-object archive-thumb wp-image-1003982179 wp-post-image" alt="" decoding="async" loading="lazy" data-mwl-img-id="1003982179" /> </div> <div class="media-body"> <span class="label label-light">Construction</span> <span class="label label-light">Equipment</span> <span class="label label-light">Equipment Technology</span> <span class="label label-light">Software</span> <h3 class="headline"> <small> May 13, 2024 </small><br/> Develon digital platform </h3> </div> </a> <div class="pagination-centered"> <div style="text-align:center;"><ul class="pagination"><li class="disabled"><a href="#">← Previous</a></li><li class="active"><a href="#">1</a></li><li><a href="https://www.on-sitemag.com/category/software/page/2/">2</a></li><li><a href="https://www.on-sitemag.com/category/software/page/3/">3</a></li><li><a href="https://www.on-sitemag.com/category/software/page/4/">4</a></li><li><a href="https://www.on-sitemag.com/category/software/page/5/">5</a></li><li><a href="https://www.on-sitemag.com/category/software/page/6/">6</a></li><li><a href="https://www.on-sitemag.com/category/software/page/7/">7</a></li><li class=""><a href="https://www.on-sitemag.com/category/software/page/2/" >Next →</a></li><li class="next"><a href="https://www.on-sitemag.com/category/software/page/19/" title="Last">»</a></li></ul></div> </div> </div> <!-- top layer --> </div> <div class="col-md-3 Toplayer"> <aside id="widgets"> <br/> <div id="text-27" class="widget-wrapper widget_text"> <div class="textwidget"><div class="well well-sm width300" style="margin-left: -15px;"> <p><a href="https://www.on-sitemag.com/have-your-say/"><img loading="lazy" decoding="async" class="aligncenter wp-image-1003983411 size-medium" src="https://www.on-sitemag.com/wp-content/uploads/2024/10/OS_Survey_Twitter_Oct24_GWJ-300x150.jpg" alt="" width="300" height="150" srcset="https://www.on-sitemag.com/wp-content/uploads/2024/10/OS_Survey_Twitter_Oct24_GWJ-300x150.jpg 300w, https://www.on-sitemag.com/wp-content/uploads/2024/10/OS_Survey_Twitter_Oct24_GWJ-250x125.jpg 250w, https://www.on-sitemag.com/wp-content/uploads/2024/10/OS_Survey_Twitter_Oct24_GWJ.jpg 506w" sizes="auto, (max-width: 300px) 100vw, 300px" data-mwl-img-id="1003983411" /></a></p> <h4><a href="https://www.on-sitemag.com/have-your-say/">Changes of international interest?</a></h4> <p>With the victory by Donald Trump in the U.S. election, what, if any, impact do you think the change in leadership by our neighbours to the south (who happen to be our largest international trading partners) will have on Canada’s construction sector?</p> </div> </div> </div><div id="custom_html-3" class="widget_text widget-wrapper widget_custom_html"><div class="textwidget custom-html-widget"><div class="width300 center-block text-center" style="margin-left: -15px;"> <!-- /17493223/AN_BigBox1_300x250 --> <div id='div-gpt-ad-1452016996062-0'> <script>googletag.cmd.push(function() { googletag.display('div-gpt-ad-1452016996062-0'); });</script> </div> </div></div></div><div id="custom_html-5" class="widget_text widget-wrapper widget_custom_html"><div class="textwidget custom-html-widget"><div class="width300 center-block text-center" style="margin-left: -15px;"> <!-- /17493223/AN_BigBox2_300x250 --> <div id='div-gpt-ad-1451581644708-5'> <script>googletag.cmd.push(function() { googletag.display('div-gpt-ad-1451581644708-5'); });</script> </div> </div></div></div><div id="custom_html-6" class="widget_text widget-wrapper widget_custom_html"><div class="textwidget custom-html-widget"><div class="width300 center-block text-center" style="margin-left: -15px;"> <!-- /17493223/AN_BigBox3_300x250 --> <div id='div-gpt-ad-1451581644708-6'> <script>googletag.cmd.push(function() { googletag.display('div-gpt-ad-1451581644708-6'); });</script> </div> </div></div></div><div id="custom_html-7" class="widget_text widget-wrapper widget_custom_html"><div class="textwidget custom-html-widget"><div class="width300 text-center" style="margin-left: -15px;"> <div id="div-gpt-ad-1451581644708-7"><script type='text/javascript'>googletag.cmd.push(function() { googletag.display('div-gpt-ad-1451581644708-7'); });</script></div> </div></div></div></aside><!-- end of widgets --> <aside id="widgets"> <div class="textwidget custom-html-widget"><div class="text-center width300" style="margin-left: -15px;"> <div id="div-gpt-ad-1451581644708-8"><script type='text/javascript'>googletag.cmd.push(function() { googletag.display('div-gpt-ad-1451581644708-8'); });</script></div> </div></div><div class="textwidget custom-html-widget"><div class="text-center width300" style="margin-left: -15px;"> <div id="div-gpt-ad-1488377939751-0"><script type='text/javascript'>googletag.cmd.push(function() { googletag.display('div-gpt-ad-1488377939751-0'); });</script></div> </div></div><div class="textwidget custom-html-widget"><div class="text-center width300" style="margin-left: -15px;"> <div id="div-gpt-ad-1451581644708-9"><script type='text/javascript'>googletag.cmd.push(function() { googletag.display('div-gpt-ad-1451581644708-9'); });</script></div> </div></div> <div class="textwidget"><div class="well well-sm width300" style="margin-left: -15px;"> <a href="/top-contractors"><img src="https://www.on-sitemag.com/wp-content/uploads/2021/06/OS_TCLOGO_BUTTON_LAZ.jpg" alt="top contractors" /></a><br/><br/> On-Site magazine’s <strong>Top Contractors</strong> is a project dedicated to determining the leading construction contractors in Canada.<br/><br/> <a href="/top-contractors" class="btn btn-default btn-block">View Report</a> </div></div> <div class="textwidget"><div class="well well-sm width300" style="margin-left: -15px;"><img loading="lazy" decoding="async" class="size-full wp-image-1003981756 aligncenter" src="https://www.on-sitemag.com/wp-content/uploads/2024/03/InfrastructureReportButton24.jpg" alt="" width="300" height="183" srcset="https://www.on-sitemag.com/wp-content/uploads/2024/03/InfrastructureReportButton24.jpg 300w, https://www.on-sitemag.com/wp-content/uploads/2024/03/InfrastructureReportButton24-250x153.jpg 250w" sizes="auto, (max-width: 300px) 100vw, 300px" data-mwl-img-id="1003981756" /><br /> Canada’s infrastructure is always evolving. On-Site’s Infrastructure Report delves into spending, construction and key projects to watch.<a class="btn btn-default btn-block" href="/infrastructure-report">View Report</a></div> </div> <div class="textwidget"><div class="well well-sm width300" style="margin-left: -15px;"> <p style="text-align: center;"><img loading="lazy" decoding="async" class="size-full wp-image-1003981388 aligncenter" src="https://www.on-sitemag.com/wp-content/uploads/2024/02/2024-TechreportButton.jpg" alt="" width="300" height="183" srcset="https://www.on-sitemag.com/wp-content/uploads/2024/02/2024-TechreportButton.jpg 300w, https://www.on-sitemag.com/wp-content/uploads/2024/02/2024-TechreportButton-250x153.jpg 250w" sizes="auto, (max-width: 300px) 100vw, 300px" data-mwl-img-id="1003981388" /></p> <p>Construction technology is advancing both on and off the job site. On-Site goes in-depth on the latest steps forward in its Technology Report.</p> <p><a class="btn btn-default btn-block" href="/technology-report">View Report</a></p> </div> </div> <div class="textwidget custom-html-widget"><div class="well well-sm width300" style="margin-left: -15px;"> <p style="text-align: center;"><a href="/40-under-40"><img src="https://www.on-sitemag.com/wp-content/uploads/2020/12/40-under-40-button.jpg" alt="40 under 40" /></a></p> The <strong>40 Under 40 in Canadian Construction</strong> focuses on the young, innovative leaders driving the industry forward. <a class="btn btn-default btn-block" href="/40-under-40">View Report</a> </div></div><div class="textwidget custom-html-widget"><div class="text-center width300" style="margin-left: -15px;"> <div id="div-gpt-ad-1472477157620-0"><script type='text/javascript'>googletag.cmd.push(function() { googletag.display('div-gpt-ad-1472477157620-0'); });</script></div> </div></div> <div class="textwidget"><div class="well well-sm width300" style="margin-left: -15px;"><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-1003983873" src="https://www.on-sitemag.com/wp-content/uploads/2024/11/OS_2025-Forecast.jpg" alt="" width="300" height="183" srcset="https://www.on-sitemag.com/wp-content/uploads/2024/11/OS_2025-Forecast.jpg 300w, https://www.on-sitemag.com/wp-content/uploads/2024/11/OS_2025-Forecast-250x153.jpg 250w" sizes="auto, (max-width: 300px) 100vw, 300px" data-mwl-img-id="1003983873" /><br /> On-Site looks ahead at the economic factors, new technologies and other key trends driving the industry in its annual Construction Forecast.<a class="btn btn-default btn-block" href="/construction-forecast">View Report</a></div> </div> <div class="textwidget"><a href="https://www.linkedin.com/company/on-site-magazine/" target="_blank"><img src="https://www.on-sitemag.com/wp-content/uploads/2019/06/OS_DIGIALADS_LINKEDIN_270x180_LAZ.jpg" alt="On-Site Magazine on linkedin" /></a> <br/> <br/></div> <h3>Trending</h3> <div class="textwidget"><ul class="sidebar-ed-pick list-unstyled"> <div class="width300"> <li> <h5 class="headline"><i class="fa fa-caret-right text-primary"></i> <a href="https://www.on-sitemag.com/construction/gower-appointed-president-at-pcl-construction/1003983635/" class="wpp-post-title" target="_self">Gower appointed president at PCL Construction</a></h5> </li> </div> <div class="width300"> <li> <h5 class="headline"><i class="fa fa-caret-right text-primary"></i> <a href="https://www.on-sitemag.com/construction/john-deere-marks-75-years-of-dozer-innovation/1003983660/" class="wpp-post-title" target="_self">John Deere marks 75 years of dozer innovation</a></h5> </li> </div> <div class="width300"> <li> <h5 class="headline"><i class="fa fa-caret-right text-primary"></i> <a href="https://www.on-sitemag.com/construction/breaking-ground-on-ev-battery-component-plant/1003983759/" class="wpp-post-title" target="_self">Breaking ground on EV battery component plant</a></h5> </li> </div> <div class="width300"> <li> <h5 class="headline"><i class="fa fa-caret-right text-primary"></i> <a href="https://www.on-sitemag.com/construction/kioti-expands-operations-with-new-ontario-warehouse/1003983693/" class="wpp-post-title" target="_self">Kioti expands operations with new Ontario warehouse</a></h5> </li> </div> <div class="width300"> <li> <h5 class="headline"><i class="fa fa-caret-right text-primary"></i> <a href="https://www.on-sitemag.com/construction/procore-acquires-edmonton-tech-firm-as-part-of-innovation-drive/1003983807/" class="wpp-post-title" target="_self">Procore acquires Edmonton tech firm as part of innovation drive</a></h5> </li> </div> <div class="width300"> <li> <h5 class="headline"><i class="fa fa-caret-right text-primary"></i> <a href="https://www.on-sitemag.com/construction/call-for-entries-show-off-your-best-canadian-jobsite-photos/1003983709/" class="wpp-post-title" target="_self">Call for Entries: Show off your best Canadian jobsite photos</a></h5> </li> </div> <div class="width300"> <li> <h5 class="headline"><i class="fa fa-caret-right text-primary"></i> <a href="https://www.on-sitemag.com/construction/ccppp-reveals-p3-winners/1003983674/" class="wpp-post-title" target="_self">CCPPP reveals P3 winners</a></h5> </li> </div> </ul> </div> <div class="textwidget custom-html-widget"><div class="well well-sm width300" style="margin-left: -15px;"> <p style="text-align: center;"><a href="/photo-contest"><img src="https://www.on-sitemag.com/wp-content/uploads/2024/02/2023-PhotoContestButton-233fa014-ec19-435e-827f-36813249f3b5.jpg" alt="On-Site Photo Contest" /></a></p> Capturing Canada's Construction Sector in Pictures. <a class="btn btn-default btn-block" href="/photo-contest">View Winners</a> </div></div></aside><!-- end of widgets --> </div> </div> <!-- /.row --> </div><!-- end of wrapper--> <footer id="footer" class="clearfix"> <div id="footer-wrapper"> <div class="row"> <div class="col-md-2"> <a href="https://www.on-sitemag.com/" title="On-Site Magazine" rel="home"> <img src="https://www.on-sitemag.com/wp-content/uploads/2020/07/onsite-logo-web.png" alt="On-Site Magazine" class="img-resposnive"/> </a> <hr /> <div id="footer1"><div class="menu-footer-links-container"><ul id="menu-footer-links" class="menu"><li id="menu-item-1003736400" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1003736400"><a href="https://www.on-sitemag.com/subscribe/">Subscribe</a></li> <li id="menu-item-1003736398" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1003736398"><a href="https://www.on-sitemag.com/advertise/">Advertise</a></li> <li id="menu-item-1003736399" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-1003736399"><a href="https://www.on-sitemag.com/contacts/">Contacts</a></li> <li id="menu-item-1003971784" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1003971784"><a href="https://www.women-in-construction.ca/">Women in Construction</a></li> </ul></div></div> </div> <div class="col-md-7"> <div class="row"> <div class="col-md-6"> <br/><a href="https://www.on-sitemag.com/digital-archives/december-2024/"><img src="https://www.on-sitemag.com/wp-content/uploads/2024/09/OS_Dec24_EJS_DE-1.png" alt="December 2024" style="width:px;height:400px;"></a><a href="https://www.on-sitemag.com/digital-archives/december-2024/" class="btn btn-primary btn-block btn-lg">View Digital Edition</a><div id="text-24"> <div class="textwidget"> </div> </div> </div> <div class="col-md-6"> <br/><a href="https://www.on-sitemag.com/digital-archives/concrete-sept-2024-2/"><img src="https://www.on-sitemag.com/wp-content/uploads/2024/09/Concrete_OnSite_DE-1.png" alt="Concrete Sept 2024" style="width:px;height:400px;"></a><a href="https://www.on-sitemag.com/digital-archives/concrete-sept-2024-2/" class="btn btn-primary btn-block btn-lg">View Digital Edition</a><div id="text-25"> <div class="textwidget"> </div> </div> </div> </div> </div> <div class="col-md-3 text-right"> <div id="footer3"><h3>Social</h3><div class="textwidget custom-html-widget"><ul class="list-inline"> <li><a href="https://x.com/OnSiteMag" target="_blank"><strong style="font-size:36px">X</strong></a> </li> <li><a href="https://www.facebook.com/OnSiteMag/" target="_blank"><i class="fa fa-facebook fa-2x"></i> </a></li> <li><a href="https://ca.linkedin.com/company/on-site-magazine" target="_blank"><i class="fa fa-linkedin fa-2x"></i></a> </li> </ul> </div></div> </div> </div><!-- end of row --> <div class="row"> <div class="col-md-12 text-center"> <br/> <div class="text-left"> <span class="small">Construction Group Network</span> </div> <div class="panel panel-default"> <div class="panel-body"> <a href="https://www.canadianconsultingengineer.com/" target="_blank" class="network-logo"><img src="/wp-content/uploads/2023/03/CCE.png" alt="Canadian Consulting Engineer"></a> <a href="https://www.canadiancontractor.ca/" target="_blank" class="network-logo"><img src="/wp-content/uploads/2023/03/Contractor.png" alt="Canadian Contractor"></a> <a href="https://www.canadianrentalservice.com/" target="_blank" class="network-logo"><img src="/wp-content/uploads/2023/03/canadian-rental-service.png" alt="Canadian Rental Service"></a> <a href="https://www.craneandhoistcanada.com/" target="_blank" class="network-logo"><img src="/wp-content/uploads/2023/03/crane-and-hoist.png" alt="Crane and Hoist Magazine"></a> <a href="https://www.ebmag.com/" target="_blank" class="network-logo"><img src="/wp-content/uploads/2023/03/electrical-business.png" alt="Electrical Business Magazine"></a> <a href="https://www.hpacmag.com/" target="_blank" class="network-logo"><img src="/wp-content/uploads/2023/03/hpac-.png" alt="HPAC Magazine"></a> <a href="https://www.on-sitemag.com/" target="_blank" class="network-logo"><img src="/wp-content/uploads/2023/03/onsite.png" alt="On-Site Magazine"></a> <a href="https://www.pccmag.ca/" target="_blank" class="network-logo"><img src="/wp-content/uploads/2023/03/pcc.png" alt="Plomberie Chauffage Climatisation PCC Magazine"></a> <a href="https://www.rocktoroad.com/" target="_blank" class="network-logo"><img src="/wp-content/uploads/2023/03/rock-to-road.jpeg" alt="Rock to Road"></a> <a href="https://www.turfandrec.com/" target="_blank" class="network-logo"><img src="/wp-content/uploads/2023/03/turf-and-recpng.png" alt="Turf and Rec"></a> </div> </div> </div> </div> <div class="row"> <div class="col-lg-4"> <nav role="navigation"> <ul id="menu-footer" class="footer-menu"><li id="menu-item-1003969114" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-1003969114"><a href="https://www.annexbusinessmedia.com/privacy-policy/">Privacy / CASL</a></li> </ul> </nav> </div><!-- end of col-lg-4 --> <div class="col-lg-4 scroll-top"> <a href="#scroll-top" title="scroll to top"><i class="fa fa-chevron-up"></i></a> </div> <div class="col-lg-4"> <span class="pull-right"> © Copyright 2024 <a href="https://www.annexbusinessmedia.com" title="Annex Business Media" rel="home">Annex Business Media</a> </span> </div><!-- end of col-lg-4 --> </div><!-- end of row --> <div class="text-center"> <img src="https://www.annexbusinessmedia.com/images/Funded-Logo.png" alt="Founded by the Government of Canada"> </div> </div><!-- end #footer-wrapper --> <br/><br/> </footer><!-- end #footer --> </div><!-- end of container --> <!-- wall mobile ad start --> <div class='code-block code-block-1f6570c67831b7d8b7520fa4558d4759 code-block-8 code-block-mobile-wall ai-viewport-2 ai-viewport-3 ai-center-h ai-center-v ai-close'> <div style='width: 1300px;'> <div class="ai-attributes"> <span class='ai-close-button ai-close-unprocessed' data-ai-block='8'></span> </div> <div id="mobilewall2" class="mobilewall2"> <div id='div-gpt-ad-1508955939021-0' class=""> <script> googletag.cmd.push(function() { googletag.display('div-gpt-ad-1508955939021-0'); }); </script> </div> </div> </div> </div> <script type='text/javascript'> jQuery(window).load(function() { if(document.getElementById('div-gpt-ad-1508955939021-0') && document.getElementById('div-gpt-ad-1508955939021-0').style.display == 'none' ) { jQuery('.code-block-90acd66f8a0f9b88df0518b18a3d3804').addClass('hidden'); } else if(document.getElementById('div-gpt-ad-1508955939021-0') && document.getElementById('div-gpt-ad-1508955939021-0').style.display == '' ) { jQuery('.code-block-90acd66f8a0f9b88df0518b18a3d3804').removeClass('hidden'); } }); </script> <div id="cookienotice" class="navbar-fixed-bottom" role="alert" style="padding:15px 0; background:#303030;color:#efefef;border-color:#3b3b3b;font-size:14px;"> <div class="container"> <button class="btn pull-right cookieclose" style="color:#000;background: #fff;font-weight: bold;">I agree</button> We are using cookies to give you the best experience on our website. <br/> By continuing to use the site, you agree to the use of cookies. To find out more, read our <a href="https://www.annexbusinessmedia.com/privacy-policy/" style="color:#fff;text-decoration: underline;" target="_blank">privacy policy</a>. </div> </div> <script> jQuery(".cookieclose").click(function() { var now = new Date(); now.setTime(now.getTime() + 1 * 31557600 * 1000); document.cookie = "gdpr=1; expires=" + now.toUTCString() + "; path=/"; jQuery("#cookienotice").hide(); jQuery("#div-gpt-ad-1508955939021-0").css("bottom", "0"); jQuery("#mobilewall2").css("bottom", "0"); }); jQuery("#div-gpt-ad-1508955939021-0").css("bottom", "100px"); jQuery("#mobilewall2").css("bottom", "100px"); </script> <script> jQuery("#btn-menu").click( function () { jQuery("#mega-menu").toggle(); }); jQuery("html").click(function() { if( jQuery("#mega-menu").is(":visible") ) { jQuery("#mega-menu").toggle(); } }); jQuery("#closemenu").click(function() { jQuery("#mega-menu").hide(); }); jQuery('#mega-menu').click(function(event){ event.stopPropagation(); }); jQuery('#btn-menu').click(function(event){ event.stopPropagation(); }); jQuery("a[href='#scroll-top']").click(function() { jQuery("html, body").animate({ scrollTop: 0 }, "slow"); return false; }); </script> <script>!function(s,a,e,v,n,t,z){if(s.saq)return;n=s.saq=function(){n.callMethod?n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!s._saq)s._saq=n;n.push=n;n.loaded=!0;n.version='1.0';n.queue=[];t=a.createElement(e);t.async=!0;t.src=v;z=a.getElementsByTagName(e)[0];z.parentNode.insertBefore(t,z)}(window,document,'script','https://tags.srv.stackadapt.com/events.js');saq('ts', 'AyMJvs7wyRU9RhEIg1cU2g');</script> <script type="text/javascript"> (function (d, u, h, s) { h = d.getElementsByTagName('head')[0]; s = d.createElement('script'); s.async = 1; s.src = u + new Date().getTime(); h.appendChild(s); })(document, 'https://grow.clearbitjs.com/api/pixel.js?v='); </script> <link rel="stylesheet" href="https://olytics.omeda.com/olytics/css/v3/p/olytics.css" /> <script type="text/javascript"> // olytics 3.0 window.olytics||(window.olytics=[]),window.olytics.methods=["fire","confirm"],window.olytics.factory=function(i){return function(){var t=Array.prototype.slice.call(arguments);return t.unshift(i),window.olytics.push(t),window.olytics}};for(var i=0;i<window.olytics.methods.length;i++){var method=window.olytics.methods[i];window.olytics[method]=window.olytics.factory(method)}olytics.load=function(i){if(!document.getElementById("olyticsImport")){window.a=window.olytics;var t=document.createElement("script");t.async=!0,t.id="olyticsImport",t.type="text/javascript";var o="";void 0!==i&&void 0!==i.oid&&(o=i.oid),t.setAttribute("data-oid",o),t.src="https://olytics.omeda.com/olytics/js/v3/p/olytics.min.js",t.addEventListener("load",function(t){for(olytics.initialize({Olytics:i});window.a.length>0;){var o=window.a.shift(),s=o.shift();olytics[s]&&olytics[s].apply(olytics,o)}},!1);var s=document.getElementsByTagName("script")[0];s.parentNode.insertBefore(t,s)}},olytics.load({oid:"04cb554ea6224a7d84132ef82481875a"}); </script> <script> olytics.fire( { behaviorId: '6012A3563790A2F', category: '', tag: '', topic: '' } ); </script> <script type="text/javascript"> function getCookie(name) { const value = `; ${document.cookie}`; const parts = value.split(`; ${name}=`); if (parts.length === 2) return parts.pop().split(';').shift(); } jQuery(window).load(function($) { var oly_anon_id = getCookie('oly_anon_id'); console.log(oly_anon_id); if(oly_anon_id){ jQuery( "a[href*='https://annex.dragonforms.com/loading.do?omedasite=']").each(function(index, el) { var old_val = jQuery(this).attr('href'); console.log("old value: = " + old_val); var new_val = old_val + "&pk=website&oly_anon_id=" + oly_anon_id.replace(/%22/g, ""); jQuery(this).attr('href',new_val); console.log("new value = " + jQuery(this).attr('href')); }); } }); </script> <!-- CODE for NAV and ADs--> <script type="text/javascript"> jQuery(document).ready(function () { // Define the menu we are working with var menu = jQuery('.logo-and-nav'); // Get the menus current offset var origOffsetY = menu.offset().top; /** * scroll * Perform our menu mod */ function scroll() { // Check the menus offset. if (jQuery(window).scrollTop() > origOffsetY) { //dont put the = sign back //If it is indeed beyond the offset, affix it to the top. jQuery(menu).addClass('navbar-fixed-top'); jQuery('#wallpaperleft').css({"position": "fixed", "top": "135px"}); jQuery('#wallpaperright').css({"position": "fixed", "top": "135px"}); jQuery('.topbar').removeClass('hidden'); jQuery('.headerad').css({"margin-top": "-120px"}); jQuery('#InterAdspot').css({"display": "block"}); } else { // Otherwise, un affix it. jQuery(menu).removeClass('navbar-fixed-top'); jQuery('#wallpaperleft').css({"position": "absolute", "top": "-0px"}); jQuery('#wallpaperright').css({"position": "absolute", "top": "-0px"}); jQuery('.topbar').addClass('hidden'); jQuery('.headerad').css({"margin-top": "0px"}); jQuery('#InterAdspot').css({"display": "none"}); } } // Anytime the document is scrolled act on it document.onscroll = scroll; }); </script> <script type='text/javascript'> jQuery(window).load(function() { if(document.getElementById('div-gpt-ad-1638203319690-0') && document.getElementById('div-gpt-ad-1638203319690-0').style.display == 'none' ) { jQuery('.showad').addClass('hidden'); jQuery('.showad2').addClass('hidden'); } else if(document.getElementById('div-gpt-ad-1638203319690-0') && document.getElementById('div-gpt-ad-1638203319690-0').style.display == '' ) { jQuery('.showad').removeClass('hidden'); jQuery('.showad2').removeClass('hidden'); } }); </script> <script type="text/javascript"> function adRemoveFixed(id,height){ if(height < 1000){ jQuery(id).css('position', 'static'); } } </script> <script type="text/javascript"> function adRemoveFixed(id,height){ if(height > 1000){ jQuery('#InterAdspot').addClass('navbar-fixed-top'); jQuery('#InterAdspot').css('position', 'static'); jQuery('showad').css('height', '30vh !important'); } } </script> <!-- 2x2 tracker --> <div id='div-gpt-ad-1479396621571-0'> <script> googletag.cmd.push(function() { googletag.display('div-gpt-ad-1479396621571-0'); }); </script> </div> <!-- CODE for NAV and ADs END --> <script type="text/javascript" id="hum_cdp_init-js-extra"> /* <![CDATA[ */ var hum = {"sdkUrl":"https:\/\/annex.hum.works\/js\/main.js","cookieDomain":"www.on-sitemag.com","scrollElements":"","clickElements":"","postType":"post","apis":[{"apiKey":"prod-key-annex-zdiglqdnmz","apiUrl":"https:\/\/annex.hum.works\/api\/","contentSource":"ons","cookieName":"annex_visitor"}]}; /* ]]> */ </script> <script type="text/javascript" src="https://www.on-sitemag.com/wp-content/plugins/hum_cdp/includes/js/hum_init.js?ver=1.3.0" id="hum_cdp_init-js"></script> <script type="text/javascript" src="https://www.on-sitemag.com/wp-content/themes/strappress/js/responsive-scripts.js?ver=1.1.0" id="responsive-scripts-js"></script> <script type="text/javascript" src="https://www.on-sitemag.com/wp-content/themes/strappress/js/responsive-plugins.js?ver=1.1.0" id="responsive-plugins-js"></script> <script type="text/javascript" id="wd-asl-ajaxsearchlite-js-before"> /* <![CDATA[ */ window.ASL = typeof window.ASL !== 'undefined' ? window.ASL : {}; window.ASL.wp_rocket_exception = "DOMContentLoaded"; window.ASL.ajaxurl = "https:\/\/www.on-sitemag.com\/wp-admin\/admin-ajax.php"; window.ASL.backend_ajaxurl = "https:\/\/www.on-sitemag.com\/wp-admin\/admin-ajax.php"; window.ASL.js_scope = "jQuery"; window.ASL.asl_url = "https:\/\/www.on-sitemag.com\/wp-content\/plugins\/ajax-search-lite\/"; window.ASL.detect_ajax = 1; window.ASL.media_query = 4766; window.ASL.version = 4766; window.ASL.pageHTML = ""; window.ASL.additional_scripts = [{"handle":"wd-asl-ajaxsearchlite","src":"https:\/\/www.on-sitemag.com\/wp-content\/plugins\/ajax-search-lite\/js\/min\/plugin\/optimized\/asl-prereq.js","prereq":[]},{"handle":"wd-asl-ajaxsearchlite-core","src":"https:\/\/www.on-sitemag.com\/wp-content\/plugins\/ajax-search-lite\/js\/min\/plugin\/optimized\/asl-core.js","prereq":[]},{"handle":"wd-asl-ajaxsearchlite-vertical","src":"https:\/\/www.on-sitemag.com\/wp-content\/plugins\/ajax-search-lite\/js\/min\/plugin\/optimized\/asl-results-vertical.js","prereq":["wd-asl-ajaxsearchlite"]},{"handle":"wd-asl-ajaxsearchlite-autocomplete","src":"https:\/\/www.on-sitemag.com\/wp-content\/plugins\/ajax-search-lite\/js\/min\/plugin\/optimized\/asl-autocomplete.js","prereq":["wd-asl-ajaxsearchlite"]},{"handle":"wd-asl-ajaxsearchlite-load","src":"https:\/\/www.on-sitemag.com\/wp-content\/plugins\/ajax-search-lite\/js\/min\/plugin\/optimized\/asl-load.js","prereq":["wd-asl-ajaxsearchlite-autocomplete"]}]; window.ASL.script_async_load = false; window.ASL.init_only_in_viewport = true; window.ASL.font_url = "https:\/\/www.on-sitemag.com\/wp-content\/plugins\/ajax-search-lite\/css\/fonts\/icons2.woff2"; window.ASL.css_async = false; window.ASL.highlight = {"enabled":false,"data":[]}; window.ASL.analytics = {"method":0,"tracking_id":"","string":"?ajax_search={asl_term}","event":{"focus":{"active":1,"action":"focus","category":"ASL","label":"Input focus","value":"1"},"search_start":{"active":0,"action":"search_start","category":"ASL","label":"Phrase: {phrase}","value":"1"},"search_end":{"active":1,"action":"search_end","category":"ASL","label":"{phrase} | {results_count}","value":"1"},"magnifier":{"active":1,"action":"magnifier","category":"ASL","label":"Magnifier clicked","value":"1"},"return":{"active":1,"action":"return","category":"ASL","label":"Return button pressed","value":"1"},"facet_change":{"active":0,"action":"facet_change","category":"ASL","label":"{option_label} | {option_value}","value":"1"},"result_click":{"active":1,"action":"result_click","category":"ASL","label":"{result_title} | {result_url}","value":"1"}}}; window.ASL_INSTANCES = [];window.ASL_INSTANCES[1] = {"homeurl":"https:\/\/www.on-sitemag.com\/","resultstype":"vertical","resultsposition":"hover","itemscount":4,"charcount":0,"highlight":0,"highlightwholewords":1,"singleHighlight":0,"scrollToResults":{"enabled":0,"offset":0},"resultareaclickable":1,"autocomplete":{"enabled":1,"lang":"en","trigger_charcount":0},"mobile":{"menu_selector":"#menu-toggle"},"trigger":{"click":"results_page","click_location":"same","update_href":0,"return":"results_page","return_location":"same","facet":1,"type":1,"redirect_url":"?s={phrase}","delay":300},"animations":{"pc":{"settings":{"anim":"fadedrop","dur":300},"results":{"anim":"fadedrop","dur":300},"items":"voidanim"},"mob":{"settings":{"anim":"fadedrop","dur":300},"results":{"anim":"fadedrop","dur":300},"items":"voidanim"}},"autop":{"state":"disabled","phrase":"","count":1},"resPage":{"useAjax":0,"selector":"#main","trigger_type":1,"trigger_facet":1,"trigger_magnifier":0,"trigger_return":0},"resultsSnapTo":"left","results":{"width":"auto","width_tablet":"auto","width_phone":"auto"},"settingsimagepos":"right","closeOnDocClick":1,"overridewpdefault":0,"override_method":"get"};window.ASL_INSTANCES[2] = {"homeurl":"https:\/\/www.on-sitemag.com\/","resultstype":"vertical","resultsposition":"hover","itemscount":4,"charcount":0,"highlight":0,"highlightwholewords":1,"singleHighlight":0,"scrollToResults":{"enabled":0,"offset":0},"resultareaclickable":1,"autocomplete":{"enabled":1,"lang":"en","trigger_charcount":0},"mobile":{"menu_selector":"#menu-toggle"},"trigger":{"click":"results_page","click_location":"same","update_href":0,"return":"results_page","return_location":"same","facet":1,"type":1,"redirect_url":"?s={phrase}","delay":300},"animations":{"pc":{"settings":{"anim":"fadedrop","dur":300},"results":{"anim":"fadedrop","dur":300},"items":"voidanim"},"mob":{"settings":{"anim":"fadedrop","dur":300},"results":{"anim":"fadedrop","dur":300},"items":"voidanim"}},"autop":{"state":"disabled","phrase":"","count":1},"resPage":{"useAjax":0,"selector":"#main","trigger_type":1,"trigger_facet":1,"trigger_magnifier":0,"trigger_return":0},"resultsSnapTo":"left","results":{"width":"auto","width_tablet":"auto","width_phone":"auto"},"settingsimagepos":"right","closeOnDocClick":1,"overridewpdefault":0,"override_method":"get"}; /* ]]> */ </script> <script type="text/javascript" src="https://www.on-sitemag.com/wp-content/plugins/ajax-search-lite/js/min/plugin/optimized/asl-prereq.js?ver=4766" id="wd-asl-ajaxsearchlite-js"></script> <script type="text/javascript" src="https://www.on-sitemag.com/wp-content/plugins/ajax-search-lite/js/min/plugin/optimized/asl-core.js?ver=4766" id="wd-asl-ajaxsearchlite-core-js"></script> <script type="text/javascript" src="https://www.on-sitemag.com/wp-content/plugins/ajax-search-lite/js/min/plugin/optimized/asl-results-vertical.js?ver=4766" id="wd-asl-ajaxsearchlite-vertical-js"></script> <script type="text/javascript" src="https://www.on-sitemag.com/wp-content/plugins/ajax-search-lite/js/min/plugin/optimized/asl-autocomplete.js?ver=4766" id="wd-asl-ajaxsearchlite-autocomplete-js"></script> <script type="text/javascript" src="https://www.on-sitemag.com/wp-content/plugins/ajax-search-lite/js/min/plugin/optimized/asl-load.js?ver=4766" id="wd-asl-ajaxsearchlite-load-js"></script> <script type="text/javascript" src="https://www.on-sitemag.com/wp-content/plugins/ajax-search-lite/js/min/plugin/optimized/asl-wrapper.js?ver=4766" id="wd-asl-ajaxsearchlite-wrapper-js"></script> <!-- Article Advert lablel --> <script type='text/javascript'> jQuery(window).load(function() { if(document.getElementById('div-gpt-ad-1547760826902-0') && document.getElementById('div-gpt-ad-1547760826902-0').style.display == 'none' ) { jQuery('.code-block-10').addClass('hidden'); } else if(document.getElementById('div-gpt-ad-1547760826902-0') && document.getElementById('div-gpt-ad-1547760826902-0').style.display == '' ) { jQuery('.code-block-10').removeClass('hidden'); } }); jQuery(window).load(function() { if(document.getElementById('div-gpt-ad-1547760826902-0') && document.getElementById('div-gpt-ad-1547760826902-0').style.display == 'none' ) { jQuery('.code-block-11').addClass('hidden'); } else if(document.getElementById('div-gpt-ad-1547760826902-0') && document.getElementById('div-gpt-ad-1547760826902-0').style.display == '' ) { jQuery('.code-block-11').removeClass('hidden'); } }); jQuery(window).load(function() { if(document.getElementById('div-gpt-ad-1572984089226-0') && document.getElementById('div-gpt-ad-1572984089226-0').style.display == 'none' ) { jQuery('.code-block-12').addClass('hidden'); } else if(document.getElementById('div-gpt-ad-1572984089226-0') && document.getElementById('div-gpt-ad-1572984089226-0').style.display == '' ) { jQuery('.code-block-12').removeClass('hidden'); } }); jQuery(window).load(function() { if(document.getElementById('div-gpt-ad-1643133084987-0') && document.getElementById('div-gpt-ad-1643133084987-0').style.display == 'none' ) { jQuery('.code-block-13').addClass('hidden'); } else if(document.getElementById('div-gpt-ad-1643133084987-0') && document.getElementById('div-gpt-ad-1643133084987-0').style.display == '' ) { jQuery('.code-block-13').removeClass('hidden'); } }); jQuery(window).load(function() { if(document.getElementById('div-gpt-ad-1723128880159-0') && document.getElementById('div-gpt-ad-1723128880159-0').style.display == 'none' ) { jQuery('.code-block-33').addClass('hidden'); } else if(document.getElementById('div-gpt-ad-1723128880159-0') && document.getElementById('div-gpt-ad-1723128880159-0').style.display == '' ) { jQuery('.code-block-33').removeClass('hidden'); } }); jQuery(window).load(function() { if(document.getElementById('div-gpt-ad-1723217469379-0') && document.getElementById('div-gpt-ad-1723217469379-0').style.display == 'none' ) { jQuery('.code-block-34').addClass('hidden'); } else if(document.getElementById('div-gpt-ad-1723217469379-0') && document.getElementById('div-gpt-ad-1723217469379-0').style.display == '' ) { jQuery('.code-block-34').removeClass('hidden'); } }); jQuery(window).load(function() { if(document.getElementById('div-gpt-ad-1723217517408-0') && document.getElementById('div-gpt-ad-1723217517408-0').style.display == 'none' ) { jQuery('.code-block-35').addClass('hidden'); } else if(document.getElementById('div-gpt-ad-1723217517408-0') && document.getElementById('div-gpt-ad-1723217517408-0').style.display == '' ) { jQuery('.code-block-35').removeClass('hidden'); } }); </script><script> function b2a(a){var b,c=0,l=0,f="",g=[];if(!a)return a;do{var e=a.charCodeAt(c++);var h=a.charCodeAt(c++);var k=a.charCodeAt(c++);var d=e<<16|h<<8|k;e=63&d>>18;h=63&d>>12;k=63&d>>6;d&=63;g[l++]="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(e)+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(h)+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(k)+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(d)}while(c< a.length);return f=g.join(""),b=a.length%3,(b?f.slice(0,b-3):f)+"===".slice(b||3)}function a2b(a){var b,c,l,f={},g=0,e=0,h="",k=String.fromCharCode,d=a.length;for(b=0;64>b;b++)f["ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(b)]=b;for(c=0;d>c;c++)for(b=f[a.charAt(c)],g=(g<<6)+b,e+=6;8<=e;)((l=255&g>>>(e-=8))||d-2>c)&&(h+=k(l));return h}b64e=function(a){return btoa(encodeURIComponent(a).replace(/%([0-9A-F]{2})/g,function(b,a){return String.fromCharCode("0x"+a)}))}; b64d=function(a){return decodeURIComponent(atob(a).split("").map(function(a){return"%"+("00"+a.charCodeAt(0).toString(16)).slice(-2)}).join(""))}; /* <![CDATA[ */ ai_front = {"insertion_before":"BEFORE","insertion_after":"AFTER","insertion_prepend":"PREPEND CONTENT","insertion_append":"APPEND CONTENT","insertion_replace_content":"REPLACE CONTENT","insertion_replace_element":"REPLACE ELEMENT","visible":"VISIBLE","hidden":"HIDDEN","fallback":"FALLBACK","automatically_placed":"Automatically placed by AdSense Auto ads code","cancel":"Cancel","use":"Use","add":"Add","parent":"Parent","cancel_element_selection":"Cancel element selection","select_parent_element":"Select parent element","css_selector":"CSS selector","use_current_selector":"Use current selector","element":"ELEMENT","path":"PATH","selector":"SELECTOR"}; /* ]]> */ var ai_cookie_js=!0,ai_block_class_def="code-block"; /* js-cookie v3.0.5 | MIT JavaScript Cookie v2.2.0 https://github.com/js-cookie/js-cookie Copyright 2006, 2015 Klaus Hartl & Fagner Brack Released under the MIT license */ if("undefined"!==typeof ai_cookie_js){(function(a,f){"object"===typeof exports&&"undefined"!==typeof module?module.exports=f():"function"===typeof define&&define.amd?define(f):(a="undefined"!==typeof globalThis?globalThis:a||self,function(){var b=a.Cookies,c=a.Cookies=f();c.noConflict=function(){a.Cookies=b;return c}}())})(this,function(){function a(b){for(var c=1;c<arguments.length;c++){var g=arguments[c],e;for(e in g)b[e]=g[e]}return b}function f(b,c){function g(e,d,h){if("undefined"!==typeof document){h= a({},c,h);"number"===typeof h.expires&&(h.expires=new Date(Date.now()+864E5*h.expires));h.expires&&(h.expires=h.expires.toUTCString());e=encodeURIComponent(e).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var l="",k;for(k in h)h[k]&&(l+="; "+k,!0!==h[k]&&(l+="="+h[k].split(";")[0]));return document.cookie=e+"="+b.write(d,e)+l}}return Object.create({set:g,get:function(e){if("undefined"!==typeof document&&(!arguments.length||e)){for(var d=document.cookie?document.cookie.split("; "): [],h={},l=0;l<d.length;l++){var k=d[l].split("="),p=k.slice(1).join("=");try{var n=decodeURIComponent(k[0]);h[n]=b.read(p,n);if(e===n)break}catch(q){}}return e?h[e]:h}},remove:function(e,d){g(e,"",a({},d,{expires:-1}))},withAttributes:function(e){return f(this.converter,a({},this.attributes,e))},withConverter:function(e){return f(a({},this.converter,e),this.attributes)}},{attributes:{value:Object.freeze(c)},converter:{value:Object.freeze(b)}})}return f({read:function(b){'"'===b[0]&&(b=b.slice(1,-1)); return b.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(b){return encodeURIComponent(b).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}},{path:"/"})});AiCookies=Cookies.noConflict();function m(a){if(null==a)return a;'"'===a.charAt(0)&&(a=a.slice(1,-1));try{a=JSON.parse(a)}catch(f){}return a}ai_check_block=function(a){var f="undefined"!==typeof ai_debugging;if(null==a)return!0;var b=m(AiCookies.get("aiBLOCKS"));ai_debug_cookie_status="";null==b&&(b={});"undefined"!== typeof ai_delay_showing_pageviews&&(b.hasOwnProperty(a)||(b[a]={}),b[a].hasOwnProperty("d")||(b[a].d=ai_delay_showing_pageviews,f&&console.log("AI CHECK block",a,"NO COOKIE DATA d, delayed for",ai_delay_showing_pageviews,"pageviews")));if(b.hasOwnProperty(a)){for(var c in b[a]){if("x"==c){var g="",e=document.querySelectorAll('span[data-ai-block="'+a+'"]')[0];"aiHash"in e.dataset&&(g=e.dataset.aiHash);e="";b[a].hasOwnProperty("h")&&(e=b[a].h);f&&console.log("AI CHECK block",a,"x cookie hash",e,"code hash", g);var d=new Date;d=b[a][c]-Math.round(d.getTime()/1E3);if(0<d&&e==g)return ai_debug_cookie_status=b="closed for "+d+" s = "+Math.round(1E4*d/3600/24)/1E4+" days",f&&console.log("AI CHECK block",a,b),f&&console.log(""),!1;f&&console.log("AI CHECK block",a,"removing x");ai_set_cookie(a,"x","");b[a].hasOwnProperty("i")||b[a].hasOwnProperty("c")||ai_set_cookie(a,"h","")}else if("d"==c){if(0!=b[a][c])return ai_debug_cookie_status=b="delayed for "+b[a][c]+" pageviews",f&&console.log("AI CHECK block",a, b),f&&console.log(""),!1}else if("i"==c){g="";e=document.querySelectorAll('span[data-ai-block="'+a+'"]')[0];"aiHash"in e.dataset&&(g=e.dataset.aiHash);e="";b[a].hasOwnProperty("h")&&(e=b[a].h);f&&console.log("AI CHECK block",a,"i cookie hash",e,"code hash",g);if(0==b[a][c]&&e==g)return ai_debug_cookie_status=b="max impressions reached",f&&console.log("AI CHECK block",a,b),f&&console.log(""),!1;if(0>b[a][c]&&e==g){d=new Date;d=-b[a][c]-Math.round(d.getTime()/1E3);if(0<d)return ai_debug_cookie_status= b="max imp. reached ("+Math.round(1E4*d/24/3600)/1E4+" days = "+d+" s)",f&&console.log("AI CHECK block",a,b),f&&console.log(""),!1;f&&console.log("AI CHECK block",a,"removing i");ai_set_cookie(a,"i","");b[a].hasOwnProperty("c")||b[a].hasOwnProperty("x")||(f&&console.log("AI CHECK block",a,"cookie h removed"),ai_set_cookie(a,"h",""))}}if("ipt"==c&&0==b[a][c]&&(d=new Date,g=Math.round(d.getTime()/1E3),d=b[a].it-g,0<d))return ai_debug_cookie_status=b="max imp. per time reached ("+Math.round(1E4*d/24/ 3600)/1E4+" days = "+d+" s)",f&&console.log("AI CHECK block",a,b),f&&console.log(""),!1;if("c"==c){g="";e=document.querySelectorAll('span[data-ai-block="'+a+'"]')[0];"aiHash"in e.dataset&&(g=e.dataset.aiHash);e="";b[a].hasOwnProperty("h")&&(e=b[a].h);f&&console.log("AI CHECK block",a,"c cookie hash",e,"code hash",g);if(0==b[a][c]&&e==g)return ai_debug_cookie_status=b="max clicks reached",f&&console.log("AI CHECK block",a,b),f&&console.log(""),!1;if(0>b[a][c]&&e==g){d=new Date;d=-b[a][c]-Math.round(d.getTime()/ 1E3);if(0<d)return ai_debug_cookie_status=b="max clicks reached ("+Math.round(1E4*d/24/3600)/1E4+" days = "+d+" s)",f&&console.log("AI CHECK block",a,b),f&&console.log(""),!1;f&&console.log("AI CHECK block",a,"removing c");ai_set_cookie(a,"c","");b[a].hasOwnProperty("i")||b[a].hasOwnProperty("x")||(f&&console.log("AI CHECK block",a,"cookie h removed"),ai_set_cookie(a,"h",""))}}if("cpt"==c&&0==b[a][c]&&(d=new Date,g=Math.round(d.getTime()/1E3),d=b[a].ct-g,0<d))return ai_debug_cookie_status=b="max clicks per time reached ("+ Math.round(1E4*d/24/3600)/1E4+" days = "+d+" s)",f&&console.log("AI CHECK block",a,b),f&&console.log(""),!1}if(b.hasOwnProperty("G")&&b.G.hasOwnProperty("cpt")&&0==b.G.cpt&&(d=new Date,g=Math.round(d.getTime()/1E3),d=b.G.ct-g,0<d))return ai_debug_cookie_status=b="max global clicks per time reached ("+Math.round(1E4*d/24/3600)/1E4+" days = "+d+" s)",f&&console.log("AI CHECK GLOBAL",b),f&&console.log(""),!1}ai_debug_cookie_status="OK";f&&console.log("AI CHECK block",a,"OK");f&&console.log("");return!0}; ai_check_and_insert_block=function(a,f){var b="undefined"!==typeof ai_debugging;if(null==a)return!0;var c=document.getElementsByClassName(f);if(c.length){c=c[0];var g=c.closest("."+ai_block_class_def),e=ai_check_block(a);!e&&0!=parseInt(c.getAttribute("limits-fallback"))&&c.hasAttribute("data-fallback-code")&&(b&&console.log("AI CHECK FAILED, INSERTING FALLBACK BLOCK",c.getAttribute("limits-fallback")),c.setAttribute("data-code",c.getAttribute("data-fallback-code")),null!=g&&g.hasAttribute("data-ai")&& c.hasAttribute("fallback-tracking")&&c.hasAttribute("fallback_level")&&g.setAttribute("data-ai-"+c.getAttribute("fallback_level"),c.getAttribute("fallback-tracking")),e=!0);c.removeAttribute("data-selector");e?(ai_insert_code(c),g&&(b=g.querySelectorAll(".ai-debug-block"),b.length&&(g.classList.remove("ai-list-block"),g.classList.remove("ai-list-block-ip"),g.classList.remove("ai-list-block-filter"),g.style.visibility="",g.classList.contains("ai-remove-position")&&(g.style.position="")))):(b=c.closest("div[data-ai]"), null!=b&&"undefined"!=typeof b.getAttribute("data-ai")&&(e=JSON.parse(b64d(b.getAttribute("data-ai"))),"undefined"!==typeof e&&e.constructor===Array&&(e[1]="",b.setAttribute("data-ai",b64e(JSON.stringify(e))))),g&&(b=g.querySelectorAll(".ai-debug-block"),b.length&&(g.classList.remove("ai-list-block"),g.classList.remove("ai-list-block-ip"),g.classList.remove("ai-list-block-filter"),g.style.visibility="",g.classList.contains("ai-remove-position")&&(g.style.position=""))));c.classList.remove(f)}c=document.querySelectorAll("."+ f+"-dbg");g=0;for(b=c.length;g<b;g++)e=c[g],e.querySelector(".ai-status").textContent=ai_debug_cookie_status,e.querySelector(".ai-cookie-data").textContent=ai_get_cookie_text(a),e.classList.remove(f+"-dbg")};ai_load_cookie=function(){var a="undefined"!==typeof ai_debugging,f=m(AiCookies.get("aiBLOCKS"));null==f&&(f={},a&&console.log("AI COOKIE NOT PRESENT"));a&&console.log("AI COOKIE LOAD",f);return f};ai_set_cookie=function(a,f,b){var c="undefined"!==typeof ai_debugging;c&&console.log("AI COOKIE SET block:", a,"property:",f,"value:",b);var g=ai_load_cookie();if(""===b){if(g.hasOwnProperty(a)){delete g[a][f];a:{f=g[a];for(e in f)if(f.hasOwnProperty(e)){var e=!1;break a}e=!0}e&&delete g[a]}}else g.hasOwnProperty(a)||(g[a]={}),g[a][f]=b;0===Object.keys(g).length&&g.constructor===Object?(AiCookies.remove("aiBLOCKS"),c&&console.log("AI COOKIE REMOVED")):AiCookies.set("aiBLOCKS",JSON.stringify(g),{expires:365,path:"/"});if(c)if(a=m(AiCookies.get("aiBLOCKS")),"undefined"!=typeof a){console.log("AI COOKIE NEW", a);console.log("AI COOKIE DATA:");for(var d in a){for(var h in a[d])"x"==h?(c=new Date,c=a[d][h]-Math.round(c.getTime()/1E3),console.log(" BLOCK",d,"closed for",c,"s = ",Math.round(1E4*c/3600/24)/1E4,"days")):"d"==h?console.log(" BLOCK",d,"delayed for",a[d][h],"pageviews"):"e"==h?console.log(" BLOCK",d,"show every",a[d][h],"pageviews"):"i"==h?(e=a[d][h],0<=e?console.log(" BLOCK",d,a[d][h],"impressions until limit"):(c=new Date,c=-e-Math.round(c.getTime()/1E3),console.log(" BLOCK",d,"max impressions, closed for", c,"s =",Math.round(1E4*c/3600/24)/1E4,"days"))):"ipt"==h?console.log(" BLOCK",d,a[d][h],"impressions until limit per time period"):"it"==h?(c=new Date,c=a[d][h]-Math.round(c.getTime()/1E3),console.log(" BLOCK",d,"impressions limit expiration in",c,"s =",Math.round(1E4*c/3600/24)/1E4,"days")):"c"==h?(e=a[d][h],0<=e?console.log(" BLOCK",d,e,"clicks until limit"):(c=new Date,c=-e-Math.round(c.getTime()/1E3),console.log(" BLOCK",d,"max clicks, closed for",c,"s =",Math.round(1E4*c/3600/24)/1E4,"days"))): "cpt"==h?console.log(" BLOCK",d,a[d][h],"clicks until limit per time period"):"ct"==h?(c=new Date,c=a[d][h]-Math.round(c.getTime()/1E3),console.log(" BLOCK",d,"clicks limit expiration in ",c,"s =",Math.round(1E4*c/3600/24)/1E4,"days")):"h"==h?console.log(" BLOCK",d,"hash",a[d][h]):console.log(" ?:",d,":",h,a[d][h]);console.log("")}}else console.log("AI COOKIE NOT PRESENT");return g};ai_get_cookie_text=function(a){var f=m(AiCookies.get("aiBLOCKS"));null==f&&(f={});var b="";f.hasOwnProperty("G")&& (b="G["+JSON.stringify(f.G).replace(/"/g,"").replace("{","").replace("}","")+"] ");var c="";f.hasOwnProperty(a)&&(c=JSON.stringify(f[a]).replace(/"/g,"").replace("{","").replace("}",""));return b+c}}; var ai_insertion_js=!0,ai_block_class_def="code-block"; if("undefined"!=typeof ai_insertion_js){ai_insert=function(a,h,l){if(-1!=h.indexOf(":eq("))if(window.jQuery&&window.jQuery.fn)var n=jQuery(h);else{console.error("AI INSERT USING jQuery QUERIES:",h,"- jQuery not found");return}else n=document.querySelectorAll(h);for(var u=0,y=n.length;u<y;u++){var d=n[u];selector_string=d.hasAttribute("id")?"#"+d.getAttribute("id"):d.hasAttribute("class")?"."+d.getAttribute("class").replace(RegExp(" ","g"),"."):"";var w=document.createElement("div");w.innerHTML=l; var m=w.getElementsByClassName("ai-selector-counter")[0];null!=m&&(m.innerText=u+1);m=w.getElementsByClassName("ai-debug-name ai-main")[0];if(null!=m){var r=a.toUpperCase();"undefined"!=typeof ai_front&&("before"==a?r=ai_front.insertion_before:"after"==a?r=ai_front.insertion_after:"prepend"==a?r=ai_front.insertion_prepend:"append"==a?r=ai_front.insertion_append:"replace-content"==a?r=ai_front.insertion_replace_content:"replace-element"==a&&(r=ai_front.insertion_replace_element));-1==selector_string.indexOf(".ai-viewports")&& (m.innerText=r+" "+h+" ("+d.tagName.toLowerCase()+selector_string+")")}m=document.createRange();try{var v=m.createContextualFragment(w.innerHTML)}catch(t){}"before"==a?d.parentNode.insertBefore(v,d):"after"==a?d.parentNode.insertBefore(v,d.nextSibling):"prepend"==a?d.insertBefore(v,d.firstChild):"append"==a?d.insertBefore(v,null):"replace-content"==a?(d.innerHTML="",d.insertBefore(v,null)):"replace-element"==a&&(d.parentNode.insertBefore(v,d),d.parentNode.removeChild(d));z()}};ai_insert_code=function(a){function h(m, r){return null==m?!1:m.classList?m.classList.contains(r):-1<(" "+m.className+" ").indexOf(" "+r+" ")}function l(m,r){null!=m&&(m.classList?m.classList.add(r):m.className+=" "+r)}function n(m,r){null!=m&&(m.classList?m.classList.remove(r):m.className=m.className.replace(new RegExp("(^|\\b)"+r.split(" ").join("|")+"(\\b|$)","gi")," "))}if("undefined"!=typeof a){var u=!1;if(h(a,"no-visibility-check")||a.offsetWidth||a.offsetHeight||a.getClientRects().length){u=a.getAttribute("data-code");var y=a.getAttribute("data-insertion-position"), d=a.getAttribute("data-selector");if(null!=u)if(null!=y&&null!=d){if(-1!=d.indexOf(":eq(")?window.jQuery&&window.jQuery.fn&&jQuery(d).length:document.querySelectorAll(d).length)ai_insert(y,d,b64d(u)),n(a,"ai-viewports")}else{y=document.createRange();try{var w=y.createContextualFragment(b64d(u))}catch(m){}a.parentNode.insertBefore(w,a.nextSibling);n(a,"ai-viewports")}u=!0}else w=a.previousElementSibling,h(w,"ai-debug-bar")&&h(w,"ai-debug-script")&&(n(w,"ai-debug-script"),l(w,"ai-debug-viewport-invisible")), n(a,"ai-viewports");return u}};ai_insert_list_code=function(a){var h=document.getElementsByClassName(a)[0];if("undefined"!=typeof h){var l=ai_insert_code(h),n=h.closest("div."+ai_block_class_def);if(n){l||n.removeAttribute("data-ai");var u=n.querySelectorAll(".ai-debug-block");n&&u.length&&(n.classList.remove("ai-list-block"),n.classList.remove("ai-list-block-ip"),n.classList.remove("ai-list-block-filter"),n.style.visibility="",n.classList.contains("ai-remove-position")&&(n.style.position=""))}h.classList.remove(a); l&&z()}};ai_insert_viewport_code=function(a){var h=document.getElementsByClassName(a)[0];if("undefined"!=typeof h){var l=ai_insert_code(h);h.classList.remove(a);l&&(a=h.closest("div."+ai_block_class_def),null!=a&&(l=h.getAttribute("style"),null!=l&&a.setAttribute("style",a.getAttribute("style")+" "+l)));setTimeout(function(){h.removeAttribute("style")},2);z()}};ai_insert_adsense_fallback_codes=function(a){a.style.display="none";var h=a.closest(".ai-fallback-adsense"),l=h.nextElementSibling;l.getAttribute("data-code")? ai_insert_code(l)&&z():l.style.display="block";h.classList.contains("ai-empty-code")&&null!=a.closest("."+ai_block_class_def)&&(a=a.closest("."+ai_block_class_def).getElementsByClassName("code-block-label"),0!=a.length&&(a[0].style.display="none"))};ai_insert_code_by_class=function(a){var h=document.getElementsByClassName(a)[0];"undefined"!=typeof h&&(ai_insert_code(h),h.classList.remove(a))};ai_insert_client_code=function(a,h){var l=document.getElementsByClassName(a)[0];if("undefined"!=typeof l){var n= l.getAttribute("data-code");null!=n&&ai_check_block()&&(l.setAttribute("data-code",n.substring(Math.floor(h/19))),ai_insert_code_by_class(a),l.remove())}};ai_process_elements_active=!1;function z(){ai_process_elements_active||setTimeout(function(){ai_process_elements_active=!1;"function"==typeof ai_process_rotations&&ai_process_rotations();"function"==typeof ai_process_lists&&ai_process_lists();"function"==typeof ai_process_ip_addresses&&ai_process_ip_addresses();"function"==typeof ai_process_filter_hooks&& ai_process_filter_hooks();"function"==typeof ai_adb_process_blocks&&ai_adb_process_blocks();"function"==typeof ai_process_impressions&&1==ai_tracking_finished&&ai_process_impressions();"function"==typeof ai_install_click_trackers&&1==ai_tracking_finished&&ai_install_click_trackers();"function"==typeof ai_install_close_buttons&&ai_install_close_buttons(document);"function"==typeof ai_process_wait_for_interaction&&ai_process_wait_for_interaction();"function"==typeof ai_process_delayed_blocks&&ai_process_delayed_blocks()}, 5);ai_process_elements_active=!0}const B=document.querySelector("body");(new MutationObserver(function(a,h){for(const l of a)"attributes"===l.type&&"data-ad-status"==l.attributeName&&"unfilled"==l.target.dataset.adStatus&&l.target.closest(".ai-fallback-adsense")&&ai_insert_adsense_fallback_codes(l.target)})).observe(B,{attributes:!0,childList:!1,subtree:!0});var Arrive=function(a,h,l){function n(t,c,e){d.addMethod(c,e,t.unbindEvent);d.addMethod(c,e,t.unbindEventWithSelectorOrCallback);d.addMethod(c, e,t.unbindEventWithSelectorAndCallback)}function u(t){t.arrive=r.bindEvent;n(r,t,"unbindArrive");t.leave=v.bindEvent;n(v,t,"unbindLeave")}if(a.MutationObserver&&"undefined"!==typeof HTMLElement){var y=0,d=function(){var t=HTMLElement.prototype.matches||HTMLElement.prototype.webkitMatchesSelector||HTMLElement.prototype.mozMatchesSelector||HTMLElement.prototype.msMatchesSelector;return{matchesSelector:function(c,e){return c instanceof HTMLElement&&t.call(c,e)},addMethod:function(c,e,f){var b=c[e];c[e]= function(){if(f.length==arguments.length)return f.apply(this,arguments);if("function"==typeof b)return b.apply(this,arguments)}},callCallbacks:function(c,e){e&&e.options.onceOnly&&1==e.firedElems.length&&(c=[c[0]]);for(var f=0,b;b=c[f];f++)b&&b.callback&&b.callback.call(b.elem,b.elem);e&&e.options.onceOnly&&1==e.firedElems.length&&e.me.unbindEventWithSelectorAndCallback.call(e.target,e.selector,e.callback)},checkChildNodesRecursively:function(c,e,f,b){for(var g=0,k;k=c[g];g++)f(k,e,b)&&b.push({callback:e.callback, elem:k}),0<k.childNodes.length&&d.checkChildNodesRecursively(k.childNodes,e,f,b)},mergeArrays:function(c,e){var f={},b;for(b in c)c.hasOwnProperty(b)&&(f[b]=c[b]);for(b in e)e.hasOwnProperty(b)&&(f[b]=e[b]);return f},toElementsArray:function(c){"undefined"===typeof c||"number"===typeof c.length&&c!==a||(c=[c]);return c}}}(),w=function(){var t=function(){this._eventsBucket=[];this._beforeRemoving=this._beforeAdding=null};t.prototype.addEvent=function(c,e,f,b){c={target:c,selector:e,options:f,callback:b, firedElems:[]};this._beforeAdding&&this._beforeAdding(c);this._eventsBucket.push(c);return c};t.prototype.removeEvent=function(c){for(var e=this._eventsBucket.length-1,f;f=this._eventsBucket[e];e--)c(f)&&(this._beforeRemoving&&this._beforeRemoving(f),(f=this._eventsBucket.splice(e,1))&&f.length&&(f[0].callback=null))};t.prototype.beforeAdding=function(c){this._beforeAdding=c};t.prototype.beforeRemoving=function(c){this._beforeRemoving=c};return t}(),m=function(t,c){var e=new w,f=this,b={fireOnAttributesModification:!1}; e.beforeAdding(function(g){var k=g.target;if(k===a.document||k===a)k=document.getElementsByTagName("html")[0];var p=new MutationObserver(function(x){c.call(this,x,g)});var q=t(g.options);p.observe(k,q);g.observer=p;g.me=f});e.beforeRemoving(function(g){g.observer.disconnect()});this.bindEvent=function(g,k,p){k=d.mergeArrays(b,k);for(var q=d.toElementsArray(this),x=0;x<q.length;x++)e.addEvent(q[x],g,k,p)};this.unbindEvent=function(){var g=d.toElementsArray(this);e.removeEvent(function(k){for(var p= 0;p<g.length;p++)if(this===l||k.target===g[p])return!0;return!1})};this.unbindEventWithSelectorOrCallback=function(g){var k=d.toElementsArray(this);e.removeEvent("function"===typeof g?function(p){for(var q=0;q<k.length;q++)if((this===l||p.target===k[q])&&p.callback===g)return!0;return!1}:function(p){for(var q=0;q<k.length;q++)if((this===l||p.target===k[q])&&p.selector===g)return!0;return!1})};this.unbindEventWithSelectorAndCallback=function(g,k){var p=d.toElementsArray(this);e.removeEvent(function(q){for(var x= 0;x<p.length;x++)if((this===l||q.target===p[x])&&q.selector===g&&q.callback===k)return!0;return!1})};return this},r=new function(){function t(f,b,g){return d.matchesSelector(f,b.selector)&&(f._id===l&&(f._id=y++),-1==b.firedElems.indexOf(f._id))?(b.firedElems.push(f._id),!0):!1}var c={fireOnAttributesModification:!1,onceOnly:!1,existing:!1};r=new m(function(f){var b={attributes:!1,childList:!0,subtree:!0};f.fireOnAttributesModification&&(b.attributes=!0);return b},function(f,b){f.forEach(function(g){var k= g.addedNodes,p=g.target,q=[];null!==k&&0<k.length?d.checkChildNodesRecursively(k,b,t,q):"attributes"===g.type&&t(p,b,q)&&q.push({callback:b.callback,elem:p});d.callCallbacks(q,b)})});var e=r.bindEvent;r.bindEvent=function(f,b,g){"undefined"===typeof g?(g=b,b=c):b=d.mergeArrays(c,b);var k=d.toElementsArray(this);if(b.existing){for(var p=[],q=0;q<k.length;q++)for(var x=k[q].querySelectorAll(f),A=0;A<x.length;A++)p.push({callback:g,elem:x[A]});if(b.onceOnly&&p.length)return g.call(p[0].elem,p[0].elem); setTimeout(d.callCallbacks,1,p)}e.call(this,f,b,g)};return r},v=new function(){function t(f,b){return d.matchesSelector(f,b.selector)}var c={};v=new m(function(){return{childList:!0,subtree:!0}},function(f,b){f.forEach(function(g){g=g.removedNodes;var k=[];null!==g&&0<g.length&&d.checkChildNodesRecursively(g,b,t,k);d.callCallbacks(k,b)})});var e=v.bindEvent;v.bindEvent=function(f,b,g){"undefined"===typeof g?(g=b,b=c):b=d.mergeArrays(c,b);e.call(this,f,b,g)};return v};h&&u(h.fn);u(HTMLElement.prototype); u(NodeList.prototype);u(HTMLCollection.prototype);u(HTMLDocument.prototype);u(Window.prototype);h={};n(r,h,"unbindAllArrive");n(v,h,"unbindAllLeave");return h}}(window,"undefined"===typeof jQuery?null:jQuery,void 0)}; var ai_recaptcha_threshold="0.5",ai_recaptcha_site_key="",ai_lazy_loading_offset=600,ai_ajax_url="https://www.on-sitemag.com/wp-admin/admin-ajax.php"; if("undefined"!=typeof ai_recaptcha_site_key){const q=function(c,d){if("DIV"===c.tagName&&c.hasAttribute("data-code")){d=document.createRange();var b=!0;try{var a=d.createContextualFragment(b64d(c.dataset.code))}catch(f){b=!1}b&&c.insertBefore(a,c.firstChild);c.removeAttribute("data-code");a=c.closest("."+b64d(c.dataset.class));c.removeAttribute("data-class");c.removeAttribute("class");"function"==typeof ai_process_lists&&ai_process_lists();"function"==typeof ai_process_ip_addresses&&ai_process_ip_addresses(); "function"==typeof ai_process_filter_hooks&&ai_process_filter_hooks();"function"==typeof ai_process_rotations_in_element&&ai_process_rotations_in_element(c);"function"==typeof ai_adb_process_blocks&&ai_adb_process_blocks();"function"==typeof ai_process_impressions&&null!=a&&1==ai_tracking_finished&&setTimeout(ai_process_impressions,1400);"function"==typeof ai_install_click_trackers&&null!=a&&1==ai_tracking_finished&&setTimeout(ai_install_click_trackers,1500);"function"==typeof ai_install_close_buttons&& null!=a&&ai_install_close_buttons(a);ai_process_wait_for_interaction();ai_process_delayed_blocks()}},p=function(c){const d={intersectionObserverSupport:"IntersectionObserver"in window&&"IntersectionObserverEntry"in window&&"intersectionRatio"in window.IntersectionObserverEntry.prototype,mutationObserverSupport:"MutationObserver"in window,idleCallbackSupport:"requestIdleCallback"in window,eventsToBind:[[document,"scroll"],[document,"touchmove"],[window,"resize"],[window,"orientationchange"]]},b={lazyClass:"ai-lazy", lazyElement:null,throttleTime:200,idlyLoad:!1,idleLoadTimeout:100,threshold:ai_lazy_loading_offset,observeChanges:!1,observeRootSelector:"body",mutationObserverOptions:{childList:!0}};Object.assign(b,c);const a=`div.${b.lazyClass}`,f={timeout:b.idleLoadTimeout};var e=null==b.lazyElement?[].slice.call(document.querySelectorAll(a)):[].push(b.lazyElement);if(!0===d.intersectionObserverSupport){var h=new IntersectionObserver(function(k,g){k.forEach(function(l){var n=l.target;!0===l.isIntersecting&&(!0=== b.idlyLoad&&!0===d.idleCallbackSupport?requestIdleCallback(function(){q(n,d)},f):q(n,d),n.classList.remove(b.lazyClass),g.unobserve(n),e=e.filter(function(r){return r!==n}))})},{rootMargin:`${b.threshold}px 0%`});e.forEach(function(k){h.observe(k)})}else{var m=function(){var k=!1;!1===k&&0<e.length&&(k=!0,setTimeout(function(){e.forEach(function(g){g.getBoundingClientRect().top<=window.innerHeight+b.threshold&&g.getBoundingClientRect().bottom>=-b.threshold&&"none"!==getComputedStyle(g).display&&(!0=== b.idlyLoad&&!0===d.idleCallbackSupport?requestIdleCallback(function(){q(g,d)},f):q(g,d),g.classList.remove(b.lazyClass),e=e.filter(function(l){return l!==g}))});k=!1;0===e.length&&!1===b.observeChanges&&d.eventsToBind.forEach(function(g){g[0].removeEventListener(g[1],m)})},b.throttleTime))};d.eventsToBind.forEach(function(k){k[0].addEventListener(k[1],m)});m()}!0===d.mutationObserverSupport&&!0===b.observeChanges&&(new MutationObserver(function(k){k.forEach(function(g){[].slice.call(document.querySelectorAll(a)).forEach(function(l){-1=== e.indexOf(l)&&(e.push(l),!0===d.intersectionObserverSupport?h.observe(l):m())})})})).observe(document.querySelector(b.observeRootSelector),b.mutationObserverOptions)};(function(c){"complete"===document.readyState||"loading"!==document.readyState&&!document.documentElement.doScroll?c():document.addEventListener("DOMContentLoaded",c)})(function(){setTimeout(function(){p({lazyClass:"ai-lazy",observeChanges:!0,mutationObserverOptions:{childList:!0,attributes:!0,subtree:!0}})},5)});ai_load_blocks=function(c){c= Number.isInteger(c)?"ai-manual-"+c:"ai-manual";p({lazyClass:c,threshold:99999,observeChanges:!0,mutationObserverOptions:{childList:!0,attributes:!0,subtree:!0}});"function"==typeof ai_process_lists&&ai_process_lists()};ai_process_wait_for_interaction=function(){function c(){"undefined"!=typeof a&&clearTimeout(a);ai_user_interaction=!0;d(!1)}function d(f){b.forEach(function(e){window.removeEventListener(e,c,{passive:!0})});p({lazyClass:"ai-wait-for-interaction",threshold:99999,observeChanges:!0,mutationObserverOptions:{childList:!0, attributes:!0,subtree:!0}})}const b=["mouseover","keydown","touchmove","touchstart"];if(0!=document.getElementsByClassName("ai-wait-for-interaction").length){"undefined"==typeof ai_interaction_timeout&&(ai_interaction_timeout=4E3);"undefined"==typeof ai_delay_tracking&&(ai_delay_tracking=0);if(0<ai_interaction_timeout){ai_delay_tracking+=ai_interaction_timeout;var a=setTimeout(d,ai_interaction_timeout,!0)}b.forEach(function(f){window.addEventListener(f,c,{passive:!0})})}};setTimeout(ai_process_wait_for_interaction, 3);ai_process_check_recaptcha_score=function(){"undefined"!=typeof grecaptcha&&""!=ai_recaptcha_site_key&&grecaptcha.ready(function(){grecaptcha.execute(ai_recaptcha_site_key,{action:"submit"}).then(function(c){var d=new XMLHttpRequest;c="ai_check=5fdcf24ebb&recaptcha="+c;d.open("POST",ai_ajax_url+"?action=ai_ajax",!0);d.setRequestHeader("Content-type","application/x-www-form-urlencoded");d.onreadystatechange=function(){if(4==this.readyState&&200==this.status){let e=JSON.parse(this.responseText);if(e&& e.success){ai_recaptcha_score=e.score;const h=document.getElementsByClassName("ai-check-recaptcha-score");if(e.score<1E3*parseFloat(ai_recaptcha_threshold)/1E3)for(var b=0;b<h.length;b++){var a=h[b].closest(".ai-track");null!=a&&a.classList.remove("ai-track");a=h[b].dataset.class;if("undefined"!=typeof a){a=b64d(a);var f=h[b].closest("."+a);null!=f&&(f.classList.remove("ai-list-block"),f.classList.remove("ai-list-block-ip"),a=f.getElementsByClassName("ai-recaptcha-score"),0!=a.length&&(a[0].innerHTML= e.score),a=f.getElementsByClassName("ai-recaptcha-result"),0!=a.length&&(a[0].innerHTML=ai_front.hidden))}}else for(p({lazyClass:"ai-check-recaptcha-score",threshold:99999,observeChanges:!0,mutationObserverOptions:{childList:!0,attributes:!0,subtree:!0}}),b=0;b<h.length;b++)a=h[b].dataset.class,"undefined"!=typeof a&&(a=b64d(a),f=h[b].closest("."+a),null!=f&&(a=f.getElementsByClassName("ai-recaptcha-score"),0!=a.length&&(a[0].innerHTML=e.score),a=f.getElementsByClassName("ai-recaptcha-result"),0!= a.length&&(a[0].innerHTML=ai_front.visible)))}}};d.send(c)})})};setTimeout(ai_process_check_recaptcha_score,2);ai_process_delayed_blocks=function(){var c=document.getElementsByClassName("ai-delayed-unprocessed");if(0!=c.length){function e(m){p({lazyClass:"ai-delayed-"+m,threshold:99999,observeChanges:!0,mutationObserverOptions:{childList:!0,attributes:!0,subtree:!0}})}"undefined"==typeof ai_delay_tracking&&(ai_delay_tracking=0);for(var d=[],b=0;b<c.length;b++){var a=parseInt(c[b].getAttribute("data-block")); d.push(a)}const h=[...(new Set(d))];for(c=0;c<h.length;c++){a=h[c];d=document.getElementsByClassName("ai-delayed-"+a);b=parseInt(d[0].getAttribute("data-delay"));for(var f=d.length-1;0<=f;f--)d[f].classList.remove("ai-delayed-unprocessed");ai_delay_tracking+=b;setTimeout(e,b,a)}}};setTimeout(ai_process_delayed_blocks,1)}; var ai_rotation_triggers=[],ai_block_class_def="code-block"; if("undefined"!=typeof ai_rotation_triggers){ai_process_rotation=function(b){var d="number"==typeof b.length;window.jQuery&&window.jQuery.fn&&b instanceof jQuery&&(b=d?Array.prototype.slice.call(b):b[0]);if(d){var e=!1;b.forEach((c,h)=>{if(c.classList.contains("ai-unprocessed")||c.classList.contains("ai-timer"))e=!0});if(!e)return;b.forEach((c,h)=>{c.classList.remove("ai-unprocessed");c.classList.remove("ai-timer")})}else{if(!b.classList.contains("ai-unprocessed")&&!b.classList.contains("ai-timer"))return; b.classList.remove("ai-unprocessed");b.classList.remove("ai-timer")}var a=!1;if(d?b[0].hasAttribute("data-info"):b.hasAttribute("data-info")){var f="div.ai-rotate.ai-"+(d?JSON.parse(atob(b[0].dataset.info)):JSON.parse(atob(b.dataset.info)))[0];ai_rotation_triggers.includes(f)&&(ai_rotation_triggers.splice(ai_rotation_triggers.indexOf(f),1),a=!0)}if(d)for(d=0;d<b.length;d++)0==d?ai_process_single_rotation(b[d],!0):ai_process_single_rotation(b[d],!1);else ai_process_single_rotation(b,!a)};ai_process_single_rotation= function(b,d){var e=[];Array.from(b.children).forEach((g,p)=>{g.matches(".ai-rotate-option")&&e.push(g)});if(0!=e.length){e.forEach((g,p)=>{g.style.display="none"});if(b.hasAttribute("data-next")){k=parseInt(b.getAttribute("data-next"));var a=e[k];if(a.hasAttribute("data-code")){var f=document.createRange(),c=!0;try{var h=f.createContextualFragment(b64d(a.dataset.code))}catch(g){c=!1}c&&(a=h)}0!=a.querySelectorAll("span[data-ai-groups]").length&&0!=document.querySelectorAll(".ai-rotation-groups").length&& setTimeout(function(){B()},5)}else if(e[0].hasAttribute("data-group")){var k=-1,u=[];document.querySelectorAll("span[data-ai-groups]").forEach((g,p)=>{(g.offsetWidth||g.offsetHeight||g.getClientRects().length)&&u.push(g)});1<=u.length&&(timed_groups=[],groups=[],u.forEach(function(g,p){active_groups=JSON.parse(b64d(g.dataset.aiGroups));var r=!1;g=g.closest(".ai-rotate");null!=g&&g.classList.contains("ai-timed-rotation")&&(r=!0);active_groups.forEach(function(t,v){groups.push(t);r&&timed_groups.push(t)})}), groups.forEach(function(g,p){-1==k&&e.forEach((r,t)=>{var v=b64d(r.dataset.group);option_group_items=v.split(",");option_group_items.forEach(function(C,E){-1==k&&C.trim()==g&&(k=t,timed_groups.includes(v)&&b.classList.add("ai-timed-rotation"))})})}))}else if(b.hasAttribute("data-shares"))for(f=JSON.parse(atob(b.dataset.shares)),a=Math.round(100*Math.random()),c=0;c<f.length&&(k=c,0>f[c]||!(a<=f[c]));c++);else f=b.classList.contains("ai-unique"),a=new Date,f?("number"!=typeof ai_rotation_seed&&(ai_rotation_seed= (Math.floor(1E3*Math.random())+a.getMilliseconds())%e.length),f=ai_rotation_seed,f>e.length&&(f%=e.length),a=parseInt(b.dataset.counter),a<=e.length?(k=parseInt(f+a-1),k>=e.length&&(k-=e.length)):k=e.length):(k=Math.floor(Math.random()*e.length),a.getMilliseconds()%2&&(k=e.length-k-1));if(b.classList.contains("ai-rotation-scheduling"))for(k=-1,f=0;f<e.length;f++)if(a=e[f],a.hasAttribute("data-scheduling")){c=b64d(a.dataset.scheduling);a=!0;0==c.indexOf("^")&&(a=!1,c=c.substring(1));var q=c.split("="), m=-1!=c.indexOf("%")?q[0].split("%"):[q[0]];c=m[0].trim().toLowerCase();m="undefined"!=typeof m[1]?m[1].trim():0;q=q[1].replace(" ","");var n=(new Date).getTime();n=new Date(n);var l=0;switch(c){case "s":l=n.getSeconds();break;case "i":l=n.getMinutes();break;case "h":l=n.getHours();break;case "d":l=n.getDate();break;case "m":l=n.getMonth();break;case "y":l=n.getFullYear();break;case "w":l=n.getDay(),l=0==l?6:l-1}c=0!=m?l%m:l;m=q.split(",");q=!a;for(n=0;n<m.length;n++)if(l=m[n],-1!=l.indexOf("-")){if(l= l.split("-"),c>=l[0]&&c<=l[1]){q=a;break}}else if(c==l){q=a;break}if(q){k=f;break}}if(!(0>k||k>=e.length)){a=e[k];var z="",w=b.classList.contains("ai-timed-rotation");e.forEach((g,p)=>{g.hasAttribute("data-time")&&(w=!0)});if(a.hasAttribute("data-time")){f=atob(a.dataset.time);if(0==f&&1<e.length){c=k;do{c++;c>=e.length&&(c=0);m=e[c];if(!m.hasAttribute("data-time")){k=c;a=e[k];f=0;break}m=atob(m.dataset.time)}while(0==m&&c!=k);0!=f&&(k=c,a=e[k],f=atob(a.dataset.time))}if(0<f&&(c=k+1,c>=e.length&& (c=0),b.hasAttribute("data-info"))){m=JSON.parse(atob(b.dataset.info))[0];b.setAttribute("data-next",c);var x="div.ai-rotate.ai-"+m;ai_rotation_triggers.includes(x)&&(d=!1);d&&(ai_rotation_triggers.push(x),setTimeout(function(){var g=document.querySelectorAll(x);g.forEach((p,r)=>{p.classList.add("ai-timer")});ai_process_rotation(g)},1E3*f));z=" ("+f+" s)"}}else a.hasAttribute("data-group")||e.forEach((g,p)=>{p!=k&&g.remove()});a.style.display="";a.style.visibility="";a.style.position="";a.style.width= "";a.style.height="";a.style.top="";a.style.left="";a.classList.remove("ai-rotate-hidden");a.classList.remove("ai-rotate-hidden-2");b.style.position="";if(a.hasAttribute("data-code")){e.forEach((g,p)=>{g.innerText=""});d=b64d(a.dataset.code);f=document.createRange();c=!0;try{h=f.createContextualFragment(d)}catch(g){c=!1}a.append(h);D()}f=parseInt(a.dataset.index);var y=b64d(a.dataset.name);d=b.closest(".ai-debug-block");if(null!=d){h=d.querySelectorAll("kbd.ai-option-name");d=d.querySelectorAll(".ai-debug-block"); if(0!=d.length){var A=[];d.forEach((g,p)=>{g.querySelectorAll("kbd.ai-option-name").forEach((r,t)=>{A.push(r)})});h=Array.from(h);h=h.slice(0,h.length-A.length)}0!=h.length&&(separator=h[0].hasAttribute("data-separator")?h[0].dataset.separator:"",h.forEach((g,p)=>{g.innerText=separator+y+z}))}d=!1;a=b.closest(".ai-adb-show");null!=a&&a.hasAttribute("data-ai-tracking")&&(h=JSON.parse(b64d(a.getAttribute("data-ai-tracking"))),"undefined"!==typeof h&&h.constructor===Array&&(h[1]=f,h[3]=y,a.setAttribute("data-ai-tracking", b64e(JSON.stringify(h))),a.classList.add("ai-track"),w&&ai_tracking_finished&&a.classList.add("ai-no-pageview"),d=!0));d||(d=b.closest("div[data-ai]"),null!=d&&d.hasAttribute("data-ai")&&(h=JSON.parse(b64d(d.getAttribute("data-ai"))),"undefined"!==typeof h&&h.constructor===Array&&(h[1]=f,h[3]=y,d.setAttribute("data-ai",b64e(JSON.stringify(h))),d.classList.add("ai-track"),w&&ai_tracking_finished&&d.classList.add("ai-no-pageview"))))}}};ai_process_rotations=function(){document.querySelectorAll("div.ai-rotate").forEach((b, d)=>{ai_process_rotation(b)})};function B(){document.querySelectorAll("div.ai-rotate.ai-rotation-groups").forEach((b,d)=>{b.classList.add("ai-timer");ai_process_rotation(b)})}ai_process_rotations_in_element=function(b){null!=b&&b.querySelectorAll("div.ai-rotate").forEach((d,e)=>{ai_process_rotation(d)})};(function(b){"complete"===document.readyState||"loading"!==document.readyState&&!document.documentElement.doScroll?b():document.addEventListener("DOMContentLoaded",b)})(function(){setTimeout(function(){ai_process_rotations()}, 10)});ai_process_elements_active=!1;function D(){ai_process_elements_active||setTimeout(function(){ai_process_elements_active=!1;"function"==typeof ai_process_rotations&&ai_process_rotations();"function"==typeof ai_process_lists&&ai_process_lists();"function"==typeof ai_process_ip_addresses&&ai_process_ip_addresses();"function"==typeof ai_process_filter_hooks&&ai_process_filter_hooks();"function"==typeof ai_adb_process_blocks&&ai_adb_process_blocks();"function"==typeof ai_process_impressions&&1== ai_tracking_finished&&ai_process_impressions();"function"==typeof ai_install_click_trackers&&1==ai_tracking_finished&&ai_install_click_trackers();"function"==typeof ai_install_close_buttons&&ai_install_close_buttons(document)},5);ai_process_elements_active=!0}}; ;!function(a,b){a(function(){"use strict";function a(a,b){return null!=a&&null!=b&&a.toLowerCase()===b.toLowerCase()}function c(a,b){var c,d,e=a.length;if(!e||!b)return!1;for(c=b.toLowerCase(),d=0;d<e;++d)if(c===a[d].toLowerCase())return!0;return!1}function d(a){for(var b in a)i.call(a,b)&&(a[b]=new RegExp(a[b],"i"))}function e(a){return(a||"").substr(0,500)}function f(a,b){this.ua=e(a),this._cache={},this.maxPhoneWidth=b||600}var g={};g.mobileDetectRules={phones:{iPhone:"\\biPhone\\b|\\biPod\\b",BlackBerry:"BlackBerry|\\bBB10\\b|rim[0-9]+|\\b(BBA100|BBB100|BBD100|BBE100|BBF100|STH100)\\b-[0-9]+",Pixel:"; \\bPixel\\b",HTC:"HTC|HTC.*(Sensation|Evo|Vision|Explorer|6800|8100|8900|A7272|S510e|C110e|Legend|Desire|T8282)|APX515CKT|Qtek9090|APA9292KT|HD_mini|Sensation.*Z710e|PG86100|Z715e|Desire.*(A8181|HD)|ADR6200|ADR6400L|ADR6425|001HT|Inspire 4G|Android.*\\bEVO\\b|T-Mobile G1|Z520m|Android [0-9.]+; Pixel",Nexus:"Nexus One|Nexus S|Galaxy.*Nexus|Android.*Nexus.*Mobile|Nexus 4|Nexus 5|Nexus 5X|Nexus 6",Dell:"Dell[;]? (Streak|Aero|Venue|Venue Pro|Flash|Smoke|Mini 3iX)|XCD28|XCD35|\\b001DL\\b|\\b101DL\\b|\\bGS01\\b",Motorola:"Motorola|DROIDX|DROID BIONIC|\\bDroid\\b.*Build|Android.*Xoom|HRI39|MOT-|A1260|A1680|A555|A853|A855|A953|A955|A956|Motorola.*ELECTRIFY|Motorola.*i1|i867|i940|MB200|MB300|MB501|MB502|MB508|MB511|MB520|MB525|MB526|MB611|MB612|MB632|MB810|MB855|MB860|MB861|MB865|MB870|ME501|ME502|ME511|ME525|ME600|ME632|ME722|ME811|ME860|ME863|ME865|MT620|MT710|MT716|MT720|MT810|MT870|MT917|Motorola.*TITANIUM|WX435|WX445|XT300|XT301|XT311|XT316|XT317|XT319|XT320|XT390|XT502|XT530|XT531|XT532|XT535|XT603|XT610|XT611|XT615|XT681|XT701|XT702|XT711|XT720|XT800|XT806|XT860|XT862|XT875|XT882|XT883|XT894|XT901|XT907|XT909|XT910|XT912|XT928|XT926|XT915|XT919|XT925|XT1021|\\bMoto E\\b|XT1068|XT1092|XT1052",Samsung:"\\bSamsung\\b|SM-G950F|SM-G955F|SM-G9250|GT-19300|SGH-I337|BGT-S5230|GT-B2100|GT-B2700|GT-B2710|GT-B3210|GT-B3310|GT-B3410|GT-B3730|GT-B3740|GT-B5510|GT-B5512|GT-B5722|GT-B6520|GT-B7300|GT-B7320|GT-B7330|GT-B7350|GT-B7510|GT-B7722|GT-B7800|GT-C3010|GT-C3011|GT-C3060|GT-C3200|GT-C3212|GT-C3212I|GT-C3262|GT-C3222|GT-C3300|GT-C3300K|GT-C3303|GT-C3303K|GT-C3310|GT-C3322|GT-C3330|GT-C3350|GT-C3500|GT-C3510|GT-C3530|GT-C3630|GT-C3780|GT-C5010|GT-C5212|GT-C6620|GT-C6625|GT-C6712|GT-E1050|GT-E1070|GT-E1075|GT-E1080|GT-E1081|GT-E1085|GT-E1087|GT-E1100|GT-E1107|GT-E1110|GT-E1120|GT-E1125|GT-E1130|GT-E1160|GT-E1170|GT-E1175|GT-E1180|GT-E1182|GT-E1200|GT-E1210|GT-E1225|GT-E1230|GT-E1390|GT-E2100|GT-E2120|GT-E2121|GT-E2152|GT-E2220|GT-E2222|GT-E2230|GT-E2232|GT-E2250|GT-E2370|GT-E2550|GT-E2652|GT-E3210|GT-E3213|GT-I5500|GT-I5503|GT-I5700|GT-I5800|GT-I5801|GT-I6410|GT-I6420|GT-I7110|GT-I7410|GT-I7500|GT-I8000|GT-I8150|GT-I8160|GT-I8190|GT-I8320|GT-I8330|GT-I8350|GT-I8530|GT-I8700|GT-I8703|GT-I8910|GT-I9000|GT-I9001|GT-I9003|GT-I9010|GT-I9020|GT-I9023|GT-I9070|GT-I9082|GT-I9100|GT-I9103|GT-I9220|GT-I9250|GT-I9300|GT-I9305|GT-I9500|GT-I9505|GT-M3510|GT-M5650|GT-M7500|GT-M7600|GT-M7603|GT-M8800|GT-M8910|GT-N7000|GT-S3110|GT-S3310|GT-S3350|GT-S3353|GT-S3370|GT-S3650|GT-S3653|GT-S3770|GT-S3850|GT-S5210|GT-S5220|GT-S5229|GT-S5230|GT-S5233|GT-S5250|GT-S5253|GT-S5260|GT-S5263|GT-S5270|GT-S5300|GT-S5330|GT-S5350|GT-S5360|GT-S5363|GT-S5369|GT-S5380|GT-S5380D|GT-S5560|GT-S5570|GT-S5600|GT-S5603|GT-S5610|GT-S5620|GT-S5660|GT-S5670|GT-S5690|GT-S5750|GT-S5780|GT-S5830|GT-S5839|GT-S6102|GT-S6500|GT-S7070|GT-S7200|GT-S7220|GT-S7230|GT-S7233|GT-S7250|GT-S7500|GT-S7530|GT-S7550|GT-S7562|GT-S7710|GT-S8000|GT-S8003|GT-S8500|GT-S8530|GT-S8600|SCH-A310|SCH-A530|SCH-A570|SCH-A610|SCH-A630|SCH-A650|SCH-A790|SCH-A795|SCH-A850|SCH-A870|SCH-A890|SCH-A930|SCH-A950|SCH-A970|SCH-A990|SCH-I100|SCH-I110|SCH-I400|SCH-I405|SCH-I500|SCH-I510|SCH-I515|SCH-I600|SCH-I730|SCH-I760|SCH-I770|SCH-I830|SCH-I910|SCH-I920|SCH-I959|SCH-LC11|SCH-N150|SCH-N300|SCH-R100|SCH-R300|SCH-R351|SCH-R400|SCH-R410|SCH-T300|SCH-U310|SCH-U320|SCH-U350|SCH-U360|SCH-U365|SCH-U370|SCH-U380|SCH-U410|SCH-U430|SCH-U450|SCH-U460|SCH-U470|SCH-U490|SCH-U540|SCH-U550|SCH-U620|SCH-U640|SCH-U650|SCH-U660|SCH-U700|SCH-U740|SCH-U750|SCH-U810|SCH-U820|SCH-U900|SCH-U940|SCH-U960|SCS-26UC|SGH-A107|SGH-A117|SGH-A127|SGH-A137|SGH-A157|SGH-A167|SGH-A177|SGH-A187|SGH-A197|SGH-A227|SGH-A237|SGH-A257|SGH-A437|SGH-A517|SGH-A597|SGH-A637|SGH-A657|SGH-A667|SGH-A687|SGH-A697|SGH-A707|SGH-A717|SGH-A727|SGH-A737|SGH-A747|SGH-A767|SGH-A777|SGH-A797|SGH-A817|SGH-A827|SGH-A837|SGH-A847|SGH-A867|SGH-A877|SGH-A887|SGH-A897|SGH-A927|SGH-B100|SGH-B130|SGH-B200|SGH-B220|SGH-C100|SGH-C110|SGH-C120|SGH-C130|SGH-C140|SGH-C160|SGH-C170|SGH-C180|SGH-C200|SGH-C207|SGH-C210|SGH-C225|SGH-C230|SGH-C417|SGH-C450|SGH-D307|SGH-D347|SGH-D357|SGH-D407|SGH-D415|SGH-D780|SGH-D807|SGH-D980|SGH-E105|SGH-E200|SGH-E315|SGH-E316|SGH-E317|SGH-E335|SGH-E590|SGH-E635|SGH-E715|SGH-E890|SGH-F300|SGH-F480|SGH-I200|SGH-I300|SGH-I320|SGH-I550|SGH-I577|SGH-I600|SGH-I607|SGH-I617|SGH-I627|SGH-I637|SGH-I677|SGH-I700|SGH-I717|SGH-I727|SGH-i747M|SGH-I777|SGH-I780|SGH-I827|SGH-I847|SGH-I857|SGH-I896|SGH-I897|SGH-I900|SGH-I907|SGH-I917|SGH-I927|SGH-I937|SGH-I997|SGH-J150|SGH-J200|SGH-L170|SGH-L700|SGH-M110|SGH-M150|SGH-M200|SGH-N105|SGH-N500|SGH-N600|SGH-N620|SGH-N625|SGH-N700|SGH-N710|SGH-P107|SGH-P207|SGH-P300|SGH-P310|SGH-P520|SGH-P735|SGH-P777|SGH-Q105|SGH-R210|SGH-R220|SGH-R225|SGH-S105|SGH-S307|SGH-T109|SGH-T119|SGH-T139|SGH-T209|SGH-T219|SGH-T229|SGH-T239|SGH-T249|SGH-T259|SGH-T309|SGH-T319|SGH-T329|SGH-T339|SGH-T349|SGH-T359|SGH-T369|SGH-T379|SGH-T409|SGH-T429|SGH-T439|SGH-T459|SGH-T469|SGH-T479|SGH-T499|SGH-T509|SGH-T519|SGH-T539|SGH-T559|SGH-T589|SGH-T609|SGH-T619|SGH-T629|SGH-T639|SGH-T659|SGH-T669|SGH-T679|SGH-T709|SGH-T719|SGH-T729|SGH-T739|SGH-T746|SGH-T749|SGH-T759|SGH-T769|SGH-T809|SGH-T819|SGH-T839|SGH-T919|SGH-T929|SGH-T939|SGH-T959|SGH-T989|SGH-U100|SGH-U200|SGH-U800|SGH-V205|SGH-V206|SGH-X100|SGH-X105|SGH-X120|SGH-X140|SGH-X426|SGH-X427|SGH-X475|SGH-X495|SGH-X497|SGH-X507|SGH-X600|SGH-X610|SGH-X620|SGH-X630|SGH-X700|SGH-X820|SGH-X890|SGH-Z130|SGH-Z150|SGH-Z170|SGH-ZX10|SGH-ZX20|SHW-M110|SPH-A120|SPH-A400|SPH-A420|SPH-A460|SPH-A500|SPH-A560|SPH-A600|SPH-A620|SPH-A660|SPH-A700|SPH-A740|SPH-A760|SPH-A790|SPH-A800|SPH-A820|SPH-A840|SPH-A880|SPH-A900|SPH-A940|SPH-A960|SPH-D600|SPH-D700|SPH-D710|SPH-D720|SPH-I300|SPH-I325|SPH-I330|SPH-I350|SPH-I500|SPH-I600|SPH-I700|SPH-L700|SPH-M100|SPH-M220|SPH-M240|SPH-M300|SPH-M305|SPH-M320|SPH-M330|SPH-M350|SPH-M360|SPH-M370|SPH-M380|SPH-M510|SPH-M540|SPH-M550|SPH-M560|SPH-M570|SPH-M580|SPH-M610|SPH-M620|SPH-M630|SPH-M800|SPH-M810|SPH-M850|SPH-M900|SPH-M910|SPH-M920|SPH-M930|SPH-N100|SPH-N200|SPH-N240|SPH-N300|SPH-N400|SPH-Z400|SWC-E100|SCH-i909|GT-N7100|GT-N7105|SCH-I535|SM-N900A|SGH-I317|SGH-T999L|GT-S5360B|GT-I8262|GT-S6802|GT-S6312|GT-S6310|GT-S5312|GT-S5310|GT-I9105|GT-I8510|GT-S6790N|SM-G7105|SM-N9005|GT-S5301|GT-I9295|GT-I9195|SM-C101|GT-S7392|GT-S7560|GT-B7610|GT-I5510|GT-S7582|GT-S7530E|GT-I8750|SM-G9006V|SM-G9008V|SM-G9009D|SM-G900A|SM-G900D|SM-G900F|SM-G900H|SM-G900I|SM-G900J|SM-G900K|SM-G900L|SM-G900M|SM-G900P|SM-G900R4|SM-G900S|SM-G900T|SM-G900V|SM-G900W8|SHV-E160K|SCH-P709|SCH-P729|SM-T2558|GT-I9205|SM-G9350|SM-J120F|SM-G920F|SM-G920V|SM-G930F|SM-N910C|SM-A310F|GT-I9190|SM-J500FN|SM-G903F|SM-J330F|SM-G610F|SM-G981B|SM-G892A|SM-A530F",LG:"\\bLG\\b;|LG[- ]?(C800|C900|E400|E610|E900|E-900|F160|F180K|F180L|F180S|730|855|L160|LS740|LS840|LS970|LU6200|MS690|MS695|MS770|MS840|MS870|MS910|P500|P700|P705|VM696|AS680|AS695|AX840|C729|E970|GS505|272|C395|E739BK|E960|L55C|L75C|LS696|LS860|P769BK|P350|P500|P509|P870|UN272|US730|VS840|VS950|LN272|LN510|LS670|LS855|LW690|MN270|MN510|P509|P769|P930|UN200|UN270|UN510|UN610|US670|US740|US760|UX265|UX840|VN271|VN530|VS660|VS700|VS740|VS750|VS910|VS920|VS930|VX9200|VX11000|AX840A|LW770|P506|P925|P999|E612|D955|D802|MS323|M257)|LM-G710",Sony:"SonyST|SonyLT|SonyEricsson|SonyEricssonLT15iv|LT18i|E10i|LT28h|LT26w|SonyEricssonMT27i|C5303|C6902|C6903|C6906|C6943|D2533|SOV34|601SO|F8332",Asus:"Asus.*Galaxy|PadFone.*Mobile",Xiaomi:"^(?!.*\\bx11\\b).*xiaomi.*$|POCOPHONE F1|MI 8|Redmi Note 9S|Redmi Note 5A Prime|N2G47H|M2001J2G|M2001J2I|M1805E10A|M2004J11G|M1902F1G|M2002J9G|M2004J19G|M2003J6A1G",NokiaLumia:"Lumia [0-9]{3,4}",Micromax:"Micromax.*\\b(A210|A92|A88|A72|A111|A110Q|A115|A116|A110|A90S|A26|A51|A35|A54|A25|A27|A89|A68|A65|A57|A90)\\b",Palm:"PalmSource|Palm",Vertu:"Vertu|Vertu.*Ltd|Vertu.*Ascent|Vertu.*Ayxta|Vertu.*Constellation(F|Quest)?|Vertu.*Monika|Vertu.*Signature",Pantech:"PANTECH|IM-A850S|IM-A840S|IM-A830L|IM-A830K|IM-A830S|IM-A820L|IM-A810K|IM-A810S|IM-A800S|IM-T100K|IM-A725L|IM-A780L|IM-A775C|IM-A770K|IM-A760S|IM-A750K|IM-A740S|IM-A730S|IM-A720L|IM-A710K|IM-A690L|IM-A690S|IM-A650S|IM-A630K|IM-A600S|VEGA PTL21|PT003|P8010|ADR910L|P6030|P6020|P9070|P4100|P9060|P5000|CDM8992|TXT8045|ADR8995|IS11PT|P2030|P6010|P8000|PT002|IS06|CDM8999|P9050|PT001|TXT8040|P2020|P9020|P2000|P7040|P7000|C790",Fly:"IQ230|IQ444|IQ450|IQ440|IQ442|IQ441|IQ245|IQ256|IQ236|IQ255|IQ235|IQ245|IQ275|IQ240|IQ285|IQ280|IQ270|IQ260|IQ250",Wiko:"KITE 4G|HIGHWAY|GETAWAY|STAIRWAY|DARKSIDE|DARKFULL|DARKNIGHT|DARKMOON|SLIDE|WAX 4G|RAINBOW|BLOOM|SUNSET|GOA(?!nna)|LENNY|BARRY|IGGY|OZZY|CINK FIVE|CINK PEAX|CINK PEAX 2|CINK SLIM|CINK SLIM 2|CINK +|CINK KING|CINK PEAX|CINK SLIM|SUBLIM",iMobile:"i-mobile (IQ|i-STYLE|idea|ZAA|Hitz)",SimValley:"\\b(SP-80|XT-930|SX-340|XT-930|SX-310|SP-360|SP60|SPT-800|SP-120|SPT-800|SP-140|SPX-5|SPX-8|SP-100|SPX-8|SPX-12)\\b",Wolfgang:"AT-B24D|AT-AS50HD|AT-AS40W|AT-AS55HD|AT-AS45q2|AT-B26D|AT-AS50Q",Alcatel:"Alcatel",Nintendo:"Nintendo (3DS|Switch)",Amoi:"Amoi",INQ:"INQ",OnePlus:"ONEPLUS",GenericPhone:"Tapatalk|PDA;|SAGEM|\\bmmp\\b|pocket|\\bpsp\\b|symbian|Smartphone|smartfon|treo|up.browser|up.link|vodafone|\\bwap\\b|nokia|Series40|Series60|S60|SonyEricsson|N900|MAUI.*WAP.*Browser"},tablets:{iPad:"iPad|iPad.*Mobile",NexusTablet:"Android.*Nexus[\\s]+(7|9|10)",GoogleTablet:"Android.*Pixel C",SamsungTablet:"SAMSUNG.*Tablet|Galaxy.*Tab|SC-01C|GT-P1000|GT-P1003|GT-P1010|GT-P3105|GT-P6210|GT-P6800|GT-P6810|GT-P7100|GT-P7300|GT-P7310|GT-P7500|GT-P7510|SCH-I800|SCH-I815|SCH-I905|SGH-I957|SGH-I987|SGH-T849|SGH-T859|SGH-T869|SPH-P100|GT-P3100|GT-P3108|GT-P3110|GT-P5100|GT-P5110|GT-P6200|GT-P7320|GT-P7511|GT-N8000|GT-P8510|SGH-I497|SPH-P500|SGH-T779|SCH-I705|SCH-I915|GT-N8013|GT-P3113|GT-P5113|GT-P8110|GT-N8010|GT-N8005|GT-N8020|GT-P1013|GT-P6201|GT-P7501|GT-N5100|GT-N5105|GT-N5110|SHV-E140K|SHV-E140L|SHV-E140S|SHV-E150S|SHV-E230K|SHV-E230L|SHV-E230S|SHW-M180K|SHW-M180L|SHW-M180S|SHW-M180W|SHW-M300W|SHW-M305W|SHW-M380K|SHW-M380S|SHW-M380W|SHW-M430W|SHW-M480K|SHW-M480S|SHW-M480W|SHW-M485W|SHW-M486W|SHW-M500W|GT-I9228|SCH-P739|SCH-I925|GT-I9200|GT-P5200|GT-P5210|GT-P5210X|SM-T311|SM-T310|SM-T310X|SM-T210|SM-T210R|SM-T211|SM-P600|SM-P601|SM-P605|SM-P900|SM-P901|SM-T217|SM-T217A|SM-T217S|SM-P6000|SM-T3100|SGH-I467|XE500|SM-T110|GT-P5220|GT-I9200X|GT-N5110X|GT-N5120|SM-P905|SM-T111|SM-T2105|SM-T315|SM-T320|SM-T320X|SM-T321|SM-T520|SM-T525|SM-T530NU|SM-T230NU|SM-T330NU|SM-T900|XE500T1C|SM-P605V|SM-P905V|SM-T337V|SM-T537V|SM-T707V|SM-T807V|SM-P600X|SM-P900X|SM-T210X|SM-T230|SM-T230X|SM-T325|GT-P7503|SM-T531|SM-T330|SM-T530|SM-T705|SM-T705C|SM-T535|SM-T331|SM-T800|SM-T700|SM-T537|SM-T807|SM-P907A|SM-T337A|SM-T537A|SM-T707A|SM-T807A|SM-T237|SM-T807P|SM-P607T|SM-T217T|SM-T337T|SM-T807T|SM-T116NQ|SM-T116BU|SM-P550|SM-T350|SM-T550|SM-T9000|SM-P9000|SM-T705Y|SM-T805|GT-P3113|SM-T710|SM-T810|SM-T815|SM-T360|SM-T533|SM-T113|SM-T335|SM-T715|SM-T560|SM-T670|SM-T677|SM-T377|SM-T567|SM-T357T|SM-T555|SM-T561|SM-T713|SM-T719|SM-T813|SM-T819|SM-T580|SM-T355Y?|SM-T280|SM-T817A|SM-T820|SM-W700|SM-P580|SM-T587|SM-P350|SM-P555M|SM-P355M|SM-T113NU|SM-T815Y|SM-T585|SM-T285|SM-T825|SM-W708|SM-T835|SM-T830|SM-T837V|SM-T720|SM-T510|SM-T387V|SM-P610|SM-T290|SM-T515|SM-T590|SM-T595|SM-T725|SM-T817P|SM-P585N0|SM-T395|SM-T295|SM-T865|SM-P610N|SM-P615|SM-T970|SM-T380|SM-T5950|SM-T905|SM-T231|SM-T500|SM-T860",Kindle:"Kindle|Silk.*Accelerated|Android.*\\b(KFOT|KFTT|KFJWI|KFJWA|KFOTE|KFSOWI|KFTHWI|KFTHWA|KFAPWI|KFAPWA|WFJWAE|KFSAWA|KFSAWI|KFASWI|KFARWI|KFFOWI|KFGIWI|KFMEWI)\\b|Android.*Silk/[0-9.]+ like Chrome/[0-9.]+ (?!Mobile)",SurfaceTablet:"Windows NT [0-9.]+; ARM;.*(Tablet|ARMBJS)",HPTablet:"HP Slate (7|8|10)|HP ElitePad 900|hp-tablet|EliteBook.*Touch|HP 8|Slate 21|HP SlateBook 10",AsusTablet:"^.*PadFone((?!Mobile).)*$|Transformer|TF101|TF101G|TF300T|TF300TG|TF300TL|TF700T|TF700KL|TF701T|TF810C|ME171|ME301T|ME302C|ME371MG|ME370T|ME372MG|ME172V|ME173X|ME400C|Slider SL101|\\bK00F\\b|\\bK00C\\b|\\bK00E\\b|\\bK00L\\b|TX201LA|ME176C|ME102A|\\bM80TA\\b|ME372CL|ME560CG|ME372CG|ME302KL| K010 | K011 | K017 | K01E |ME572C|ME103K|ME170C|ME171C|\\bME70C\\b|ME581C|ME581CL|ME8510C|ME181C|P01Y|PO1MA|P01Z|\\bP027\\b|\\bP024\\b|\\bP00C\\b",BlackBerryTablet:"PlayBook|RIM Tablet",HTCtablet:"HTC_Flyer_P512|HTC Flyer|HTC Jetstream|HTC-P715a|HTC EVO View 4G|PG41200|PG09410",MotorolaTablet:"xoom|sholest|MZ615|MZ605|MZ505|MZ601|MZ602|MZ603|MZ604|MZ606|MZ607|MZ608|MZ609|MZ615|MZ616|MZ617",NookTablet:"Android.*Nook|NookColor|nook browser|BNRV200|BNRV200A|BNTV250|BNTV250A|BNTV400|BNTV600|LogicPD Zoom2",AcerTablet:"Android.*; \\b(A100|A101|A110|A200|A210|A211|A500|A501|A510|A511|A700|A701|W500|W500P|W501|W501P|W510|W511|W700|G100|G100W|B1-A71|B1-710|B1-711|A1-810|A1-811|A1-830)\\b|W3-810|\\bA3-A10\\b|\\bA3-A11\\b|\\bA3-A20\\b|\\bA3-A30|A3-A40",ToshibaTablet:"Android.*(AT100|AT105|AT200|AT205|AT270|AT275|AT300|AT305|AT1S5|AT500|AT570|AT700|AT830)|TOSHIBA.*FOLIO",LGTablet:"\\bL-06C|LG-V909|LG-V900|LG-V700|LG-V510|LG-V500|LG-V410|LG-V400|LG-VK810\\b",FujitsuTablet:"Android.*\\b(F-01D|F-02F|F-05E|F-10D|M532|Q572)\\b",PrestigioTablet:"PMP3170B|PMP3270B|PMP3470B|PMP7170B|PMP3370B|PMP3570C|PMP5870C|PMP3670B|PMP5570C|PMP5770D|PMP3970B|PMP3870C|PMP5580C|PMP5880D|PMP5780D|PMP5588C|PMP7280C|PMP7280C3G|PMP7280|PMP7880D|PMP5597D|PMP5597|PMP7100D|PER3464|PER3274|PER3574|PER3884|PER5274|PER5474|PMP5097CPRO|PMP5097|PMP7380D|PMP5297C|PMP5297C_QUAD|PMP812E|PMP812E3G|PMP812F|PMP810E|PMP880TD|PMT3017|PMT3037|PMT3047|PMT3057|PMT7008|PMT5887|PMT5001|PMT5002",LenovoTablet:"Lenovo TAB|Idea(Tab|Pad)( A1|A10| K1|)|ThinkPad([ ]+)?Tablet|YT3-850M|YT3-X90L|YT3-X90F|YT3-X90X|Lenovo.*(S2109|S2110|S5000|S6000|K3011|A3000|A3500|A1000|A2107|A2109|A1107|A5500|A7600|B6000|B8000|B8080)(-|)(FL|F|HV|H|)|TB-X103F|TB-X304X|TB-X304F|TB-X304L|TB-X505F|TB-X505L|TB-X505X|TB-X605F|TB-X605L|TB-8703F|TB-8703X|TB-8703N|TB-8704N|TB-8704F|TB-8704X|TB-8704V|TB-7304F|TB-7304I|TB-7304X|Tab2A7-10F|Tab2A7-20F|TB2-X30L|YT3-X50L|YT3-X50F|YT3-X50M|YT-X705F|YT-X703F|YT-X703L|YT-X705L|YT-X705X|TB2-X30F|TB2-X30L|TB2-X30M|A2107A-F|A2107A-H|TB3-730F|TB3-730M|TB3-730X|TB-7504F|TB-7504X|TB-X704F|TB-X104F|TB3-X70F|TB-X705F|TB-8504F|TB3-X70L|TB3-710F|TB-X704L",DellTablet:"Venue 11|Venue 8|Venue 7|Dell Streak 10|Dell Streak 7",YarvikTablet:"Android.*\\b(TAB210|TAB211|TAB224|TAB250|TAB260|TAB264|TAB310|TAB360|TAB364|TAB410|TAB411|TAB420|TAB424|TAB450|TAB460|TAB461|TAB464|TAB465|TAB467|TAB468|TAB07-100|TAB07-101|TAB07-150|TAB07-151|TAB07-152|TAB07-200|TAB07-201-3G|TAB07-210|TAB07-211|TAB07-212|TAB07-214|TAB07-220|TAB07-400|TAB07-485|TAB08-150|TAB08-200|TAB08-201-3G|TAB08-201-30|TAB09-100|TAB09-211|TAB09-410|TAB10-150|TAB10-201|TAB10-211|TAB10-400|TAB10-410|TAB13-201|TAB274EUK|TAB275EUK|TAB374EUK|TAB462EUK|TAB474EUK|TAB9-200)\\b",MedionTablet:"Android.*\\bOYO\\b|LIFE.*(P9212|P9514|P9516|S9512)|LIFETAB",ArnovaTablet:"97G4|AN10G2|AN7bG3|AN7fG3|AN8G3|AN8cG3|AN7G3|AN9G3|AN7dG3|AN7dG3ST|AN7dG3ChildPad|AN10bG3|AN10bG3DT|AN9G2",IntensoTablet:"INM8002KP|INM1010FP|INM805ND|Intenso Tab|TAB1004",IRUTablet:"M702pro",MegafonTablet:"MegaFon V9|\\bZTE V9\\b|Android.*\\bMT7A\\b",EbodaTablet:"E-Boda (Supreme|Impresspeed|Izzycomm|Essential)",AllViewTablet:"Allview.*(Viva|Alldro|City|Speed|All TV|Frenzy|Quasar|Shine|TX1|AX1|AX2)",ArchosTablet:"\\b(101G9|80G9|A101IT)\\b|Qilive 97R|Archos5|\\bARCHOS (70|79|80|90|97|101|FAMILYPAD|)(b|c|)(G10| Cobalt| TITANIUM(HD|)| Xenon| Neon|XSK| 2| XS 2| PLATINUM| CARBON|GAMEPAD)\\b",AinolTablet:"NOVO7|NOVO8|NOVO10|Novo7Aurora|Novo7Basic|NOVO7PALADIN|novo9-Spark",NokiaLumiaTablet:"Lumia 2520",SonyTablet:"Sony.*Tablet|Xperia Tablet|Sony Tablet S|SO-03E|SGPT12|SGPT13|SGPT114|SGPT121|SGPT122|SGPT123|SGPT111|SGPT112|SGPT113|SGPT131|SGPT132|SGPT133|SGPT211|SGPT212|SGPT213|SGP311|SGP312|SGP321|EBRD1101|EBRD1102|EBRD1201|SGP351|SGP341|SGP511|SGP512|SGP521|SGP541|SGP551|SGP621|SGP641|SGP612|SOT31|SGP771|SGP611|SGP612|SGP712",PhilipsTablet:"\\b(PI2010|PI3000|PI3100|PI3105|PI3110|PI3205|PI3210|PI3900|PI4010|PI7000|PI7100)\\b",CubeTablet:"Android.*(K8GT|U9GT|U10GT|U16GT|U17GT|U18GT|U19GT|U20GT|U23GT|U30GT)|CUBE U8GT",CobyTablet:"MID1042|MID1045|MID1125|MID1126|MID7012|MID7014|MID7015|MID7034|MID7035|MID7036|MID7042|MID7048|MID7127|MID8042|MID8048|MID8127|MID9042|MID9740|MID9742|MID7022|MID7010",MIDTablet:"M9701|M9000|M9100|M806|M1052|M806|T703|MID701|MID713|MID710|MID727|MID760|MID830|MID728|MID933|MID125|MID810|MID732|MID120|MID930|MID800|MID731|MID900|MID100|MID820|MID735|MID980|MID130|MID833|MID737|MID960|MID135|MID860|MID736|MID140|MID930|MID835|MID733|MID4X10",MSITablet:"MSI \\b(Primo 73K|Primo 73L|Primo 81L|Primo 77|Primo 93|Primo 75|Primo 76|Primo 73|Primo 81|Primo 91|Primo 90|Enjoy 71|Enjoy 7|Enjoy 10)\\b",SMiTTablet:"Android.*(\\bMID\\b|MID-560|MTV-T1200|MTV-PND531|MTV-P1101|MTV-PND530)",RockChipTablet:"Android.*(RK2818|RK2808A|RK2918|RK3066)|RK2738|RK2808A",FlyTablet:"IQ310|Fly Vision",bqTablet:"Android.*(bq)?.*\\b(Elcano|Curie|Edison|Maxwell|Kepler|Pascal|Tesla|Hypatia|Platon|Newton|Livingstone|Cervantes|Avant|Aquaris ([E|M]10|M8))\\b|Maxwell.*Lite|Maxwell.*Plus",HuaweiTablet:"MediaPad|MediaPad 7 Youth|IDEOS S7|S7-201c|S7-202u|S7-101|S7-103|S7-104|S7-105|S7-106|S7-201|S7-Slim|M2-A01L|BAH-L09|BAH-W09|AGS-L09|CMR-AL19",NecTablet:"\\bN-06D|\\bN-08D",PantechTablet:"Pantech.*P4100",BronchoTablet:"Broncho.*(N701|N708|N802|a710)",VersusTablet:"TOUCHPAD.*[78910]|\\bTOUCHTAB\\b",ZyncTablet:"z1000|Z99 2G|z930|z990|z909|Z919|z900",PositivoTablet:"TB07STA|TB10STA|TB07FTA|TB10FTA",NabiTablet:"Android.*\\bNabi",KoboTablet:"Kobo Touch|\\bK080\\b|\\bVox\\b Build|\\bArc\\b Build",DanewTablet:"DSlide.*\\b(700|701R|702|703R|704|802|970|971|972|973|974|1010|1012)\\b",TexetTablet:"NaviPad|TB-772A|TM-7045|TM-7055|TM-9750|TM-7016|TM-7024|TM-7026|TM-7041|TM-7043|TM-7047|TM-8041|TM-9741|TM-9747|TM-9748|TM-9751|TM-7022|TM-7021|TM-7020|TM-7011|TM-7010|TM-7023|TM-7025|TM-7037W|TM-7038W|TM-7027W|TM-9720|TM-9725|TM-9737W|TM-1020|TM-9738W|TM-9740|TM-9743W|TB-807A|TB-771A|TB-727A|TB-725A|TB-719A|TB-823A|TB-805A|TB-723A|TB-715A|TB-707A|TB-705A|TB-709A|TB-711A|TB-890HD|TB-880HD|TB-790HD|TB-780HD|TB-770HD|TB-721HD|TB-710HD|TB-434HD|TB-860HD|TB-840HD|TB-760HD|TB-750HD|TB-740HD|TB-730HD|TB-722HD|TB-720HD|TB-700HD|TB-500HD|TB-470HD|TB-431HD|TB-430HD|TB-506|TB-504|TB-446|TB-436|TB-416|TB-146SE|TB-126SE",PlaystationTablet:"Playstation.*(Portable|Vita)",TrekstorTablet:"ST10416-1|VT10416-1|ST70408-1|ST702xx-1|ST702xx-2|ST80208|ST97216|ST70104-2|VT10416-2|ST10216-2A|SurfTab",PyleAudioTablet:"\\b(PTBL10CEU|PTBL10C|PTBL72BC|PTBL72BCEU|PTBL7CEU|PTBL7C|PTBL92BC|PTBL92BCEU|PTBL9CEU|PTBL9CUK|PTBL9C)\\b",AdvanTablet:"Android.* \\b(E3A|T3X|T5C|T5B|T3E|T3C|T3B|T1J|T1F|T2A|T1H|T1i|E1C|T1-E|T5-A|T4|E1-B|T2Ci|T1-B|T1-D|O1-A|E1-A|T1-A|T3A|T4i)\\b ",DanyTechTablet:"Genius Tab G3|Genius Tab S2|Genius Tab Q3|Genius Tab G4|Genius Tab Q4|Genius Tab G-II|Genius TAB GII|Genius TAB GIII|Genius Tab S1",GalapadTablet:"Android [0-9.]+; [a-z-]+; \\bG1\\b",MicromaxTablet:"Funbook|Micromax.*\\b(P250|P560|P360|P362|P600|P300|P350|P500|P275)\\b",KarbonnTablet:"Android.*\\b(A39|A37|A34|ST8|ST10|ST7|Smart Tab3|Smart Tab2)\\b",AllFineTablet:"Fine7 Genius|Fine7 Shine|Fine7 Air|Fine8 Style|Fine9 More|Fine10 Joy|Fine11 Wide",PROSCANTablet:"\\b(PEM63|PLT1023G|PLT1041|PLT1044|PLT1044G|PLT1091|PLT4311|PLT4311PL|PLT4315|PLT7030|PLT7033|PLT7033D|PLT7035|PLT7035D|PLT7044K|PLT7045K|PLT7045KB|PLT7071KG|PLT7072|PLT7223G|PLT7225G|PLT7777G|PLT7810K|PLT7849G|PLT7851G|PLT7852G|PLT8015|PLT8031|PLT8034|PLT8036|PLT8080K|PLT8082|PLT8088|PLT8223G|PLT8234G|PLT8235G|PLT8816K|PLT9011|PLT9045K|PLT9233G|PLT9735|PLT9760G|PLT9770G)\\b",YONESTablet:"BQ1078|BC1003|BC1077|RK9702|BC9730|BC9001|IT9001|BC7008|BC7010|BC708|BC728|BC7012|BC7030|BC7027|BC7026",ChangJiaTablet:"TPC7102|TPC7103|TPC7105|TPC7106|TPC7107|TPC7201|TPC7203|TPC7205|TPC7210|TPC7708|TPC7709|TPC7712|TPC7110|TPC8101|TPC8103|TPC8105|TPC8106|TPC8203|TPC8205|TPC8503|TPC9106|TPC9701|TPC97101|TPC97103|TPC97105|TPC97106|TPC97111|TPC97113|TPC97203|TPC97603|TPC97809|TPC97205|TPC10101|TPC10103|TPC10106|TPC10111|TPC10203|TPC10205|TPC10503",GUTablet:"TX-A1301|TX-M9002|Q702|kf026",PointOfViewTablet:"TAB-P506|TAB-navi-7-3G-M|TAB-P517|TAB-P-527|TAB-P701|TAB-P703|TAB-P721|TAB-P731N|TAB-P741|TAB-P825|TAB-P905|TAB-P925|TAB-PR945|TAB-PL1015|TAB-P1025|TAB-PI1045|TAB-P1325|TAB-PROTAB[0-9]+|TAB-PROTAB25|TAB-PROTAB26|TAB-PROTAB27|TAB-PROTAB26XL|TAB-PROTAB2-IPS9|TAB-PROTAB30-IPS9|TAB-PROTAB25XXL|TAB-PROTAB26-IPS10|TAB-PROTAB30-IPS10",OvermaxTablet:"OV-(SteelCore|NewBase|Basecore|Baseone|Exellen|Quattor|EduTab|Solution|ACTION|BasicTab|TeddyTab|MagicTab|Stream|TB-08|TB-09)|Qualcore 1027",HCLTablet:"HCL.*Tablet|Connect-3G-2.0|Connect-2G-2.0|ME Tablet U1|ME Tablet U2|ME Tablet G1|ME Tablet X1|ME Tablet Y2|ME Tablet Sync",DPSTablet:"DPS Dream 9|DPS Dual 7",VistureTablet:"V97 HD|i75 3G|Visture V4( HD)?|Visture V5( HD)?|Visture V10",CrestaTablet:"CTP(-)?810|CTP(-)?818|CTP(-)?828|CTP(-)?838|CTP(-)?888|CTP(-)?978|CTP(-)?980|CTP(-)?987|CTP(-)?988|CTP(-)?989",MediatekTablet:"\\bMT8125|MT8389|MT8135|MT8377\\b",ConcordeTablet:"Concorde([ ]+)?Tab|ConCorde ReadMan",GoCleverTablet:"GOCLEVER TAB|A7GOCLEVER|M1042|M7841|M742|R1042BK|R1041|TAB A975|TAB A7842|TAB A741|TAB A741L|TAB M723G|TAB M721|TAB A1021|TAB I921|TAB R721|TAB I720|TAB T76|TAB R70|TAB R76.2|TAB R106|TAB R83.2|TAB M813G|TAB I721|GCTA722|TAB I70|TAB I71|TAB S73|TAB R73|TAB R74|TAB R93|TAB R75|TAB R76.1|TAB A73|TAB A93|TAB A93.2|TAB T72|TAB R83|TAB R974|TAB R973|TAB A101|TAB A103|TAB A104|TAB A104.2|R105BK|M713G|A972BK|TAB A971|TAB R974.2|TAB R104|TAB R83.3|TAB A1042",ModecomTablet:"FreeTAB 9000|FreeTAB 7.4|FreeTAB 7004|FreeTAB 7800|FreeTAB 2096|FreeTAB 7.5|FreeTAB 1014|FreeTAB 1001 |FreeTAB 8001|FreeTAB 9706|FreeTAB 9702|FreeTAB 7003|FreeTAB 7002|FreeTAB 1002|FreeTAB 7801|FreeTAB 1331|FreeTAB 1004|FreeTAB 8002|FreeTAB 8014|FreeTAB 9704|FreeTAB 1003",VoninoTablet:"\\b(Argus[ _]?S|Diamond[ _]?79HD|Emerald[ _]?78E|Luna[ _]?70C|Onyx[ _]?S|Onyx[ _]?Z|Orin[ _]?HD|Orin[ _]?S|Otis[ _]?S|SpeedStar[ _]?S|Magnet[ _]?M9|Primus[ _]?94[ _]?3G|Primus[ _]?94HD|Primus[ _]?QS|Android.*\\bQ8\\b|Sirius[ _]?EVO[ _]?QS|Sirius[ _]?QS|Spirit[ _]?S)\\b",ECSTablet:"V07OT2|TM105A|S10OT1|TR10CS1",StorexTablet:"eZee[_']?(Tab|Go)[0-9]+|TabLC7|Looney Tunes Tab",VodafoneTablet:"SmartTab([ ]+)?[0-9]+|SmartTabII10|SmartTabII7|VF-1497|VFD 1400",EssentielBTablet:"Smart[ ']?TAB[ ]+?[0-9]+|Family[ ']?TAB2",RossMoorTablet:"RM-790|RM-997|RMD-878G|RMD-974R|RMT-705A|RMT-701|RME-601|RMT-501|RMT-711",iMobileTablet:"i-mobile i-note",TolinoTablet:"tolino tab [0-9.]+|tolino shine",AudioSonicTablet:"\\bC-22Q|T7-QC|T-17B|T-17P\\b",AMPETablet:"Android.* A78 ",SkkTablet:"Android.* (SKYPAD|PHOENIX|CYCLOPS)",TecnoTablet:"TECNO P9|TECNO DP8D",JXDTablet:"Android.* \\b(F3000|A3300|JXD5000|JXD3000|JXD2000|JXD300B|JXD300|S5800|S7800|S602b|S5110b|S7300|S5300|S602|S603|S5100|S5110|S601|S7100a|P3000F|P3000s|P101|P200s|P1000m|P200m|P9100|P1000s|S6600b|S908|P1000|P300|S18|S6600|S9100)\\b",iJoyTablet:"Tablet (Spirit 7|Essentia|Galatea|Fusion|Onix 7|Landa|Titan|Scooby|Deox|Stella|Themis|Argon|Unique 7|Sygnus|Hexen|Finity 7|Cream|Cream X2|Jade|Neon 7|Neron 7|Kandy|Scape|Saphyr 7|Rebel|Biox|Rebel|Rebel 8GB|Myst|Draco 7|Myst|Tab7-004|Myst|Tadeo Jones|Tablet Boing|Arrow|Draco Dual Cam|Aurix|Mint|Amity|Revolution|Finity 9|Neon 9|T9w|Amity 4GB Dual Cam|Stone 4GB|Stone 8GB|Andromeda|Silken|X2|Andromeda II|Halley|Flame|Saphyr 9,7|Touch 8|Planet|Triton|Unique 10|Hexen 10|Memphis 4GB|Memphis 8GB|Onix 10)",FX2Tablet:"FX2 PAD7|FX2 PAD10",XoroTablet:"KidsPAD 701|PAD[ ]?712|PAD[ ]?714|PAD[ ]?716|PAD[ ]?717|PAD[ ]?718|PAD[ ]?720|PAD[ ]?721|PAD[ ]?722|PAD[ ]?790|PAD[ ]?792|PAD[ ]?900|PAD[ ]?9715D|PAD[ ]?9716DR|PAD[ ]?9718DR|PAD[ ]?9719QR|PAD[ ]?9720QR|TelePAD1030|Telepad1032|TelePAD730|TelePAD731|TelePAD732|TelePAD735Q|TelePAD830|TelePAD9730|TelePAD795|MegaPAD 1331|MegaPAD 1851|MegaPAD 2151",ViewsonicTablet:"ViewPad 10pi|ViewPad 10e|ViewPad 10s|ViewPad E72|ViewPad7|ViewPad E100|ViewPad 7e|ViewSonic VB733|VB100a",VerizonTablet:"QTAQZ3|QTAIR7|QTAQTZ3|QTASUN1|QTASUN2|QTAXIA1",OdysTablet:"LOOX|XENO10|ODYS[ -](Space|EVO|Xpress|NOON)|\\bXELIO\\b|Xelio10Pro|XELIO7PHONETAB|XELIO10EXTREME|XELIOPT2|NEO_QUAD10",CaptivaTablet:"CAPTIVA PAD",IconbitTablet:"NetTAB|NT-3702|NT-3702S|NT-3702S|NT-3603P|NT-3603P|NT-0704S|NT-0704S|NT-3805C|NT-3805C|NT-0806C|NT-0806C|NT-0909T|NT-0909T|NT-0907S|NT-0907S|NT-0902S|NT-0902S",TeclastTablet:"T98 4G|\\bP80\\b|\\bX90HD\\b|X98 Air|X98 Air 3G|\\bX89\\b|P80 3G|\\bX80h\\b|P98 Air|\\bX89HD\\b|P98 3G|\\bP90HD\\b|P89 3G|X98 3G|\\bP70h\\b|P79HD 3G|G18d 3G|\\bP79HD\\b|\\bP89s\\b|\\bA88\\b|\\bP10HD\\b|\\bP19HD\\b|G18 3G|\\bP78HD\\b|\\bA78\\b|\\bP75\\b|G17s 3G|G17h 3G|\\bP85t\\b|\\bP90\\b|\\bP11\\b|\\bP98t\\b|\\bP98HD\\b|\\bG18d\\b|\\bP85s\\b|\\bP11HD\\b|\\bP88s\\b|\\bA80HD\\b|\\bA80se\\b|\\bA10h\\b|\\bP89\\b|\\bP78s\\b|\\bG18\\b|\\bP85\\b|\\bA70h\\b|\\bA70\\b|\\bG17\\b|\\bP18\\b|\\bA80s\\b|\\bA11s\\b|\\bP88HD\\b|\\bA80h\\b|\\bP76s\\b|\\bP76h\\b|\\bP98\\b|\\bA10HD\\b|\\bP78\\b|\\bP88\\b|\\bA11\\b|\\bA10t\\b|\\bP76a\\b|\\bP76t\\b|\\bP76e\\b|\\bP85HD\\b|\\bP85a\\b|\\bP86\\b|\\bP75HD\\b|\\bP76v\\b|\\bA12\\b|\\bP75a\\b|\\bA15\\b|\\bP76Ti\\b|\\bP81HD\\b|\\bA10\\b|\\bT760VE\\b|\\bT720HD\\b|\\bP76\\b|\\bP73\\b|\\bP71\\b|\\bP72\\b|\\bT720SE\\b|\\bC520Ti\\b|\\bT760\\b|\\bT720VE\\b|T720-3GE|T720-WiFi",OndaTablet:"\\b(V975i|Vi30|VX530|V701|Vi60|V701s|Vi50|V801s|V719|Vx610w|VX610W|V819i|Vi10|VX580W|Vi10|V711s|V813|V811|V820w|V820|Vi20|V711|VI30W|V712|V891w|V972|V819w|V820w|Vi60|V820w|V711|V813s|V801|V819|V975s|V801|V819|V819|V818|V811|V712|V975m|V101w|V961w|V812|V818|V971|V971s|V919|V989|V116w|V102w|V973|Vi40)\\b[\\s]+|V10 \\b4G\\b",JaytechTablet:"TPC-PA762",BlaupunktTablet:"Endeavour 800NG|Endeavour 1010",DigmaTablet:"\\b(iDx10|iDx9|iDx8|iDx7|iDxD7|iDxD8|iDsQ8|iDsQ7|iDsQ8|iDsD10|iDnD7|3TS804H|iDsQ11|iDj7|iDs10)\\b",EvolioTablet:"ARIA_Mini_wifi|Aria[ _]Mini|Evolio X10|Evolio X7|Evolio X8|\\bEvotab\\b|\\bNeura\\b",LavaTablet:"QPAD E704|\\bIvoryS\\b|E-TAB IVORY|\\bE-TAB\\b",AocTablet:"MW0811|MW0812|MW0922|MTK8382|MW1031|MW0831|MW0821|MW0931|MW0712",MpmanTablet:"MP11 OCTA|MP10 OCTA|MPQC1114|MPQC1004|MPQC994|MPQC974|MPQC973|MPQC804|MPQC784|MPQC780|\\bMPG7\\b|MPDCG75|MPDCG71|MPDC1006|MP101DC|MPDC9000|MPDC905|MPDC706HD|MPDC706|MPDC705|MPDC110|MPDC100|MPDC99|MPDC97|MPDC88|MPDC8|MPDC77|MP709|MID701|MID711|MID170|MPDC703|MPQC1010",CelkonTablet:"CT695|CT888|CT[\\s]?910|CT7 Tab|CT9 Tab|CT3 Tab|CT2 Tab|CT1 Tab|C820|C720|\\bCT-1\\b",WolderTablet:"miTab \\b(DIAMOND|SPACE|BROOKLYN|NEO|FLY|MANHATTAN|FUNK|EVOLUTION|SKY|GOCAR|IRON|GENIUS|POP|MINT|EPSILON|BROADWAY|JUMP|HOP|LEGEND|NEW AGE|LINE|ADVANCE|FEEL|FOLLOW|LIKE|LINK|LIVE|THINK|FREEDOM|CHICAGO|CLEVELAND|BALTIMORE-GH|IOWA|BOSTON|SEATTLE|PHOENIX|DALLAS|IN 101|MasterChef)\\b",MediacomTablet:"M-MPI10C3G|M-SP10EG|M-SP10EGP|M-SP10HXAH|M-SP7HXAH|M-SP10HXBH|M-SP8HXAH|M-SP8MXA",MiTablet:"\\bMI PAD\\b|\\bHM NOTE 1W\\b",NibiruTablet:"Nibiru M1|Nibiru Jupiter One",NexoTablet:"NEXO NOVA|NEXO 10|NEXO AVIO|NEXO FREE|NEXO GO|NEXO EVO|NEXO 3G|NEXO SMART|NEXO KIDDO|NEXO MOBI",LeaderTablet:"TBLT10Q|TBLT10I|TBL-10WDKB|TBL-10WDKBO2013|TBL-W230V2|TBL-W450|TBL-W500|SV572|TBLT7I|TBA-AC7-8G|TBLT79|TBL-8W16|TBL-10W32|TBL-10WKB|TBL-W100",UbislateTablet:"UbiSlate[\\s]?7C",PocketBookTablet:"Pocketbook",KocasoTablet:"\\b(TB-1207)\\b",HisenseTablet:"\\b(F5281|E2371)\\b",Hudl:"Hudl HT7S3|Hudl 2",TelstraTablet:"T-Hub2",GenericTablet:"Android.*\\b97D\\b|Tablet(?!.*PC)|BNTV250A|MID-WCDMA|LogicPD Zoom2|\\bA7EB\\b|CatNova8|A1_07|CT704|CT1002|\\bM721\\b|rk30sdk|\\bEVOTAB\\b|M758A|ET904|ALUMIUM10|Smartfren Tab|Endeavour 1010|Tablet-PC-4|Tagi Tab|\\bM6pro\\b|CT1020W|arc 10HD|\\bTP750\\b|\\bQTAQZ3\\b|WVT101|TM1088|KT107"},oss:{AndroidOS:"Android",BlackBerryOS:"blackberry|\\bBB10\\b|rim tablet os",PalmOS:"PalmOS|avantgo|blazer|elaine|hiptop|palm|plucker|xiino",SymbianOS:"Symbian|SymbOS|Series60|Series40|SYB-[0-9]+|\\bS60\\b",WindowsMobileOS:"Windows CE.*(PPC|Smartphone|Mobile|[0-9]{3}x[0-9]{3})|Windows Mobile|Windows Phone [0-9.]+|WCE;",WindowsPhoneOS:"Windows Phone 10.0|Windows Phone 8.1|Windows Phone 8.0|Windows Phone OS|XBLWP7|ZuneWP7|Windows NT 6.[23]; ARM;",iOS:"\\biPhone.*Mobile|\\biPod|\\biPad|AppleCoreMedia",iPadOS:"CPU OS 13",SailfishOS:"Sailfish",MeeGoOS:"MeeGo",MaemoOS:"Maemo",JavaOS:"J2ME/|\\bMIDP\\b|\\bCLDC\\b",webOS:"webOS|hpwOS",badaOS:"\\bBada\\b",BREWOS:"BREW"},uas:{Chrome:"\\bCrMo\\b|CriOS|Android.*Chrome/[.0-9]* (Mobile)?",Dolfin:"\\bDolfin\\b",Opera:"Opera.*Mini|Opera.*Mobi|Android.*Opera|Mobile.*OPR/[0-9.]+$|Coast/[0-9.]+",Skyfire:"Skyfire",Edge:"\\bEdgiOS\\b|Mobile Safari/[.0-9]* Edge",IE:"IEMobile|MSIEMobile",Firefox:"fennec|firefox.*maemo|(Mobile|Tablet).*Firefox|Firefox.*Mobile|FxiOS",Bolt:"bolt",TeaShark:"teashark",Blazer:"Blazer",Safari:"Version((?!\\bEdgiOS\\b).)*Mobile.*Safari|Safari.*Mobile|MobileSafari",WeChat:"\\bMicroMessenger\\b",UCBrowser:"UC.*Browser|UCWEB",baiduboxapp:"baiduboxapp",baidubrowser:"baidubrowser",DiigoBrowser:"DiigoBrowser",Mercury:"\\bMercury\\b",ObigoBrowser:"Obigo",NetFront:"NF-Browser",GenericBrowser:"NokiaBrowser|OviBrowser|OneBrowser|TwonkyBeamBrowser|SEMC.*Browser|FlyFlow|Minimo|NetFront|Novarra-Vision|MQQBrowser|MicroMessenger",PaleMoon:"Android.*PaleMoon|Mobile.*PaleMoon"},props:{Mobile:"Mobile/[VER]",Build:"Build/[VER]",Version:"Version/[VER]",VendorID:"VendorID/[VER]",iPad:"iPad.*CPU[a-z ]+[VER]",iPhone:"iPhone.*CPU[a-z ]+[VER]",iPod:"iPod.*CPU[a-z ]+[VER]",Kindle:"Kindle/[VER]",Chrome:["Chrome/[VER]","CriOS/[VER]","CrMo/[VER]"],Coast:["Coast/[VER]"],Dolfin:"Dolfin/[VER]",Firefox:["Firefox/[VER]","FxiOS/[VER]"],Fennec:"Fennec/[VER]",Edge:"Edge/[VER]",IE:["IEMobile/[VER];","IEMobile [VER]","MSIE [VER];","Trident/[0-9.]+;.*rv:[VER]"],NetFront:"NetFront/[VER]",NokiaBrowser:"NokiaBrowser/[VER]",Opera:[" OPR/[VER]","Opera Mini/[VER]","Version/[VER]"],"Opera Mini":"Opera Mini/[VER]","Opera Mobi":"Version/[VER]",UCBrowser:["UCWEB[VER]","UC.*Browser/[VER]"],MQQBrowser:"MQQBrowser/[VER]",MicroMessenger:"MicroMessenger/[VER]",baiduboxapp:"baiduboxapp/[VER]",baidubrowser:"baidubrowser/[VER]",SamsungBrowser:"SamsungBrowser/[VER]",Iron:"Iron/[VER]",Safari:["Version/[VER]","Safari/[VER]"],Skyfire:"Skyfire/[VER]",Tizen:"Tizen/[VER]",Webkit:"webkit[ /][VER]",PaleMoon:"PaleMoon/[VER]",SailfishBrowser:"SailfishBrowser/[VER]",Gecko:"Gecko/[VER]",Trident:"Trident/[VER]",Presto:"Presto/[VER]",Goanna:"Goanna/[VER]",iOS:" \\bi?OS\\b [VER][ ;]{1}",Android:"Android [VER]",Sailfish:"Sailfish [VER]",BlackBerry:["BlackBerry[\\w]+/[VER]","BlackBerry.*Version/[VER]","Version/[VER]"],BREW:"BREW [VER]",Java:"Java/[VER]","Windows Phone OS":["Windows Phone OS [VER]","Windows Phone [VER]"],"Windows Phone":"Windows Phone [VER]","Windows CE":"Windows CE/[VER]","Windows NT":"Windows NT [VER]",Symbian:["SymbianOS/[VER]","Symbian/[VER]"],webOS:["webOS/[VER]","hpwOS/[VER];"]},utils:{Bot:"Googlebot|facebookexternalhit|Google-AMPHTML|s~amp-validator|AdsBot-Google|Google Keyword Suggestion|Facebot|YandexBot|YandexMobileBot|bingbot|ia_archiver|AhrefsBot|Ezooms|GSLFbot|WBSearchBot|Twitterbot|TweetmemeBot|Twikle|PaperLiBot|Wotbox|UnwindFetchor|Exabot|MJ12bot|YandexImages|TurnitinBot|Pingdom|contentkingapp|AspiegelBot",MobileBot:"Googlebot-Mobile|AdsBot-Google-Mobile|YahooSeeker/M1A1-R2D2",DesktopMode:"WPDesktop",TV:"SonyDTV|HbbTV",WebKit:"(webkit)[ /]([\\w.]+)",Console:"\\b(Nintendo|Nintendo WiiU|Nintendo 3DS|Nintendo Switch|PLAYSTATION|Xbox)\\b",Watch:"SM-V700"}},g.detectMobileBrowsers={fullPattern:/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i, shortPattern:/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i,tabletPattern:/android|ipad|playbook|silk/i};var h,i=Object.prototype.hasOwnProperty;return g.FALLBACK_PHONE="UnknownPhone",g.FALLBACK_TABLET="UnknownTablet",g.FALLBACK_MOBILE="UnknownMobile",h="isArray"in Array?Array.isArray:function(a){return"[object Array]"===Object.prototype.toString.call(a)},function(){var a,b,c,e,f,j,k=g.mobileDetectRules;for(a in k.props)if(i.call(k.props,a)){for(b=k.props[a],h(b)||(b=[b]),f=b.length,e=0;e<f;++e)c=b[e],j=c.indexOf("[VER]"),j>=0&&(c=c.substring(0,j)+"([\\w._\\+]+)"+c.substring(j+5)),b[e]=new RegExp(c,"i");k.props[a]=b}d(k.oss),d(k.phones),d(k.tablets),d(k.uas),d(k.utils),k.oss0={WindowsPhoneOS:k.oss.WindowsPhoneOS,WindowsMobileOS:k.oss.WindowsMobileOS}}(),g.findMatch=function(a,b){for(var c in a)if(i.call(a,c)&&a[c].test(b))return c;return null},g.findMatches=function(a,b){var c=[];for(var d in a)i.call(a,d)&&a[d].test(b)&&c.push(d);return c},g.getVersionStr=function(a,b){var c,d,e,f,h=g.mobileDetectRules.props;if(i.call(h,a))for(c=h[a],e=c.length,d=0;d<e;++d)if(f=c[d].exec(b),null!==f)return f[1];return null},g.getVersion=function(a,b){var c=g.getVersionStr(a,b);return c?g.prepareVersionNo(c):NaN},g.prepareVersionNo=function(a){var b;return b=a.split(/[a-z._ \/\-]/i),1===b.length&&(a=b[0]),b.length>1&&(a=b[0]+".",b.shift(),a+=b.join("")),Number(a)},g.isMobileFallback=function(a){return g.detectMobileBrowsers.fullPattern.test(a)||g.detectMobileBrowsers.shortPattern.test(a.substr(0,4))},g.isTabletFallback=function(a){return g.detectMobileBrowsers.tabletPattern.test(a)},g.prepareDetectionCache=function(a,c,d){if(a.mobile===b){var e,h,i;return(h=g.findMatch(g.mobileDetectRules.tablets,c))?(a.mobile=a.tablet=h,void(a.phone=null)):(e=g.findMatch(g.mobileDetectRules.phones,c))?(a.mobile=a.phone=e,void(a.tablet=null)):void(g.isMobileFallback(c)?(i=f.isPhoneSized(d),i===b?(a.mobile=g.FALLBACK_MOBILE,a.tablet=a.phone=null):i?(a.mobile=a.phone=g.FALLBACK_PHONE,a.tablet=null):(a.mobile=a.tablet=g.FALLBACK_TABLET,a.phone=null)):g.isTabletFallback(c)?(a.mobile=a.tablet=g.FALLBACK_TABLET,a.phone=null):a.mobile=a.tablet=a.phone=null)}},g.mobileGrade=function(a){var b=null!==a.mobile();return a.os("iOS")&&a.version("iPad")>=4.3||a.os("iOS")&&a.version("iPhone")>=3.1||a.os("iOS")&&a.version("iPod")>=3.1||a.version("Android")>2.1&&a.is("Webkit")||a.version("Windows Phone OS")>=7||a.is("BlackBerry")&&a.version("BlackBerry")>=6||a.match("Playbook.*Tablet")||a.version("webOS")>=1.4&&a.match("Palm|Pre|Pixi")||a.match("hp.*TouchPad")||a.is("Firefox")&&a.version("Firefox")>=12||a.is("Chrome")&&a.is("AndroidOS")&&a.version("Android")>=4||a.is("Skyfire")&&a.version("Skyfire")>=4.1&&a.is("AndroidOS")&&a.version("Android")>=2.3||a.is("Opera")&&a.version("Opera Mobi")>11&&a.is("AndroidOS")||a.is("MeeGoOS")||a.is("Tizen")||a.is("Dolfin")&&a.version("Bada")>=2||(a.is("UC Browser")||a.is("Dolfin"))&&a.version("Android")>=2.3||a.match("Kindle Fire")||a.is("Kindle")&&a.version("Kindle")>=3||a.is("AndroidOS")&&a.is("NookTablet")||a.version("Chrome")>=11&&!b||a.version("Safari")>=5&&!b||a.version("Firefox")>=4&&!b||a.version("MSIE")>=7&&!b||a.version("Opera")>=10&&!b?"A":a.os("iOS")&&a.version("iPad")<4.3||a.os("iOS")&&a.version("iPhone")<3.1||a.os("iOS")&&a.version("iPod")<3.1||a.is("Blackberry")&&a.version("BlackBerry")>=5&&a.version("BlackBerry")<6||a.version("Opera Mini")>=5&&a.version("Opera Mini")<=6.5&&(a.version("Android")>=2.3||a.is("iOS"))||a.match("NokiaN8|NokiaC7|N97.*Series60|Symbian/3")||a.version("Opera Mobi")>=11&&a.is("SymbianOS")?"B":(a.version("BlackBerry")<5||a.match("MSIEMobile|Windows CE.*Mobile")||a.version("Windows Mobile")<=5.2,"C")},g.detectOS=function(a){return g.findMatch(g.mobileDetectRules.oss0,a)||g.findMatch(g.mobileDetectRules.oss,a)},g.getDeviceSmallerSide=function(){return window.screen.width<window.screen.height?window.screen.width:window.screen.height},f.prototype={constructor:f,mobile:function(){return g.prepareDetectionCache(this._cache,this.ua,this.maxPhoneWidth),this._cache.mobile},phone:function(){return g.prepareDetectionCache(this._cache,this.ua,this.maxPhoneWidth),this._cache.phone},tablet:function(){return g.prepareDetectionCache(this._cache,this.ua,this.maxPhoneWidth),this._cache.tablet},userAgent:function(){return this._cache.userAgent===b&&(this._cache.userAgent=g.findMatch(g.mobileDetectRules.uas,this.ua)),this._cache.userAgent},userAgents:function(){return this._cache.userAgents===b&&(this._cache.userAgents=g.findMatches(g.mobileDetectRules.uas,this.ua)),this._cache.userAgents},os:function(){return this._cache.os===b&&(this._cache.os=g.detectOS(this.ua)),this._cache.os},version:function(a){return g.getVersion(a,this.ua)},versionStr:function(a){return g.getVersionStr(a,this.ua)},is:function(b){return c(this.userAgents(),b)||a(b,this.os())||a(b,this.phone())||a(b,this.tablet())||c(g.findMatches(g.mobileDetectRules.utils,this.ua),b)},match:function(a){return a instanceof RegExp||(a=new RegExp(a,"i")),a.test(this.ua)},isPhoneSized:function(a){return f.isPhoneSized(a||this.maxPhoneWidth)},mobileGrade:function(){return this._cache.grade===b&&(this._cache.grade=g.mobileGrade(this)),this._cache.grade}},"undefined"!=typeof window&&window.screen?f.isPhoneSized=function(a){return a<0?b:g.getDeviceSmallerSide()<=a}:f.isPhoneSized=function(){},f._impl=g,f.version="1.4.5 2021-03-13",f})}(function(a){if("undefined"!=typeof module&&module.exports)return function(a){module.exports=a()};if("function"==typeof define&&define.amd)return define;if("undefined"!=typeof window)return function(a){window.MobileDetect=a()};throw new Error("unknown environment")}());var ai_lists=!0,ai_block_class_def="code-block"; if("undefined"!=typeof ai_lists){function X(b,e){for(var p=[];b=b.previousElementSibling;)("undefined"==typeof e||b.matches(e))&&p.push(b);return p}function fa(b,e){for(var p=[];b=b.nextElementSibling;)("undefined"==typeof e||b.matches(e))&&p.push(b);return p}var host_regexp=RegExp(":\\/\\/(.[^/:]+)","i");function ha(b){b=b.match(host_regexp);return null!=b&&1<b.length&&"string"===typeof b[1]&&0<b[1].length?b[1].toLowerCase():null}function Q(b){return b.includes(":")?(b=b.split(":"),1E3*(3600*parseInt(b[0])+ 60*parseInt(b[1])+parseInt(b[2]))):null}function Y(b){try{var e=Date.parse(b);isNaN(e)&&(e=null)}catch(p){e=null}if(null==e&&b.includes(" ")){b=b.split(" ");try{e=Date.parse(b[0]),e+=Q(b[1]),isNaN(e)&&(e=null)}catch(p){e=null}}return e}function Z(){null==document.querySelector("#ai-iab-tcf-bar")&&null==document.querySelector(".ai-list-manual")||"function"!=typeof __tcfapi||"function"!=typeof ai_load_blocks||"undefined"!=typeof ai_iab_tcf_callback_installed||(__tcfapi("addEventListener",2,function(b, e){e&&"useractioncomplete"===b.eventStatus&&(ai_tcData=b,ai_load_blocks(),b=document.querySelector("#ai-iab-tcf-status"),null!=b&&(b.textContent="IAB TCF 2.0 DATA LOADED"),b=document.querySelector("#ai-iab-tcf-bar"),null!=b&&(b.classList.remove("status-error"),b.classList.add("status-ok")))}),ai_iab_tcf_callback_installed=!0)}ai_process_lists=function(b){function e(a,d,k){if(0==a.length){if("!@!"==k)return!0;d!=k&&("true"==k.toLowerCase()?k=!0:"false"==k.toLowerCase()&&(k=!1));return d==k}if("object"!= typeof d&&"array"!=typeof d)return!1;var l=a[0];a=a.slice(1);if("*"==l)for(let [,n]of Object.entries(d)){if(e(a,n,k))return!0}else if(l in d)return e(a,d[l],k);return!1}function p(a,d,k){if("object"!=typeof a||-1==d.indexOf("["))return!1;d=d.replace(/]| /gi,"").split("[");return e(d,a,k)}function z(){if("function"==typeof __tcfapi){var a=document.querySelector("#ai-iab-tcf-status"),d=document.querySelector("#ai-iab-tcf-bar");null!=a&&(a.textContent="IAB TCF 2.0 DETECTED");__tcfapi("getTCData",2,function(k, l){l?(null!=d&&d.classList.add("status-ok"),"tcloaded"==k.eventStatus||"useractioncomplete"==k.eventStatus)?(ai_tcData=k,k.gdprApplies?null!=a&&(a.textContent="IAB TCF 2.0 DATA LOADED"):null!=a&&(a.textContent="IAB TCF 2.0 GDPR DOES NOT APPLY"),null!=d&&(d.classList.remove("status-error"),d.classList.add("status-ok")),setTimeout(function(){ai_process_lists()},10)):"cmpuishown"==k.eventStatus&&(ai_cmpuishown=!0,null!=a&&(a.textContent="IAB TCF 2.0 CMP UI SHOWN"),null!=d&&(d.classList.remove("status-error"), d.classList.add("status-ok"))):(null!=a&&(a.textContent="IAB TCF 2.0 __tcfapi getTCData failed"),null!=d&&(d.classList.remove("status-ok"),d.classList.add("status-error")))})}}function C(a){"function"==typeof __tcfapi?(ai_tcfapi_found=!0,"undefined"==typeof ai_iab_tcf_callback_installed&&Z(),"undefined"==typeof ai_tcData_requested&&(ai_tcData_requested=!0,z(),cookies_need_tcData=!0)):a&&("undefined"==typeof ai_tcfapi_found&&(ai_tcfapi_found=!1,setTimeout(function(){ai_process_lists()},10)),a=document.querySelector("#ai-iab-tcf-status"), null!=a&&(a.textContent="IAB TCF 2.0 MISSING: __tcfapi function not found"),a=document.querySelector("#ai-iab-tcf-bar"),null!=a&&(a.classList.remove("status-ok"),a.classList.add("status-error")))}if(null==b)b=document.querySelectorAll("div.ai-list-data, meta.ai-list-data");else{window.jQuery&&window.jQuery.fn&&b instanceof jQuery&&(b=Array.prototype.slice.call(b));var x=[];b.forEach((a,d)=>{a.matches(".ai-list-data")?x.push(a):(a=a.querySelectorAll(".ai-list-data"),a.length&&a.forEach((k,l)=>{x.push(k)}))}); b=x}if(b.length){b.forEach((a,d)=>{a.classList.remove("ai-list-data")});var L=ia(window.location.search);if(null!=L.referrer)var A=L.referrer;else A=document.referrer,""!=A&&(A=ha(A));var R=window.navigator.userAgent,S=R.toLowerCase(),aa=navigator.language,M=aa.toLowerCase();if("undefined"!==typeof MobileDetect)var ba=new MobileDetect(R);b.forEach((a,d)=>{var k=document.cookie.split(";");k.forEach(function(f,h){k[h]=f.trim()});d=a.closest("div."+ai_block_class_def);var l=!0;if(a.hasAttribute("referer-list")){var n= a.getAttribute("referer-list");n=b64d(n).split(",");var v=a.getAttribute("referer-list-type"),E=!1;n.every((f,h)=>{f=f.trim();if(""==f)return!0;if("*"==f.charAt(0))if("*"==f.charAt(f.length-1)){if(f=f.substr(1,f.length-2),-1!=A.indexOf(f))return E=!0,!1}else{if(f=f.substr(1),A.substr(-f.length)==f)return E=!0,!1}else if("*"==f.charAt(f.length-1)){if(f=f.substr(0,f.length-1),0==A.indexOf(f))return E=!0,!1}else if("#"==f){if(""==A)return E=!0,!1}else if(f==A)return E=!0,!1;return!0});var r=E;switch(v){case "B":r&& (l=!1);break;case "W":r||(l=!1)}}if(l&&a.hasAttribute("client-list")&&"undefined"!==typeof ba)switch(n=a.getAttribute("client-list"),n=b64d(n).split(","),v=a.getAttribute("client-list-type"),r=!1,n.every((f,h)=>{if(""==f.trim())return!0;f.split("&&").every((c,t)=>{t=!0;var w=!1;for(c=c.trim();"!!"==c.substring(0,2);)t=!t,c=c.substring(2);"language:"==c.substring(0,9)&&(w=!0,c=c.substring(9).toLowerCase());var q=!1;w?"*"==c.charAt(0)?"*"==c.charAt(c.length-1)?(c=c.substr(1,c.length-2).toLowerCase(), -1!=M.indexOf(c)&&(q=!0)):(c=c.substr(1).toLowerCase(),M.substr(-c.length)==c&&(q=!0)):"*"==c.charAt(c.length-1)?(c=c.substr(0,c.length-1).toLowerCase(),0==M.indexOf(c)&&(q=!0)):c==M&&(q=!0):"*"==c.charAt(0)?"*"==c.charAt(c.length-1)?(c=c.substr(1,c.length-2).toLowerCase(),-1!=S.indexOf(c)&&(q=!0)):(c=c.substr(1).toLowerCase(),S.substr(-c.length)==c&&(q=!0)):"*"==c.charAt(c.length-1)?(c=c.substr(0,c.length-1).toLowerCase(),0==S.indexOf(c)&&(q=!0)):ba.is(c)&&(q=!0);return(r=q?t:!t)?!0:!1});return r? !1:!0}),v){case "B":r&&(l=!1);break;case "W":r||(l=!1)}var N=n=!1;for(v=1;2>=v;v++)if(l){switch(v){case 1:var g=a.getAttribute("cookie-list");break;case 2:g=a.getAttribute("parameter-list")}if(null!=g){g=b64d(g);switch(v){case 1:var y=a.getAttribute("cookie-list-type");break;case 2:y=a.getAttribute("parameter-list-type")}g=g.replace("tcf-gdpr","tcf-v2[gdprApplies]=true");g=g.replace("tcf-no-gdpr","tcf-v2[gdprApplies]=false");g=g.replace("tcf-google","tcf-v2[vendor][consents][755]=true && tcf-v2[purpose][consents][1]=true"); g=g.replace("tcf-no-google","!!tcf-v2[vendor][consents][755]");g=g.replace("tcf-media.net","tcf-v2[vendor][consents][142]=true && tcf-v2[purpose][consents][1]=true");g=g.replace("tcf-no-media.net","!!tcf-v2[vendor][consents][142]");g=g.replace("tcf-amazon","tcf-v2[vendor][consents][793]=true && tcf-v2[purpose][consents][1]=true");g=g.replace("tcf-no-amazon","!!tcf-v2[vendor][consents][793]");g=g.replace("tcf-ezoic","tcf-v2[vendor][consents][347]=true && tcf-v2[purpose][consents][1]=true");g=g.replace("tcf-no-ezoic", "!!tcf-v2[vendor][consents][347]");var F=g.split(","),ca=[];k.forEach(function(f){f=f.split("=");try{var h=JSON.parse(decodeURIComponent(f[1]))}catch(c){h=decodeURIComponent(f[1])}ca[f[0]]=h});r=!1;var I=a;F.every((f,h)=>{f.split("&&").every((c,t)=>{t=!0;for(c=c.trim();"!!"==c.substring(0,2);)t=!t,c=c.substring(2);var w=c,q="!@!",T="tcf-v2"==w&&"!@!"==q,B=-1!=c.indexOf("["),J=0==c.indexOf("tcf-v2")||0==c.indexOf("euconsent-v2");J=J&&(B||T);-1!=c.indexOf("=")&&(q=c.split("="),w=q[0],q=q[1],B=-1!=w.indexOf("["), J=(J=0==w.indexOf("tcf-v2")||0==w.indexOf("euconsent-v2"))&&(B||T));if(J)document.querySelector("#ai-iab-tcf-status"),B=document.querySelector("#ai-iab-tcf-bar"),null!=B&&(B.style.display="block"),T&&"boolean"==typeof ai_tcfapi_found?r=ai_tcfapi_found?t:!t:"object"==typeof ai_tcData?(null!=B&&B.classList.add("status-ok"),w=w.replace(/]| /gi,"").split("["),w.shift(),r=(w=e(w,ai_tcData,q))?t:!t):"undefined"==typeof ai_tcfapi_found&&(I.classList.add("ai-list-data"),N=!0,"function"==typeof __tcfapi?C(!1): "undefined"==typeof ai_tcData_retrying&&(ai_tcData_retrying=!0,setTimeout(function(){"function"==typeof __tcfapi?C(!1):setTimeout(function(){"function"==typeof __tcfapi?C(!1):setTimeout(function(){C(!0)},3E3)},1E3)},600)));else if(B)r=(w=p(ca,w,q))?t:!t;else{var U=!1;"!@!"==q?k.every(function(ja){return ja.split("=")[0]==c?(U=!0,!1):!0}):U=-1!=k.indexOf(c);r=U?t:!t}return r?!0:!1});return r?!1:!0});r&&(N=!1,I.classList.remove("ai-list-data"));switch(y){case "B":r&&(l=!1);break;case "W":r||(l=!1)}}}a.classList.contains("ai-list-manual")&& (l?(I.classList.remove("ai-list-data"),I.classList.remove("ai-list-manual")):(n=!0,I.classList.add("ai-list-data")));(l||!n&&!N)&&a.hasAttribute("data-debug-info")&&(g=document.querySelector("."+a.dataset.debugInfo),null!=g&&(g=g.parentElement,null!=g&&g.classList.contains("ai-debug-info")&&g.remove()));y=X(a,".ai-debug-bar.ai-debug-lists");var ka=""==A?"#":A;0!=y.length&&y.forEach((f,h)=>{h=f.querySelector(".ai-debug-name.ai-list-info");null!=h&&(h.textContent=ka,h.title=R+"\n"+aa);h=f.querySelector(".ai-debug-name.ai-list-status"); null!=h&&(h.textContent=l?ai_front.visible:ai_front.hidden)});g=!1;if(l&&a.hasAttribute("scheduling-start")&&a.hasAttribute("scheduling-end")&&a.hasAttribute("scheduling-days")){var u=a.getAttribute("scheduling-start");v=a.getAttribute("scheduling-end");y=a.getAttribute("scheduling-days");g=!0;u=b64d(u);F=b64d(v);var V=parseInt(a.getAttribute("scheduling-fallback")),O=parseInt(a.getAttribute("gmt"));if(u.includes("-")||F.includes("-"))P=Y(u)+O,K=Y(F)+O;else var P=Q(u),K=Q(F);P??=0;K??=0;var W=b64d(y).split(","); y=a.getAttribute("scheduling-type");var D=(new Date).getTime()+O;v=new Date(D);var G=v.getDay();0==G?G=6:G--;u.includes("-")||F.includes("-")||(u=(new Date(v.getFullYear(),v.getMonth(),v.getDate())).getTime()+O,D-=u,0>D&&(D+=864E5));scheduling_start_date_ok=D>=P;scheduling_end_date_ok=0==K||D<K;u=scheduling_start_date_ok&&scheduling_end_date_ok&&W.includes(G.toString());switch(y){case "B":u=!u}u||(l=!1);var la=v.toISOString().split(".")[0].replace("T"," ");y=X(a,".ai-debug-bar.ai-debug-scheduling"); 0!=y.length&&y.forEach((f,h)=>{h=f.querySelector(".ai-debug-name.ai-scheduling-info");null!=h&&(h.textContent=la+" "+G+" current_time: "+Math.floor(D.toString()/1E3)+" start_date:"+Math.floor(P/1E3).toString()+"=>"+scheduling_start_date_ok.toString()+" end_date:"+Math.floor(K/1E3).toString()+"=>"+scheduling_end_date_ok.toString()+" days:"+W.toString()+"=>"+W.includes(G.toString()).toString());h=f.querySelector(".ai-debug-name.ai-scheduling-status");null!=h&&(h.textContent=l?ai_front.visible:ai_front.hidden); l||0==V||(f.classList.remove("ai-debug-scheduling"),f.classList.add("ai-debug-fallback"),h=f.querySelector(".ai-debug-name.ai-scheduling-status"),null!=h&&(h.textContent=ai_front.fallback+" = "+V))})}if(n||!l&&N)return!0;a.style.visibility="";a.style.position="";a.style.width="";a.style.height="";a.style.zIndex="";if(l){if(null!=d&&(d.style.visibility="",d.classList.contains("ai-remove-position")&&(d.style.position="")),a.hasAttribute("data-code")){n=b64d(a.dataset.code);u=document.createRange(); g=!0;try{H=u.createContextualFragment(n)}catch(f){g=!1}g&&(null!=a.closest("head")?(a.parentNode.insertBefore(H,a.nextSibling),a.remove()):a.append(H));da(a)}}else if(g&&!u&&0!=V){null!=d&&(d.style.visibility="",d.classList.contains("ai-remove-position")&&d.css({position:""}));n=fa(a,".ai-fallback");0!=n.length&&n.forEach((f,h)=>{f.classList.remove("ai-fallback")});if(a.hasAttribute("data-fallback-code")){n=b64d(a.dataset.fallbackCode);u=document.createRange();g=!0;try{var H=u.createContextualFragment(n)}catch(f){g= !1}g&&a.append(H);da(a)}else a.style.display="none",null!=d&&null==d.querySelector(".ai-debug-block")&&d.hasAttribute("style")&&-1==d.getAttribute("style").indexOf("height:")&&(d.style.display="none");null!=d&&d.hasAttribute("data-ai")&&(d.getAttribute("data-ai"),a.hasAttribute("fallback-tracking")&&(H=a.getAttribute("fallback-tracking"),d.setAttribute("data-ai-"+a.getAttribute("fallback_level"),H)))}else a.style.display="none",null!=d&&(d.removeAttribute("data-ai"),d.classList.remove("ai-track"), null!=d.querySelector(".ai-debug-block")?(d.style.visibility="",d.classList.remove("ai-close"),d.classList.contains("ai-remove-position")&&(d.style.position="")):d.hasAttribute("style")&&-1==d.getAttribute("style").indexOf("height:")&&(d.style.display="none"));a.setAttribute("data-code","");a.setAttribute("data-fallback-code","");null!=d&&d.classList.remove("ai-list-block")})}};function ea(b){b=`; ${document.cookie}`.split(`; ${b}=`);if(2===b.length)return b.pop().split(";").shift()}function ma(b, e,p){ea(b)&&(document.cookie=b+"="+(e?";path="+e:"")+(p?";domain="+p:"")+";expires=Thu, 01 Jan 1970 00:00:01 GMT")}function m(b){ea(b)&&(ma(b,"/",window.location.hostname),document.cookie=b+"=; Path=/; Expires=Thu, 01 Jan 1970 00:00:01 GMT;")}(function(b){"complete"===document.readyState||"loading"!==document.readyState&&!document.documentElement.doScroll?b():document.addEventListener("DOMContentLoaded",b)})(function(){setTimeout(function(){ai_process_lists();setTimeout(function(){Z();if("function"== typeof ai_load_blocks){document.addEventListener("cmplzEnableScripts",e);document.addEventListener("cmplz_event_marketing",e);function e(p){"cmplzEnableScripts"!=p.type&&"all"!==p.consentLevel||ai_load_blocks()}}},50);var b=document.querySelector(".ai-debug-page-type");null!=b&&b.addEventListener("dblclick",e=>{e=document.querySelector("#ai-iab-tcf-status");null!=e&&(e.textContent="CONSENT COOKIES");e=document.querySelector("#ai-iab-tcf-bar");null!=e&&(e.style.display="block")});b=document.querySelector("#ai-iab-tcf-bar"); null!=b&&b.addEventListener("click",e=>{m("euconsent-v2");m("__lxG__consent__v2");m("__lxG__consent__v2_daisybit");m("__lxG__consent__v2_gdaisybit");m("CookieLawInfoConsent");m("cookielawinfo-checkbox-advertisement");m("cookielawinfo-checkbox-analytics");m("cookielawinfo-checkbox-necessary");m("complianz_policy_id");m("complianz_consent_status");m("cmplz_marketing");m("cmplz_consent_status");m("cmplz_preferences");m("cmplz_statistics-anonymous");m("cmplz_choice");m("cmplz_banner-status");m("cmplz_functional"); m("cmplz_policy_id");m("cmplz_statistics");m("moove_gdpr_popup");m("real_cookie_banner-blog:1-tcf");m("real_cookie_banner-blog:1");e=document.querySelector("#ai-iab-tcf-status");null!=e&&(e.textContent="CONSENT COOKIES DELETED")})},5)});function da(b){setTimeout(function(){"function"==typeof ai_process_rotations_in_element&&ai_process_rotations_in_element(b);"function"==typeof ai_process_lists&&ai_process_lists();"function"==typeof ai_process_ip_addresses&&ai_process_ip_addresses();"function"==typeof ai_process_filter_hooks&& ai_process_filter_hooks();"function"==typeof ai_adb_process_blocks&&ai_adb_process_blocks(b);"function"==typeof ai_process_impressions&&1==ai_tracking_finished&&ai_process_impressions();"function"==typeof ai_install_click_trackers&&1==ai_tracking_finished&&ai_install_click_trackers();"function"==typeof ai_install_close_buttons&&ai_install_close_buttons(document)},5)}function ia(b){var e=b?b.split("?")[1]:window.location.search.slice(1);b={};if(e){e=e.split("#")[0];e=e.split("&");for(var p=0;p<e.length;p++){var z= e[p].split("="),C=void 0,x=z[0].replace(/\[\d*\]/,function(L){C=L.slice(1,-1);return""});z="undefined"===typeof z[1]?"":z[1];x=x.toLowerCase();z=z.toLowerCase();b[x]?("string"===typeof b[x]&&(b[x]=[b[x]]),"undefined"===typeof C?b[x].push(z):b[x][C]=z):b[x]=z}}return b}}; function ai_check_close_buttons(){function e(a){var b=a.querySelector(".ai-close-button.ai-close-unprocessed");if(null!=b){var c=b.dataset.aiBlock;b.addEventListener("click",g=>{ai_close_block(b);"function"==typeof ai_close_button_action&&ai_close_button_action(c)});var d=0;"undefined"!==typeof ai_close_min_block_height&&ai_close_min_block_height.constructor===Array&&"undefined"!==typeof ai_close_min_block_height[c]&&(d=ai_close_min_block_height[c]);0!==a.offsetHeight&&a.offsetHeight>=d?(null==a.querySelector(".ai-parallax")&& (a.style.width="",a.classList.add("ai-close-fit")),ai_fade_in(a.querySelector(".ai-close-button"),50)):(b=a,setTimeout(function(){0!==b.offsetHeight&&b.offsetHeight>=d&&(null==b.querySelector(".ai-parallax")&&(b.style.width="",b.classList.add("ai-close-fit")),ai_fade_in(b.querySelector(".ai-close-button"),50))},4E3));if("undefined"===typeof ai_preview){var f=b;a=f.dataset.aiCloseTimeout;"undefined"!=typeof a&&0<a&&setTimeout(function(){ai_close_block(f)},1E3*(2<a?a-2:0)+1)}b.classList.remove("ai-close-unprocessed")}} ai_close_block=function(a){var b=a.closest(".ai-close"),c=a.dataset.aiBlock;if(null!=b){if(null!=b.querySelector(".ai-attributes [data-ai-hash]")&&"aiHash"in b.querySelector(".ai-attributes [data-ai-hash]").dataset){var d=b.querySelector(".ai-attributes [data-ai-hash]").dataset.aiHash;if("aiClosedTime"in a.dataset){a=a.dataset.aiClosedTime;var f=Math.round((new Date).getTime()/1E3);ai_set_cookie(c,"x",Math.round(f+86400*a));ai_set_cookie(c,"h",d)}}else d=ai_set_cookie(c,"x",""),!d.hasOwnProperty(c)|| d[c].hasOwnProperty("i")||d[c].hasOwnProperty("c")||ai_set_cookie(c,"h","");b.remove()}else ai_set_cookie(c,"x",""),!d.hasOwnProperty(c)||d[c].hasOwnProperty("i")||d[c].hasOwnProperty("c")||ai_set_cookie(c,"h","")};ai_install_close_buttons=function(a){setTimeout(function(){a instanceof Element&&a.classList.contains("ai-close")?e(a):document.querySelectorAll(".ai-close").forEach((b,c)=>{e(b)})},ai_close_button_delay)};"undefined"==typeof ai_close_button_delay&&(ai_close_button_delay=2200);ai_install_close_buttons(document)} function ai_fade_in(e,a){e.style.display="block";e.style.opacity=0;var b=+new Date,c=function(){e.style.opacity=+e.style.opacity+(new Date-b)/a;b=+new Date;1>+e.style.opacity&&(window.requestAnimationFrame&&requestAnimationFrame(c)||setTimeout(c,16))};c()}function ai_ready(e){"complete"===document.readyState||"loading"!==document.readyState&&!document.documentElement.doScroll?e():document.addEventListener("DOMContentLoaded",e)}ai_ready(ai_check_close_buttons); var ai_ip=!0,ai_data_id="5fdcf24ebb",ai_ajax_url="https://www.on-sitemag.com/wp-admin/admin-ajax.php",ai_block_class_def="code-block"; if("undefined"!=typeof ai_ip){function u(b,g){g||(g=window.location.href);b=b.replace(/[\[\]]/g,"\\$&");return(b=(new RegExp("[?&]"+b+"(=([^&#]*)|&|#|$)")).exec(g))?b[2]?decodeURIComponent(b[2].replace(/\+/g," ")):"":null}function y(){return(new Date).getTime()+"-"+Math.round(1E5*Math.random())}function v(b){b.forEach((a,c)=>{a.classList.remove("ai-ip-data")});var g=!1;if(""!=ai_ip_data){try{var l=JSON.parse(ai_ip_data),f=l[0],r=l[1],p=l[2],q=l[3]}catch(a){return}var t=!1;-1!=f.indexOf("#")&&(t=!0, f=f.replace("#",""));var e="";t&&(e="CFP BLOCKED, ");e=e+f+", "+r;null!=p&&null!=q&&(e=e+":"+p+":"+q);null==p&&(p="");null==q&&(q="");null!=l&&b.forEach((a,c)=>{c=a.closest("div."+ai_block_class_def);g=!0;if(a.hasAttribute("ip-addresses")){var h=a.getAttribute("ip-addresses").split(","),m=a.getAttribute("ip-address-list"),k=!1;h.every((d,n)=>{if("*"==d.charAt(0))if("*"==d.charAt(d.length-1)){if(d=d.substr(1,d.length-2),-1!=f.indexOf(d))return k=!0,!1}else{if(d=d.substr(1),f.substr(-d.length)==d)return k= !0,!1}else if("*"==d.charAt(d.length-1)){if(d=d.substr(0,d.length-1),0==f.indexOf(d))return k=!0,!1}else if("#"==d){if(""==f)return k=!0,!1}else if("CFP"==d.toUpperCase()){if(t)return k=!0,!1}else if(d==f)return k=!0,!1;return!0});switch(m){case "B":k&&(g=!1);break;case "W":k||(g=!1)}}if(g&&a.hasAttribute("countries"))switch(h=a.getAttribute("countries").split(","),m=a.getAttribute("country-list"),k=!1,h.every((d,n)=>{n=d.trim().split(":");if(null==n[1]||""==p)n[1]="";if(null==n[2]||""==q)n[2]=""; d=n.join(":").toUpperCase();n=(r+":"+(""==n[1]?"":p)+":"+(""==n[2]?"":q)).toUpperCase();return d==n?(k=!0,!1):!0}),m){case "B":k&&(g=!1);break;case "W":k||(g=!1)}a.style.visibility="";a.style.position="";a.style.width="";a.style.height="";a.style.zIndex="";for(h=a.previousElementSibling;h&&!h.matches(".ai-debug-bar");)h=h.previousElementSibling;null!=h&&(m=h.querySelector(".ai-debug-name.ai-ip-country"),null!=m&&(m.textContent=e),m=h.querySelector(".ai-debug-name.ai-ip-status"),null!=m&&(m.textContent= g?ai_front.visible:ai_front.hidden));if(g){if(null!=c&&(c.style.visibility="",c.classList.contains("ai-remove-position")&&(c.style.position="")),a.hasAttribute("data-code")){h=b64d(a.dataset.code);m=document.createRange();var w=!0;try{var x=m.createContextualFragment(h)}catch(d){w=!1}w&&(null!=a.closest("head")?(a.parentNode.insertBefore(x,a.nextSibling),a.remove()):a.append(x));a.removeAttribute("data-code");z(a)}}else a.style.display="none",null!=c&&(c.removeAttribute("data-ai"),c.classList.remove("ai-track"), null!=c.querySelector(".ai-debug-block")?(c.style.visibility="",c.classList.remove("ai-close"),c.classList.contains("ai-remove-position")&&(c.style.position=""),a.hasAttribute("data-code")&&(c.classList.remove("ai-list-block"),c.classList.remove("ai-list-block-filter"),null!=c.previousElementSibling&&c.previousElementSibling.classList.contains("ai-debug-info")&&c.previousElementSibling.remove())):c.hasAttribute("style")&&-1==c.getAttribute("style").indexOf("height:")&&(c.style.display="none"));null!= c&&c.classList.remove("ai-list-block-ip")})}}ai_process_ip_addresses=function(b){if(null==b)b=document.querySelectorAll("div.ai-ip-data, meta.ai-ip-data");else{window.jQuery&&window.jQuery.fn&&b instanceof jQuery&&(b=Array.prototype.slice.call(b));var g=[];b.forEach((e,a)=>{e.matches(".ai-ip-data")?g.push(e):(e=e.querySelectorAll(".ai-ip-data"),e.length&&e.forEach((c,h)=>{g.push(c)}))});b=g}if(b.length)if("undefined"!=typeof ai_ip_data)v(b);else if("undefined"==typeof ai_ip_data_requested){ai_ip_data_requested= !0;var l=ai_ajax_url+"?action=ai_ajax&ip-data=ip-address-country-city",f=u("ai-debug-ip-address");null!=f&&(l+="&ai-debug-ip-address="+f);f=u("ai-debug-country");null!=f&&(l+="&ai-debug-country="+f);f={ai_check:ai_data_id,version:y()};var r=[],p;for(p in f){var q=encodeURIComponent(p),t=encodeURIComponent(f[p]);r.push(q+"="+t)}r=r.join("&");(async function(){return await (await fetch(l,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"},body:r})).text()})().then(e=> {ai_ip_data=e;if(""==e){var a="Ajax request returned empty data, geo-targeting disabled";console.error(a);"undefined"!=typeof ai_js_errors&&ai_js_errors.push([a,l,0])}else try{JSON.parse(e)}catch(c){a="Ajax call returned invalid data, geo-targeting disabled",console.error(a,e),"undefined"!=typeof ai_js_errors&&ai_js_errors.push([a,l,0])}b=document.querySelectorAll("div.ai-ip-data, meta.ai-ip-data");b.length&&v(b)}).catch(e=>{document.querySelectorAll("div.ai-ip-data").forEach((a,c)=>{a.style.display= "none";a.style.visibility="";a.style.position="";a.style.width="";a.style.height="";a.style.zIndex="";a.classList.remove("ai-ip-data")})})}};(function(b){"complete"===document.readyState||"loading"!==document.readyState&&!document.documentElement.doScroll?b():document.addEventListener("DOMContentLoaded",b)})(function(){setTimeout(function(){ai_process_ip_addresses()},5)});function z(b){setTimeout(function(){"function"==typeof ai_process_rotations_in_element&&ai_process_rotations_in_element(b);"function"== typeof ai_process_lists&&ai_process_lists();"function"==typeof ai_process_ip_addresses&&ai_process_ip_addresses();"function"==typeof ai_process_filter_hooks&&ai_process_filter_hooks();"function"==typeof ai_adb_process_blocks&&ai_adb_process_blocks(b);"function"==typeof ai_process_impressions&&1==ai_tracking_finished&&ai_process_impressions();"function"==typeof ai_install_click_trackers&&1==ai_tracking_finished&&ai_install_click_trackers();"function"==typeof ai_install_close_buttons&&ai_install_close_buttons(document)}, 5)}}; ai_js_code = true; </script> </body> </html> <!-- Performance optimized by W3 Total Cache. Learn more: https://www.boldgrid.com/w3-total-cache/ Page Caching using Disk: Enhanced Database Caching using Disk Served from: www.on-sitemag.com @ 2024-12-02 22:03:11 by W3 Total Cache -->