CINXE.COM
Introduction to Web Components API | CodeGuru.com
<!doctype html > <!--[if IE 8]> <html class="ie8" lang="en"> <![endif]--> <!--[if IE 9]> <html class="ie9" lang="en"> <![endif]--> <!--[if gt IE 8]><!--> <html lang="en-US"> <!--<![endif]--> <head> <title>Introduction to Web Components API | CodeGuru.com</title> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <link rel="pingback" href="https://www.codeguru.com/wp/xmlrpc.php" /> <meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1' /> <link rel="icon" type="image/png" href="https://assets.codeguru.com/uploads/2021/08/CG_Favicon.png"> <!-- This site is optimized with the Yoast SEO plugin v23.8 - https://yoast.com/wordpress/plugins/seo/ --> <meta name="description" content="This web development tutorial looks at web components developers can use to create better maintainability of their codebases. Learn more." /> <link rel="canonical" href="https://www.codeguru.com/soap/web-components-api/" /> <meta property="og:locale" content="en_US" /> <meta property="og:type" content="article" /> <meta property="og:title" content="Introduction to Web Components API | CodeGuru.com" /> <meta property="og:description" content="This web development tutorial looks at web components developers can use to create better maintainability of their codebases. Learn more." /> <meta property="og:url" content="https://www.codeguru.com/soap/web-components-api/" /> <meta property="og:site_name" content="CodeGuru" /> <meta property="article:published_time" content="2022-07-13T19:07:29+00:00" /> <meta property="og:image" content="https://assets.codeguru.com/uploads/2022/06/API-Testing-Tutorial-scaled.jpeg" /> <meta property="og:image:width" content="2560" /> <meta property="og:image:height" content="1707" /> <meta property="og:image:type" content="image/jpeg" /> <meta name="author" content="Tariq Siddiqui" /> <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:label1" content="Written by" /> <meta name="twitter:data1" content="Tariq Siddiqui" /> <meta name="twitter:label2" content="Est. reading time" /> <meta name="twitter:data2" content="7 minutes" /> <script type="application/ld+json" class="yoast-schema-graph">{"@context":"https://schema.org","@graph":[{"@type":"Article","@id":"https://www.codeguru.com/soap/web-components-api/#article","isPartOf":{"@id":"https://www.codeguru.com/soap/web-components-api/"},"author":{"name":"Tariq Siddiqui","@id":"https://www.codeguru.com/#/schema/person/475d83e8cad72f33ea5816778f18d7f1"},"headline":"Introduction to Web Components API","datePublished":"2022-07-13T19:07:29+00:00","dateModified":"2022-07-13T19:07:29+00:00","mainEntityOfPage":{"@id":"https://www.codeguru.com/soap/web-components-api/"},"wordCount":1375,"publisher":{"@id":"https://www.codeguru.com/#organization"},"image":{"@id":"https://www.codeguru.com/soap/web-components-api/#primaryimage"},"thumbnailUrl":"https://assets.codeguru.com/uploads/2022/06/API-Testing-Tutorial-scaled.jpeg","keywords":["API","CSS","framework","HTML","JavaScript","Web development"],"articleSection":[".NET","SOAP"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https://www.codeguru.com/soap/web-components-api/","url":"https://www.codeguru.com/soap/web-components-api/","name":"Introduction to Web Components API | CodeGuru.com","isPartOf":{"@id":"https://www.codeguru.com/#website"},"primaryImageOfPage":{"@id":"https://www.codeguru.com/soap/web-components-api/#primaryimage"},"image":{"@id":"https://www.codeguru.com/soap/web-components-api/#primaryimage"},"thumbnailUrl":"https://assets.codeguru.com/uploads/2022/06/API-Testing-Tutorial-scaled.jpeg","datePublished":"2022-07-13T19:07:29+00:00","dateModified":"2022-07-13T19:07:29+00:00","description":"This web development tutorial looks at web components developers can use to create better maintainability of their codebases. Learn more.","breadcrumb":{"@id":"https://www.codeguru.com/soap/web-components-api/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https://www.codeguru.com/soap/web-components-api/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https://www.codeguru.com/soap/web-components-api/#primaryimage","url":"https://assets.codeguru.com/uploads/2022/06/API-Testing-Tutorial-scaled.jpeg","contentUrl":"https://assets.codeguru.com/uploads/2022/06/API-Testing-Tutorial-scaled.jpeg","width":2560,"height":1707,"caption":"API Tutorial"},{"@type":"BreadcrumbList","@id":"https://www.codeguru.com/soap/web-components-api/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://www.codeguru.com/"},{"@type":"ListItem","position":2,"name":"Introduction to Web Components API"}]},{"@type":"WebSite","@id":"https://www.codeguru.com/#website","url":"https://www.codeguru.com/","name":"CodeGuru","description":"","publisher":{"@id":"https://www.codeguru.com/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://www.codeguru.com/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https://www.codeguru.com/#organization","name":"Code Guru","url":"https://www.codeguru.com/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https://www.codeguru.com/#/schema/logo/image/","url":"https://assets.codeguru.com/uploads/2021/08/CG_RetinaLogo-copy.png","contentUrl":"https://assets.codeguru.com/uploads/2021/08/CG_RetinaLogo-copy.png","width":2267,"height":339,"caption":"Code Guru"},"image":{"@id":"https://www.codeguru.com/#/schema/logo/image/"}},{"@type":"Person","@id":"https://www.codeguru.com/#/schema/person/475d83e8cad72f33ea5816778f18d7f1","name":"Tariq Siddiqui","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https://www.codeguru.com/#/schema/person/image/","url":"https://assets.codeguru.com/uploads/2022/02/Tariq-461x462-1-96x96.png","contentUrl":"https://assets.codeguru.com/uploads/2022/02/Tariq-461x462-1-96x96.png","caption":"Tariq Siddiqui"},"description":"A graduate in MS Computer Applications and a Web Developer from India with diverse skills across multiple Web development technologies. Enjoys writing about any tech topic, including programming, algorithms and cloud computing. Traveling and playing video games are the hobbies that interest me most.","url":"https://www.codeguru.com/author/tariqsiddiqui/"}]}</script> <!-- / Yoast SEO plugin. --> <link rel='dns-prefetch' href='//www.codeguru.com' /> <link rel='dns-prefetch' href='//assets.codeguru.com' /> <link rel="alternate" type="application/rss+xml" title="CodeGuru » Feed" href="https://www.codeguru.com/feed/" /> <link rel="alternate" type="application/rss+xml" title="CodeGuru » Comments Feed" href="https://www.codeguru.com/comments/feed/" /> <!-- codeguru.com is managing ads with Advanced Ads 1.55.0 --><script data-src="data:text/javascript;base64,CgkJCXdpbmRvdy5hZHZhbmNlZF9hZHNfcmVhZHk9ZnVuY3Rpb24oZSxhKXthPWF8fCJjb21wbGV0ZSI7dmFyIGQ9ZnVuY3Rpb24oZSl7cmV0dXJuImludGVyYWN0aXZlIj09PWE/ImxvYWRpbmciIT09ZToiY29tcGxldGUiPT09ZX07ZChkb2N1bWVudC5yZWFkeVN0YXRlKT9lKCk6ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigicmVhZHlzdGF0ZWNoYW5nZSIsKGZ1bmN0aW9uKGEpe2QoYS50YXJnZXQucmVhZHlTdGF0ZSkmJmUoKX0pLHtvbmNlOiJpbnRlcmFjdGl2ZSI9PT1hfSl9LHdpbmRvdy5hZHZhbmNlZF9hZHNfcmVhZHlfcXVldWU9d2luZG93LmFkdmFuY2VkX2Fkc19yZWFkeV9xdWV1ZXx8W107CQk=" data-type="lazy" id="wp-ads-ready"></script> <link rel='preload' as='style' onload="this.onload=null;this.rel='stylesheet'" id='wp-block-library' href='https://www.codeguru.com/wp/wp-includes/css/dist/block-library/style.min.css?ver=6.6.2' type='text/css' media='all' /> <noscript><link rel='stylesheet' id='wp-block-library' href='https://www.codeguru.com/wp/wp-includes/css/dist/block-library/style.min.css?ver=6.6.2' type='text/css' media='all'></noscript><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: 11px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 32px;--wp--preset--font-size--x-large: 42px;--wp--preset--font-size--regular: 15px;--wp--preset--font-size--larger: 50px;--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='preload' as='style' onload="this.onload=null;this.rel='stylesheet'" id='taxopress-frontend-css' href='https://www.codeguru.com/wp-content/plugins/simple-tags/assets/frontend/css/frontend.css?ver=3.27.0' type='text/css' media='all' /> <noscript><link rel='stylesheet' id='taxopress-frontend-css' href='https://www.codeguru.com/wp-content/plugins/simple-tags/assets/frontend/css/frontend.css?ver=3.27.0' type='text/css' media='all'></noscript><link rel='stylesheet' id='parent-style-css' href='https://www.codeguru.com/wp-content/themes/newspaper/style.css?ver=1732548236' type='text/css' media='all' /> <link rel='preload' as='style' onload="this.onload=null;this.rel='stylesheet'" id='td-plugin-multi-purpose' href='https://www.codeguru.com/wp-content/plugins/td-composer/td-multi-purpose/style.css?ver=def8edc4e13d95bdf49953a9dce2f608' type='text/css' media='all' /> <noscript><link rel='stylesheet' id='td-plugin-multi-purpose' href='https://www.codeguru.com/wp-content/plugins/td-composer/td-multi-purpose/style.css?ver=def8edc4e13d95bdf49953a9dce2f608' type='text/css' media='all'></noscript><link rel='preload' as='style' onload="this.onload=null;this.rel='stylesheet'" id='font_awesome' href='https://www.codeguru.com/wp-content/plugins/td-composer/assets/fonts/font-awesome/font-awesome.css?ver=def8edc4e13d95bdf49953a9dce2f608' type='text/css' media='all' /> <noscript><link rel='stylesheet' id='font_awesome' href='https://www.codeguru.com/wp-content/plugins/td-composer/assets/fonts/font-awesome/font-awesome.css?ver=def8edc4e13d95bdf49953a9dce2f608' type='text/css' media='all'></noscript><link rel='preload' as='style' onload="this.onload=null;this.rel='stylesheet'" id='td-theme' href='https://www.codeguru.com/wp-content/themes/Newspaper-child-codeguru/style.css?ver=1732548222' type='text/css' media='all' /> <noscript><link rel='stylesheet' id='td-theme' href='https://www.codeguru.com/wp-content/themes/Newspaper-child-codeguru/style.css?ver=1732548222' type='text/css' media='all'></noscript><style id='td-theme-inline-css' type='text/css'>@media (max-width:767px){.td-header-desktop-wrap{display:none}}@media (min-width:767px){.td-header-mobile-wrap{display:none}}</style> <link rel='stylesheet' id='td-legacy-framework-front-style-css' href='https://www.codeguru.com/wp-content/plugins/td-composer/legacy/Newspaper/assets/css/td_legacy_main.css?ver=def8edc4e13d95bdf49953a9dce2f608' type='text/css' media='all' /> <link rel='preload' as='style' onload="this.onload=null;this.rel='stylesheet'" id='td-standard-pack-framework-front-style' href='https://www.codeguru.com/wp-content/plugins/td-standard-pack/Newspaper/assets/css/td_standard_pack_main.css?ver=1b3d5bf2c64738aa07b4643e31257da9' type='text/css' media='all' /> <noscript><link rel='stylesheet' id='td-standard-pack-framework-front-style' href='https://www.codeguru.com/wp-content/plugins/td-standard-pack/Newspaper/assets/css/td_standard_pack_main.css?ver=1b3d5bf2c64738aa07b4643e31257da9' type='text/css' media='all'></noscript><link rel='preload' as='style' onload="this.onload=null;this.rel='stylesheet'" id='tdb_style_cloud_templates_front' href='https://www.codeguru.com/wp-content/plugins/td-cloud-library/assets/css/tdb_main.css?ver=b33652f2535d2f3812f59e306e26300d' type='text/css' media='all' /> <noscript><link rel='stylesheet' id='tdb_style_cloud_templates_front' href='https://www.codeguru.com/wp-content/plugins/td-cloud-library/assets/css/tdb_main.css?ver=b33652f2535d2f3812f59e306e26300d' type='text/css' media='all'></noscript><script type="text/javascript" src="https://www.codeguru.com/wp/wp-includes/js/jquery/jquery.min.js?ver=3.7.1" id="jquery-core-js"></script> <script data-src="https://www.codeguru.com/wp-content/plugins/simple-tags/assets/frontend/js/frontend.js?ver=3.27.0" data-type="lazy" type="text/javascript" id="taxopress-frontend-js-js"></script> <link rel="https://api.w.org/" href="https://www.codeguru.com/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://www.codeguru.com/wp-json/wp/v2/posts/19341" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://www.codeguru.com/wp/xmlrpc.php?rsd" /> <meta name="generator" content="WordPress 6.6.2" /> <link rel='shortlink' href='https://www.codeguru.com/?p=19341' /> <link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://www.codeguru.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.codeguru.com%2Fsoap%2Fweb-components-api%2F" /> <link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://www.codeguru.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fwww.codeguru.com%2Fsoap%2Fweb-components-api%2F&format=xml" /> <!-- Google Tag Manager --> <script type="text/javascript"> (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-NR3XXWX8'); </script> <!-- End Google Tag Manager --> <script data-src="data:text/javascript;base64,CgkJdmFyIGFkdmFkc0NmcFF1ZXVlID0gW107CgkJdmFyIGFkdmFkc0NmcEFkID0gZnVuY3Rpb24oIGFkSUQgKXsKCQkJaWYgKCAndW5kZWZpbmVkJyA9PSB0eXBlb2YgYWR2YWRzUHJvQ2ZwICkgeyBhZHZhZHNDZnBRdWV1ZS5wdXNoKCBhZElEICkgfSBlbHNlIHsgYWR2YWRzUHJvQ2ZwLmFkZEVsZW1lbnQoIGFkSUQgKSB9CgkJfTsKCQk=" data-type="lazy" type="text/javascript"></script> <script> window.tdb_global_vars = {"wpRestUrl":"https:\/\/www.codeguru.com\/wp-json\/","permalinkStructure":"\/%category%\/%postname%\/"}; window.tdb_p_autoload_vars = {"isAjax":false,"isAdminBarShowing":false,"autoloadStatus":"off","origPostEditUrl":null}; </script> <style id="tdb-global-colors">:root{--accent-color:#fff}</style> <!-- JS generated by theme --> <script type="text/javascript" id="td-generated-header-js"> var tdBlocksArray = []; //here we store all the items for the current page // td_block class - each ajax block uses a object of this class for requests function tdBlock() { this.id = ''; this.block_type = 1; //block type id (1-234 etc) this.atts = ''; this.td_column_number = ''; this.td_current_page = 1; // this.post_count = 0; //from wp this.found_posts = 0; //from wp this.max_num_pages = 0; //from wp this.td_filter_value = ''; //current live filter value this.is_ajax_running = false; this.td_user_action = ''; // load more or infinite loader (used by the animation) this.header_color = ''; this.ajax_pagination_infinite_stop = ''; //show load more at page x } // td_js_generator - mini detector ( function () { var htmlTag = document.getElementsByTagName("html")[0]; if ( navigator.userAgent.indexOf("MSIE 10.0") > -1 ) { htmlTag.className += ' ie10'; } if ( !!navigator.userAgent.match(/Trident.*rv\:11\./) ) { htmlTag.className += ' ie11'; } if ( navigator.userAgent.indexOf("Edge") > -1 ) { htmlTag.className += ' ieEdge'; } if ( /(iPad|iPhone|iPod)/g.test(navigator.userAgent) ) { htmlTag.className += ' td-md-is-ios'; } var user_agent = navigator.userAgent.toLowerCase(); if ( user_agent.indexOf("android") > -1 ) { htmlTag.className += ' td-md-is-android'; } if ( -1 !== navigator.userAgent.indexOf('Mac OS X') ) { htmlTag.className += ' td-md-is-os-x'; } if ( /chrom(e|ium)/.test(navigator.userAgent.toLowerCase()) ) { htmlTag.className += ' td-md-is-chrome'; } if ( -1 !== navigator.userAgent.indexOf('Firefox') ) { htmlTag.className += ' td-md-is-firefox'; } if ( -1 !== navigator.userAgent.indexOf('Safari') && -1 === navigator.userAgent.indexOf('Chrome') ) { htmlTag.className += ' td-md-is-safari'; } if( -1 !== navigator.userAgent.indexOf('IEMobile') ){ htmlTag.className += ' td-md-is-iemobile'; } })(); var tdLocalCache = {}; ( function () { "use strict"; tdLocalCache = { data: {}, remove: function (resource_id) { delete tdLocalCache.data[resource_id]; }, exist: function (resource_id) { return tdLocalCache.data.hasOwnProperty(resource_id) && tdLocalCache.data[resource_id] !== null; }, get: function (resource_id) { return tdLocalCache.data[resource_id]; }, set: function (resource_id, cachedData) { tdLocalCache.remove(resource_id); tdLocalCache.data[resource_id] = cachedData; } }; })(); var td_viewport_interval_list=[{"limitBottom":767,"sidebarWidth":228},{"limitBottom":1018,"sidebarWidth":300},{"limitBottom":1140,"sidebarWidth":324}]; var tdc_is_installed="yes"; var td_ajax_url="https:\/\/www.codeguru.com\/wp\/wp-admin\/admin-ajax.php?td_theme_name=Newspaper&v=12.6.8"; var td_get_template_directory_uri="https:\/\/www.codeguru.com\/wp-content\/plugins\/td-composer\/legacy\/common"; var tds_snap_menu=""; var tds_logo_on_sticky=""; var tds_header_style=""; var td_please_wait="Please wait..."; var td_email_user_pass_incorrect="User or password incorrect!"; var td_email_user_incorrect="Email or username incorrect!"; var td_email_incorrect="Email incorrect!"; var td_user_incorrect="Username incorrect!"; var td_email_user_empty="Email or username empty!"; var td_pass_empty="Pass empty!"; var td_pass_pattern_incorrect="Invalid Pass Pattern!"; var td_retype_pass_incorrect="Retyped Pass incorrect!"; var tds_more_articles_on_post_enable=""; var tds_more_articles_on_post_time_to_wait=""; var tds_more_articles_on_post_pages_distance_from_top=0; var tds_captcha=""; var tds_theme_color_site_wide="#238fee"; var tds_smart_sidebar=""; var tdThemeName="Newspaper"; var tdThemeNameWl="Newspaper"; var td_magnific_popup_translation_tPrev="Previous (Left arrow key)"; var td_magnific_popup_translation_tNext="Next (Right arrow key)"; var td_magnific_popup_translation_tCounter="%curr% of %total%"; var td_magnific_popup_translation_ajax_tError="The content from %url% could not be loaded."; var td_magnific_popup_translation_image_tError="The image #%curr% could not be loaded."; var tdBlockNonce="c733d33189"; var tdMobileMenu="enabled"; var tdMobileSearch="enabled"; var tdDateNamesI18n={"month_names":["January","February","March","April","May","June","July","August","September","October","November","December"],"month_names_short":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"day_names":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"day_names_short":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]}; var tdb_modal_confirm="Save"; var tdb_modal_cancel="Cancel"; var tdb_modal_confirm_alt="Yes"; var tdb_modal_cancel_alt="No"; var td_deploy_mode="deploy"; var td_ad_background_click_link=""; var td_ad_background_click_target=""; </script> <!-- Header style compiled by theme --> <style>.td-page-content .widgettitle{color:#fff}.td-mobile-content .td-mobile-main-menu>li>a{font-family:brother-xl}.td-mobile-content .sub-menu a{font-family:brother-xl}#td-mobile-nav,#td-mobile-nav .wpb_button,.td-search-wrap-mob{font-family:brother-xl}.td-page-title,.td-category-title-holder .td-page-title{font-family:brother-xl}.td-page-content p,.td-page-content li,.td-page-content .td_block_text_with_title,.wpb_text_column p{font-family:brother-xl}.td-page-content h1,.wpb_text_column h1{font-family:brother-xl}.td-page-content h2,.wpb_text_column h2{font-family:brother-xl}.td-page-content h3,.wpb_text_column h3{font-family:brother-xl}.td-page-content h4,.wpb_text_column h4{font-family:brother-xl}.td-page-content h5,.wpb_text_column h5{font-family:brother-xl}.td-page-content h6,.wpb_text_column h6{font-family:brother-xl}body,p{font-family:brother-xl}.white-popup-block,.white-popup-block .wpb_button{font-family:brother-xl}:root{--td_theme_color:#238fee;--td_slider_text:rgba(35,143,238,0.7);--td_text_header_color:#151948;--td_mobile_menu_color:#080a19;--td_mobile_gradient_one_mob:#238fee;--td_mobile_gradient_two_mob:#26bde9;--td_mobile_text_active_color:#151948;--td_mobile_button_color_mob:#ffffff;--td_page_title_color:#7e90a9;--td_page_content_color:#122c56;--td_page_h_color:#7e90a9}.td-header-style-12 .td-header-menu-wrap-full,.td-header-style-12 .td-affix,.td-grid-style-1.td-hover-1 .td-big-grid-post:hover .td-post-category,.td-grid-style-5.td-hover-1 .td-big-grid-post:hover .td-post-category,.td_category_template_3 .td-current-sub-category,.td_category_template_8 .td-category-header .td-category a.td-current-sub-category,.td_category_template_4 .td-category-siblings .td-category a:hover,.td_block_big_grid_9.td-grid-style-1 .td-post-category,.td_block_big_grid_9.td-grid-style-5 .td-post-category,.td-grid-style-6.td-hover-1 .td-module-thumb:after,.tdm-menu-active-style5 .td-header-menu-wrap .sf-menu>.current-menu-item>a,.tdm-menu-active-style5 .td-header-menu-wrap .sf-menu>.current-menu-ancestor>a,.tdm-menu-active-style5 .td-header-menu-wrap .sf-menu>.current-category-ancestor>a,.tdm-menu-active-style5 .td-header-menu-wrap .sf-menu>li>a:hover,.tdm-menu-active-style5 .td-header-menu-wrap .sf-menu>.sfHover>a{background-color:#238fee}.td_mega_menu_sub_cats .cur-sub-cat,.td-mega-span h3 a:hover,.td_mod_mega_menu:hover .entry-title a,.header-search-wrap .result-msg a:hover,.td-header-top-menu .td-drop-down-search .td_module_wrap:hover .entry-title a,.td-header-top-menu .td-icon-search:hover,.td-header-wrap .result-msg a:hover,.top-header-menu li a:hover,.top-header-menu .current-menu-item>a,.top-header-menu .current-menu-ancestor>a,.top-header-menu .current-category-ancestor>a,.td-social-icon-wrap>a:hover,.td-header-sp-top-widget .td-social-icon-wrap a:hover,.td_mod_related_posts:hover h3>a,.td-post-template-11 .td-related-title .td-related-left:hover,.td-post-template-11 .td-related-title .td-related-right:hover,.td-post-template-11 .td-related-title .td-cur-simple-item,.td-post-template-11 .td_block_related_posts .td-next-prev-wrap a:hover,.td-category-header .td-pulldown-category-filter-link:hover,.td-category-siblings .td-subcat-dropdown a:hover,.td-category-siblings .td-subcat-dropdown a.td-current-sub-category,.footer-text-wrap .footer-email-wrap a,.footer-social-wrap a:hover,.td_module_17 .td-read-more a:hover,.td_module_18 .td-read-more a:hover,.td_module_19 .td-post-author-name a:hover,.td-pulldown-syle-2 .td-subcat-dropdown:hover .td-subcat-more span,.td-pulldown-syle-2 .td-subcat-dropdown:hover .td-subcat-more i,.td-pulldown-syle-3 .td-subcat-dropdown:hover .td-subcat-more span,.td-pulldown-syle-3 .td-subcat-dropdown:hover .td-subcat-more i,.tdm-menu-active-style3 .tdm-header.td-header-wrap .sf-menu>.current-category-ancestor>a,.tdm-menu-active-style3 .tdm-header.td-header-wrap .sf-menu>.current-menu-ancestor>a,.tdm-menu-active-style3 .tdm-header.td-header-wrap .sf-menu>.current-menu-item>a,.tdm-menu-active-style3 .tdm-header.td-header-wrap .sf-menu>.sfHover>a,.tdm-menu-active-style3 .tdm-header.td-header-wrap .sf-menu>li>a:hover{color:#238fee}.td-mega-menu-page .wpb_content_element ul li a:hover,.td-theme-wrap .td-aj-search-results .td_module_wrap:hover .entry-title a,.td-theme-wrap .header-search-wrap .result-msg a:hover{color:#238fee!important}.td_category_template_8 .td-category-header .td-category a.td-current-sub-category,.td_category_template_4 .td-category-siblings .td-category a:hover,.tdm-menu-active-style4 .tdm-header .sf-menu>.current-menu-item>a,.tdm-menu-active-style4 .tdm-header .sf-menu>.current-menu-ancestor>a,.tdm-menu-active-style4 .tdm-header .sf-menu>.current-category-ancestor>a,.tdm-menu-active-style4 .tdm-header .sf-menu>li>a:hover,.tdm-menu-active-style4 .tdm-header .sf-menu>.sfHover>a{border-color:#238fee}.td-theme-wrap .td-mega-span h3 a{color:#080a19}.td-theme-wrap .td_mega_menu_sub_cats a{color:#080a19}.td-theme-wrap .td_mod_mega_menu:hover .entry-title a,.td-theme-wrap .sf-menu .td_mega_menu_sub_cats .cur-sub-cat{color:#238fee}.td-theme-wrap .sf-menu .td-mega-menu .td-post-category:hover,.td-theme-wrap .td-mega-menu .td-next-prev-wrap a:hover{background-color:#238fee}.td-theme-wrap .td-mega-menu .td-next-prev-wrap a:hover{border-color:#238fee}.td-theme-wrap .td-aj-search-results .td-module-title a,.td-theme-wrap #td-header-search,.td-theme-wrap .header-search-wrap .result-msg a{color:#080a19}.td-theme-wrap .header-search-wrap .td-drop-down-search .btn{background-color:#080a19}.td-theme-wrap .header-search-wrap .td-drop-down-search .btn:hover,.td-theme-wrap .td-aj-search-results .td_module_wrap:hover .entry-title a,.td-theme-wrap .header-search-wrap .result-msg a:hover{color:#238fee!important}.td-page-content .widgettitle{color:#fff}.td-mobile-content .td-mobile-main-menu>li>a{font-family:brother-xl}.td-mobile-content .sub-menu a{font-family:brother-xl}#td-mobile-nav,#td-mobile-nav .wpb_button,.td-search-wrap-mob{font-family:brother-xl}.td-page-title,.td-category-title-holder .td-page-title{font-family:brother-xl}.td-page-content p,.td-page-content li,.td-page-content .td_block_text_with_title,.wpb_text_column p{font-family:brother-xl}.td-page-content h1,.wpb_text_column h1{font-family:brother-xl}.td-page-content h2,.wpb_text_column h2{font-family:brother-xl}.td-page-content h3,.wpb_text_column h3{font-family:brother-xl}.td-page-content h4,.wpb_text_column h4{font-family:brother-xl}.td-page-content h5,.wpb_text_column h5{font-family:brother-xl}.td-page-content h6,.wpb_text_column h6{font-family:brother-xl}body,p{font-family:brother-xl}.white-popup-block,.white-popup-block .wpb_button{font-family:brother-xl}:root{--td_theme_color:#238fee;--td_slider_text:rgba(35,143,238,0.7);--td_text_header_color:#151948;--td_mobile_menu_color:#080a19;--td_mobile_gradient_one_mob:#238fee;--td_mobile_gradient_two_mob:#26bde9;--td_mobile_text_active_color:#151948;--td_mobile_button_color_mob:#ffffff;--td_page_title_color:#7e90a9;--td_page_content_color:#122c56;--td_page_h_color:#7e90a9}.td-header-style-12 .td-header-menu-wrap-full,.td-header-style-12 .td-affix,.td-grid-style-1.td-hover-1 .td-big-grid-post:hover .td-post-category,.td-grid-style-5.td-hover-1 .td-big-grid-post:hover .td-post-category,.td_category_template_3 .td-current-sub-category,.td_category_template_8 .td-category-header .td-category a.td-current-sub-category,.td_category_template_4 .td-category-siblings .td-category a:hover,.td_block_big_grid_9.td-grid-style-1 .td-post-category,.td_block_big_grid_9.td-grid-style-5 .td-post-category,.td-grid-style-6.td-hover-1 .td-module-thumb:after,.tdm-menu-active-style5 .td-header-menu-wrap .sf-menu>.current-menu-item>a,.tdm-menu-active-style5 .td-header-menu-wrap .sf-menu>.current-menu-ancestor>a,.tdm-menu-active-style5 .td-header-menu-wrap .sf-menu>.current-category-ancestor>a,.tdm-menu-active-style5 .td-header-menu-wrap .sf-menu>li>a:hover,.tdm-menu-active-style5 .td-header-menu-wrap .sf-menu>.sfHover>a{background-color:#238fee}.td_mega_menu_sub_cats .cur-sub-cat,.td-mega-span h3 a:hover,.td_mod_mega_menu:hover .entry-title a,.header-search-wrap .result-msg a:hover,.td-header-top-menu .td-drop-down-search .td_module_wrap:hover .entry-title a,.td-header-top-menu .td-icon-search:hover,.td-header-wrap .result-msg a:hover,.top-header-menu li a:hover,.top-header-menu .current-menu-item>a,.top-header-menu .current-menu-ancestor>a,.top-header-menu .current-category-ancestor>a,.td-social-icon-wrap>a:hover,.td-header-sp-top-widget .td-social-icon-wrap a:hover,.td_mod_related_posts:hover h3>a,.td-post-template-11 .td-related-title .td-related-left:hover,.td-post-template-11 .td-related-title .td-related-right:hover,.td-post-template-11 .td-related-title .td-cur-simple-item,.td-post-template-11 .td_block_related_posts .td-next-prev-wrap a:hover,.td-category-header .td-pulldown-category-filter-link:hover,.td-category-siblings .td-subcat-dropdown a:hover,.td-category-siblings .td-subcat-dropdown a.td-current-sub-category,.footer-text-wrap .footer-email-wrap a,.footer-social-wrap a:hover,.td_module_17 .td-read-more a:hover,.td_module_18 .td-read-more a:hover,.td_module_19 .td-post-author-name a:hover,.td-pulldown-syle-2 .td-subcat-dropdown:hover .td-subcat-more span,.td-pulldown-syle-2 .td-subcat-dropdown:hover .td-subcat-more i,.td-pulldown-syle-3 .td-subcat-dropdown:hover .td-subcat-more span,.td-pulldown-syle-3 .td-subcat-dropdown:hover .td-subcat-more i,.tdm-menu-active-style3 .tdm-header.td-header-wrap .sf-menu>.current-category-ancestor>a,.tdm-menu-active-style3 .tdm-header.td-header-wrap .sf-menu>.current-menu-ancestor>a,.tdm-menu-active-style3 .tdm-header.td-header-wrap .sf-menu>.current-menu-item>a,.tdm-menu-active-style3 .tdm-header.td-header-wrap .sf-menu>.sfHover>a,.tdm-menu-active-style3 .tdm-header.td-header-wrap .sf-menu>li>a:hover{color:#238fee}.td-mega-menu-page .wpb_content_element ul li a:hover,.td-theme-wrap .td-aj-search-results .td_module_wrap:hover .entry-title a,.td-theme-wrap .header-search-wrap .result-msg a:hover{color:#238fee!important}.td_category_template_8 .td-category-header .td-category a.td-current-sub-category,.td_category_template_4 .td-category-siblings .td-category a:hover,.tdm-menu-active-style4 .tdm-header .sf-menu>.current-menu-item>a,.tdm-menu-active-style4 .tdm-header .sf-menu>.current-menu-ancestor>a,.tdm-menu-active-style4 .tdm-header .sf-menu>.current-category-ancestor>a,.tdm-menu-active-style4 .tdm-header .sf-menu>li>a:hover,.tdm-menu-active-style4 .tdm-header .sf-menu>.sfHover>a{border-color:#238fee}.td-theme-wrap .td-mega-span h3 a{color:#080a19}.td-theme-wrap .td_mega_menu_sub_cats a{color:#080a19}.td-theme-wrap .td_mod_mega_menu:hover .entry-title a,.td-theme-wrap .sf-menu .td_mega_menu_sub_cats .cur-sub-cat{color:#238fee}.td-theme-wrap .sf-menu .td-mega-menu .td-post-category:hover,.td-theme-wrap .td-mega-menu .td-next-prev-wrap a:hover{background-color:#238fee}.td-theme-wrap .td-mega-menu .td-next-prev-wrap a:hover{border-color:#238fee}.td-theme-wrap .td-aj-search-results .td-module-title a,.td-theme-wrap #td-header-search,.td-theme-wrap .header-search-wrap .result-msg a{color:#080a19}.td-theme-wrap .header-search-wrap .td-drop-down-search .btn{background-color:#080a19}.td-theme-wrap .header-search-wrap .td-drop-down-search .btn:hover,.td-theme-wrap .td-aj-search-results .td_module_wrap:hover .entry-title a,.td-theme-wrap .header-search-wrap .result-msg a:hover{color:#238fee!important}</style> <link rel="preload" href="https://securepubads.g.doubleclick.net/tag/js/gpt.js" as="script"> <script nowprocket async src="https://securepubads.g.doubleclick.net/tag/js/gpt.js"></script> <!-- Start: Data Layer --> <script nowprocket> window.dataLayer = window.dataLayer || []; dataLayer.push({"event":"CMS_Data","topic":"dotnet, soap","kw":["api","css","framework","html","javascript","web-development"],"taxonomy":["product development architecture modeling","product development client side","product development cloud","product development components libraries","product development markup languages css","product development","product development tools","product development distributed","product development components libraries .net","product development embedded","product development markup languages html","audience purchase stage implementation","product development embedded internet of things","product development interoperability","product development programming languages javascript","product development mobile","product development multiexperience development","product development open source software development","product development platform framework","product development programming languages","product development security","product development server side","product development services web or platform","product development methodologies softwaredevelopmentlifecycle sdl","product staffing training certifications events training certifications software development training certifications","industry technology","product development testing debugging qa","product web internet development","product development platform framework web","product development markup languages xml"],"category":"dotnet, soap","keywords":["api","css","framework","html","javascript","web-development"]}); </script> <!-- End: Data Layer--> <!-- Start: GAM Head Tag --> <script nowprocket> window.googletag = window.googletag || { cmd: [] }; // VID const vid = fetch('https://link.technologyadvice.com/_me', { cache: "force-cache" }) .then(res => res.json()) .then(data => window.googletag.cmd.push(() => { window.googletag.pubads() .setTargeting('visitor_id', data.vid) .setTargeting('user_agent', data.user_agent); ([ ['is_datacenter', ['is-datacenter']], ['is_suspected_bot', ["suspected-bad-bot", "bad-bot"]], ['is_ta_user', ["is-ta-user"]], ['is_crawler', ["user-agent-blocked"]], ['is_ad_blocked', ["is-ad-blocked"]], ]) .filter(([tag, flags]) => data.tags?.includes(tag)) .reduce((acc, [_, flags]) => [...acc, ...flags], []) .forEach(flag => window.googletag.pubads().setTargeting(`site.${flag}`, 'true')); })) .catch(err => console.error(err)); // 6Sense const sense6 = fetch("https://epsilon.6sense.com/v3/company/details", { cache: "force-cache", headers: { 'Authorization': 'Token d20a1b0e892442270cbc4cb6801c0160d28af04c' } }) .then(res => res.json()) .then(data => window.googletag.cmd.push(() => { if (data.segments?.ids?.length) { window.googletag.pubads() .setTargeting('segment_ids_6si', data.segments.ids.map(String)); } })) .catch(err => console.error(err)); window.googletag.cmd.push(() => { window.googletag.pubads() .addEventListener("slotResponseReceived", async (event) => { if (!event.slot.getResponseInformation()) { window.requestAnimationFrame(() => { const id = event.slot.getSlotElementId(); if (!id) return; const slot = document.getElementById(id); if (!slot) return; // unset sizing on slots if no ads are available for assignment slot.style.setProperty('height', 'unset'); slot.style.setProperty('width', 'unset'); }) } }); const env = 'prod' const ptype = 'article'; const keywords = ["api","css","framework","html","javascript","web-development"]; const taxonomies = ["product development architecture modeling","product development client side","product development cloud","product development components libraries","product development markup languages css","product development","product development tools","product development distributed","product development components libraries .net","product development embedded","product development markup languages html","audience purchase stage implementation","product development embedded internet of things","product development interoperability","product development programming languages javascript","product development mobile","product development multiexperience development","product development open source software development","product development platform framework","product development programming languages","product development security","product development server side","product development services web or platform","product development methodologies softwaredevelopmentlifecycle sdl","product staffing training certifications events training certifications software development training certifications","industry technology","product development testing debugging qa","product web internet development","product development platform framework web","product development markup languages xml"]; const categories = ["dotnet","soap"]; const path = window.location.pathname; const url = window.location.hostname + path; const content_id = path.split('/').filter(v => !!v).pop() ?? ''; const campaign = (new URL(window.location)).searchParams.get("adTargeting_campaign") ?? ''; const cookies = Object.fromEntries(document.cookie.split('; ').map(c => c.split('=', 2))) const pvKey = 'userIP3.132.136.100'; const pvValue = Number(cookies[pvKey] ?? '0') + 1; document.cookie = `${pvKey}=${pvValue}; path=/; expires=` + (new Date(new Date().getTime() + (60 * 60 * 24 * 400)).toUTCString()); window.googletag.pubads() .setTargeting("env", env) .setTargeting("url", url) .setTargeting("hostname", window.location.hostname) .setTargeting("kw", keywords) .setTargeting("tax", taxonomies) .setTargeting("topic", categories.join(' ')) .setTargeting("path", path.split('/').filter(v => !!v)) .setTargeting("pv", `${pvValue}`) .setTargeting("ptype", ptype) .setTargeting("campaign", campaign) .setTargeting("cid", content_id) .setTargeting('lazyload', 'true'); window.googletag.pubads().enableSingleRequest(); window.googletag.pubads().enableLazyLoad({ fetchMarginPercent: 300, // when to fetch the ad? renderMarginPercent: 150, // when to render the ad mobileScaling: 2.0 // config for mobile }); }) window.googletag.cmd.push(() => { window.googletag.enableServices() }); </script><!-- Start: GAM Ad Slot Definitions | Codeguru SOAP --> <script nowprocket> window.googletag = window.googletag || { cmd: [] }; window.ta = window.ta || { gam: { ready: false, tags: {} } }; googletag.cmd.push(function() { // Define Ad Slot Configurations // Inline Top window.ta.gam.tags.inlinetop = { id: 'inline-top', refreshable: false, refresh_delay: 5, pending_refresh: false, refreshed: false, max_refresh: 5, refresh_counter: 0, viewable: false, in_view: undefined, visibility: 0, view_percentage_threshold: 85 }; window.ta.gam.tags.inlinetop.slot = googletag.defineSlot( '/5055/B2B/DEV/codeguru/soap/inline-top', [ [300, 50], [320, 50], [728, 90], [970, 90], [970, 250], [1000, 90] ], 'inline-top' ).defineSizeMapping( googletag.sizeMapping() // Desktop .addSize([1240, 650], [ [728, 90], [970, 90], [970, 250], [1000, 90] ]) // Tablet .addSize([768, 321], [ [728, 90] ]) // Mobile .addSize([0, 0], [ [300, 50], [320, 50] ]) .build() ) .addService(googletag.pubads()) .setTargeting('pos', 'top') .setTargeting('refreshable', 'false') .setTargeting('adrefreshed', 'false'); // Sticky Rail window.ta.gam.tags.stickyrail = { id: 'sticky-rail', refreshable: false, refresh_delay: 5, pending_refresh: false, refreshed: false, max_refresh: 5, refresh_counter: 0, viewable: false, in_view: undefined, visibility: 0, view_percentage_threshold: 85 }; window.ta.gam.tags.stickyrail.slot = googletag.defineSlot( '/5055/B2B/DEV/codeguru/soap/sticky-rail', [ [300, 50], [320, 50], [300, 250], [300, 600], [160, 600] ], 'sticky-rail' ).defineSizeMapping( googletag.sizeMapping() // Desktop .addSize([1240, 650], [ [300, 250], [300, 600], [160, 600] ]) // Tablet .addSize([768, 650], [ [300, 250], [300, 600], [160, 600] ]) // Mobile .addSize([0, 0], [ [300, 50], [320, 50], [300, 250] ]) .build() ) .addService(googletag.pubads()) .setTargeting('pos', 'top') .setTargeting('refreshable', 'false') .setTargeting('adrefreshed', 'false'); // Sticky Bottom window.ta.gam.tags.stickybottom = { id: 'sticky-bottom', refreshable: false, refresh_delay: 5, pending_refresh: false, refreshed: false, max_refresh: 5, refresh_counter: 0, viewable: false, in_view: undefined, visibility: 0, view_percentage_threshold: 85 }; window.ta.gam.tags.stickybottom.slot = googletag.defineSlot( '/5055/B2B/DEV/codeguru/soap/sticky-bottom', [ [300, 50], [320, 50], [728, 90], [970, 90], [1000, 90] ], 'sticky-bottom' ).defineSizeMapping( googletag.sizeMapping() // Desktop .addSize([1240, 650], [ [728, 90], [970, 90], [1000, 90] ]) // Tablet .addSize([768, 321], [ [728, 90] ]) // Mobile .addSize([0, 0], [ [300, 50], [320, 50] ]) .build() ) .addService(googletag.pubads()) .setTargeting('pos', 'sticky') .setTargeting('refreshable', 'false') .setTargeting('adrefreshed', 'false'); var nativeSiteName = 'codeguru'; var nativeCategory = 'soap'; // Native Study Guide window.ta.gam.tags.nativestudyguide = { id: 'native-study-guide', refreshable: false, refresh_delay: 5, pending_refresh: false, refreshed: false, max_refresh: 5, refresh_counter: 0, viewable: false, in_view: undefined, visibility: 0, view_percentage_threshold: 85 }; window.ta.gam.tags.nativestudyguide.slot = googletag.defineSlot( '/5055/B2B/DEV/' + nativeSiteName + '/' + nativeCategory + '/native-study-guide', ['fluid'], 'native-study-guide').defineSizeMapping( googletag.sizeMapping() .build()) .addService(googletag.pubads()) .setTargeting('pos', 'native-study-guide') .setTargeting('refreshable', 'false') .setTargeting('adrefreshed', 'false'); // Native Study Guide window.ta.gam.tags.nativebiggrid = { id: 'native-big-grid', refreshable: false, refresh_delay: 5, pending_refresh: false, refreshed: false, max_refresh: 5, refresh_counter: 0, viewable: false, in_view: undefined, visibility: 0, view_percentage_threshold: 85 }; window.ta.gam.tags.nativebiggrid.slot = googletag.defineSlot( '/5055/B2B/DEV/' + nativeSiteName + '/' + nativeCategory + '/native-big-grid', ['fluid'], 'native-big-grid').defineSizeMapping( googletag.sizeMapping() .build()) .addService(googletag.pubads()) .setTargeting('pos', 'native-big-grid') .setTargeting('refreshable', 'false') .setTargeting('adrefreshed', 'false'); // Native RR Article window.ta.gam.tags.nativerrarticle = { id: 'native-rr-article', refreshable: false, refresh_delay: 5, pending_refresh: false, refreshed: false, max_refresh: 5, refresh_counter: 0, viewable: false, in_view: undefined, visibility: 0, view_percentage_threshold: 85 }; window.ta.gam.tags.nativerrarticle.slot = googletag.defineSlot( '/5055/B2B/DEV/' + nativeSiteName + '/' + nativeCategory + '/native-rr-article', ['fluid'], 'native-rr-article').defineSizeMapping( googletag.sizeMapping() .build()) .addService(googletag.pubads()) .setTargeting('pos', 'native-rr-article') .setTargeting('refreshable', 'false') .setTargeting('adrefreshed', 'false'); // Native Main Well window.ta.gam.tags.nativemainwell = { id: 'native-main-well', refreshable: false, refresh_delay: 5, pending_refresh: false, refreshed: false, max_refresh: 5, refresh_counter: 0, viewable: false, in_view: undefined, visibility: 0, view_percentage_threshold: 85 }; window.ta.gam.tags.nativemainwell.slot = googletag.defineSlot( '/5055/B2B/DEV/' + nativeSiteName + '/' + nativeCategory + '/native-main-well', ['fluid'], 'native-main-well').defineSizeMapping( googletag.sizeMapping() .build()) .addService(googletag.pubads()) .setTargeting('pos', 'native-main-well') .setTargeting('refreshable', 'false') .setTargeting('adrefreshed', 'false'); // Native BOAP window.ta.gam.tags.nativeboap = { id: 'native-boap', refreshable: false, refresh_delay: 5, pending_refresh: false, refreshed: false, max_refresh: 5, refresh_counter: 0, viewable: false, in_view: undefined, visibility: 0, view_percentage_threshold: 85 }; window.ta.gam.tags.nativeboap.slot = googletag.defineSlot( '/5055/B2B/DEV/' + nativeSiteName + '/' + nativeCategory + '/native-boap', ['fluid'], 'native-boap').defineSizeMapping( googletag.sizeMapping() .build()) .addService(googletag.pubads()) .setTargeting('pos', 'native-boap') .setTargeting('refreshable', 'false') .setTargeting('adrefreshed', 'false'); }); </script> <!-- End: GAM Ad Slot Definitions | Codeguru soap --> <!-- Button style compiled by theme --> <style>.tdm-btn-style1{background-color:#238fee}.tdm-btn-style2:before{border-color:#238fee}.tdm-btn-style2{color:#238fee}.tdm-btn-style3{-webkit-box-shadow:0 2px 16px #238fee;-moz-box-shadow:0 2px 16px #238fee;box-shadow:0 2px 16px #238fee}.tdm-btn-style3:hover{-webkit-box-shadow:0 4px 26px #238fee;-moz-box-shadow:0 4px 26px #238fee;box-shadow:0 4px 26px #238fee}</style> <style id="tdw-css-placeholder"></style><noscript><style id="rocket-lazyload-nojs-css">.rll-youtube-player, [data-lazy-src]{display:none !important;}</style></noscript></head> <body class="post-template-default single single-post postid-19341 single-format-standard td-standard-pack web-components-api global-block-template-2 tdb_template_138 tdb-template tdc-header-template tdc-footer-template td-full-layout" itemscope="itemscope" itemtype="https://schema.org/WebPage"> <div class="td-scroll-up" data-style="style1"><i class="td-icon-menu-up"></i></div> <div class="td-menu-background" style="visibility:hidden"></div> <div id="td-mobile-nav" style="visibility:hidden"> <div class="td-mobile-container"> <!-- mobile menu top section --> <div class="td-menu-socials-wrap"> <!-- socials --> <div class="td-menu-socials"> </div> <!-- close button --> <div class="td-mobile-close"> <span><i class="td-icon-close-mobile"></i></span> </div> </div> <!-- login section --> <!-- menu section --> <div class="td-mobile-content"> <div class="menu-header-menu-container"><ul id="menu-header-menu-1" class="td-mobile-main-menu"><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-first menu-item-18398"><a href="https://www.codeguru.com/news/">News</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children menu-item-18391"><a href="https://www.codeguru.com/cplusplus/">C++<i class="td-icon-menu-right td-element-after"></i></a> <ul class="sub-menu"> <li class="menu-item menu-item-type-taxonomy menu-item-object-category current-post-ancestor current-menu-parent current-post-parent menu-item-18400"><a href="https://www.codeguru.com/soap/">SOAP</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-18396"><a href="https://www.codeguru.com/multimedia/">Multimedia</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-18397"><a href="https://www.codeguru.com/network/">Network Programming</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-18404"><a href="https://www.codeguru.com/windows/">Windows Programming</a></li> </ul> </li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-18390"><a href="https://www.codeguru.com/csharp/">C#</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category current-post-ancestor current-menu-parent current-post-parent menu-item-has-children menu-item-18387"><a href="https://www.codeguru.com/dotnet/">.NET<i class="td-icon-menu-right td-element-after"></i></a> <ul class="sub-menu"> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-18403"><a href="https://www.codeguru.com/visual-studio/">Visual Studio</a></li> </ul> </li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-18402"><a href="https://www.codeguru.com/visual-basic/">Visual Basic</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-18394"><a href="https://www.codeguru.com/java/">Java</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-18392"><a href="https://www.codeguru.com/database/">Database</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-18388"><a href="https://www.codeguru.com/azure/">Azure</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-18393"><a href="https://www.codeguru.com/iot/">IoT</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-18395"><a href="https://www.codeguru.com/mobile/">Mobile</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-18399"><a href="https://www.codeguru.com/research/">Research</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-18401"><a href="https://www.codeguru.com/tools/">Tools</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-18389"><a href="https://www.codeguru.com/blog/">Blog</a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-18442"><a href="http://forums.codeguru.com">Forums</a></li> </ul></div> </div> </div> <!-- register/login section --> </div><div class="td-search-background" style="visibility:hidden"></div> <div class="td-search-wrap-mob" style="visibility:hidden"> <div class="td-drop-down-search"> <form method="get" class="td-search-form" action="https://www.codeguru.com/"> <!-- close button --> <div class="td-search-close"> <span><i class="td-icon-close-mobile"></i></span> </div> <div role="search" class="td-search-input"> <span>Search</span> <input id="td-header-search-mob" type="text" value="" name="s" autocomplete="off" /> </div> </form> <div id="td-aj-search-mob" class="td-ajax-search-flex"></div> </div> </div> <div id="td-outer-wrap" class="td-theme-wrap"> <div class="td-header-template-wrap" style="position: relative"> <div class="td-header-mobile-wrap "> <div id="tdi_1" class="tdc-zone"><div class="tdc_zone tdi_2 wpb_row td-pb-row tdc-element-style" > <style scoped>.tdi_2{min-height:0}.td-header-mobile-wrap{position:relative;width:100%}@media (max-width:767px){.tdi_2:before{content:'';display:block;width:100vw;height:100%;position:absolute;left:50%;transform:translateX(-50%);box-shadow:0px 6px 8px 0px rgba(0,0,0,0.08);z-index:20;pointer-events:none}@media (max-width:767px){.tdi_2:before{width:100%}}}@media (max-width:767px){.tdi_2{position:relative}}</style> <div class="tdi_1_rand_style td-element-style" ><style>@media (max-width:767px){.tdi_1_rand_style{background-color:#222222!important}}</style></div><div id="tdi_3" class="tdc-row"><div class="vc_row tdi_4 wpb_row td-pb-row tdc-element-style" > <style scoped>.tdi_4,.tdi_4 .tdc-columns{min-height:0}.tdi_4>.td-element-style:after{content:''!important;width:100%!important;height:100%!important;position:absolute!important;top:0!important;left:0!important;z-index:0!important;display:block!important;background-color:#080a19}.tdi_4,.tdi_4 .tdc-columns{display:block}.tdi_4 .tdc-columns{width:100%}.tdi_4:before,.tdi_4:after{display:table}@media (max-width:767px){@media (min-width:768px){.tdi_4{margin-left:-0px;margin-right:-0px}.tdi_4 .tdc-row-video-background-error,.tdi_4>.vc_column,.tdi_4>.tdc-columns>.vc_column{padding-left:0px;padding-right:0px}}}</style> <div class="tdi_3_rand_style td-element-style" ></div><div class="vc_column tdi_6 wpb_column vc_column_container tdc-column td-pb-span4"> <style scoped>.tdi_6{vertical-align:baseline}.tdi_6>.wpb_wrapper,.tdi_6>.wpb_wrapper>.tdc-elements{display:block}.tdi_6>.wpb_wrapper>.tdc-elements{width:100%}.tdi_6>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_6>.wpb_wrapper{width:auto;height:auto}@media (max-width:767px){.tdi_6{vertical-align:middle}}@media (max-width:767px){.tdi_6{width:20%!important;display:inline-block!important}}</style><div class="wpb_wrapper" ><div class="td_block_wrap tdb_mobile_menu tdi_7 td-pb-border-top td_block_template_2 tdb-header-align" data-td-block-uid="tdi_7" > <style>@media (max-width:767px){.tdi_7{margin-left:-13px!important}}</style> <style>.tdb-header-align{vertical-align:middle}.tdb_mobile_menu{margin-bottom:0;clear:none}.tdb_mobile_menu a{display:inline-block!important;position:relative;text-align:center;color:var(--td_theme_color,#4db2ec)}.tdb_mobile_menu a>span{display:flex;align-items:center;justify-content:center}.tdb_mobile_menu svg{height:auto}.tdb_mobile_menu svg,.tdb_mobile_menu svg *{fill:var(--td_theme_color,#4db2ec)}#tdc-live-iframe .tdb_mobile_menu a{pointer-events:none}.td-menu-mob-open-menu{overflow:hidden}.td-menu-mob-open-menu #td-outer-wrap{position:static}.tdi_7{display:inline-block}.tdi_7 .tdb-mobile-menu-button i{font-size:22px;width:55px;height:55px;line-height:55px}.tdi_7 .tdb-mobile-menu-button svg{width:22px}.tdi_7 .tdb-mobile-menu-button .tdb-mobile-menu-icon-svg{width:55px;height:55px}.tdi_7 .tdb-mobile-menu-button{color:#ffffff}.tdi_7 .tdb-mobile-menu-button svg,.tdi_7 .tdb-mobile-menu-button svg *{fill:#ffffff}@media (max-width:767px){.tdi_7 .tdb-mobile-menu-button i{font-size:27px;width:54px;height:54px;line-height:54px}.tdi_7 .tdb-mobile-menu-button svg{width:27px}.tdi_7 .tdb-mobile-menu-button .tdb-mobile-menu-icon-svg{width:54px;height:54px}}</style><div class="tdb-block-inner td-fix-index"><span class="tdb-mobile-menu-button"><i class="tdb-mobile-menu-icon td-icon-mobile"></i></span></div></div> <!-- ./block --></div></div><div class="vc_column tdi_9 wpb_column vc_column_container tdc-column td-pb-span4"> <style scoped>.tdi_9{vertical-align:baseline}.tdi_9>.wpb_wrapper,.tdi_9>.wpb_wrapper>.tdc-elements{display:block}.tdi_9>.wpb_wrapper>.tdc-elements{width:100%}.tdi_9>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_9>.wpb_wrapper{width:auto;height:auto}@media (max-width:767px){.tdi_9{vertical-align:middle}}@media (max-width:767px){.tdi_9{width:60%!important;display:inline-block!important}}</style><div class="wpb_wrapper" ><div class="td_block_wrap tdb_header_logo tdi_10 td-pb-border-top td_block_template_2 tdb-header-align" data-td-block-uid="tdi_10" > <style>.tdb_header_logo{margin-bottom:0;clear:none}.tdb_header_logo .tdb-logo-a,.tdb_header_logo h1{display:flex;pointer-events:auto;align-items:flex-start}.tdb_header_logo h1{margin:0;line-height:0}.tdb_header_logo .tdb-logo-img-wrap img{display:block}.tdb_header_logo .tdb-logo-svg-wrap+.tdb-logo-img-wrap{display:none}.tdb_header_logo .tdb-logo-svg-wrap svg{width:50px;display:block;transition:fill .3s ease}.tdb_header_logo .tdb-logo-text-wrap{display:flex}.tdb_header_logo .tdb-logo-text-title,.tdb_header_logo .tdb-logo-text-tagline{-webkit-transition:all 0.2s ease;transition:all 0.2s ease}.tdb_header_logo .tdb-logo-text-title{background-size:cover;background-position:center center;font-size:75px;font-family:serif;line-height:1.1;color:#222;white-space:nowrap}.tdb_header_logo .tdb-logo-text-tagline{margin-top:2px;font-size:12px;font-family:serif;letter-spacing:1.8px;line-height:1;color:#767676}.tdb_header_logo .tdb-logo-icon{position:relative;font-size:46px;color:#000}.tdb_header_logo .tdb-logo-icon-svg{line-height:0}.tdb_header_logo .tdb-logo-icon-svg svg{width:46px;height:auto}.tdb_header_logo .tdb-logo-icon-svg svg,.tdb_header_logo .tdb-logo-icon-svg svg *{fill:#000}.tdi_10 .tdb-logo-a,.tdi_10 h1{flex-direction:row;align-items:center;justify-content:center}.tdi_10 .tdb-logo-svg-wrap{display:block}.tdi_10 .tdb-logo-img-wrap{display:none}.tdi_10 .tdb-logo-text-tagline{margin-top:-3px;margin-left:0;display:block;font-family:Montserrat!important;}.tdi_10 .tdb-logo-text-title{display:block;color:#ffffff}.tdi_10 .tdb-logo-text-wrap{flex-direction:column;align-items:center}.tdi_10 .tdb-logo-icon{top:0px;display:block}@media (max-width:767px){.tdb_header_logo .tdb-logo-text-title{font-size:36px}}@media (max-width:767px){.tdb_header_logo .tdb-logo-text-tagline{font-size:11px}}@media (min-width:768px) and (max-width:1018px){.tdi_10 .tdb-logo-img{max-width:186px}.tdi_10 .tdb-logo-text-tagline{margin-top:-2px;margin-left:0}}@media (max-width:767px){.tdi_10 .tdb-logo-svg-wrap+.tdb-logo-img-wrap{display:none}.tdi_10 .tdb-logo-img-wrap{display:block}.tdi_10 .tdb-logo-text-title{font-family:Roboto!important;font-size:20px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:1px!important;}}</style><div class="tdb-block-inner td-fix-index"><a class="tdb-logo-a" href="https://www.codeguru.com/"><span class="tdb-logo-img-wrap"><img class="tdb-logo-img" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201134%20181'%3E%3C/svg%3E" alt="Logo" title="" width="1134" height="181" data-lazy-src="https://assets.codeguru.com/uploads/2021/08/CG_MobileLogo_White.png" /><noscript><img class="tdb-logo-img" src="https://assets.codeguru.com/uploads/2021/08/CG_MobileLogo_White.png" alt="Logo" title="" width="1134" height="181" /></noscript></span></a></div></div> <!-- ./block --></div></div><div class="vc_column tdi_12 wpb_column vc_column_container tdc-column td-pb-span4"> <style scoped>.tdi_12{vertical-align:baseline}.tdi_12>.wpb_wrapper,.tdi_12>.wpb_wrapper>.tdc-elements{display:block}.tdi_12>.wpb_wrapper>.tdc-elements{width:100%}.tdi_12>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_12>.wpb_wrapper{width:auto;height:auto}@media (max-width:767px){.tdi_12{vertical-align:middle}}@media (max-width:767px){.tdi_12{width:20%!important;display:inline-block!important}}</style><div class="wpb_wrapper" ><div class="td_block_wrap tdb_mobile_search tdi_13 td-pb-border-top td_block_template_2 tdb-header-align" data-td-block-uid="tdi_13" > <style>@media (max-width:767px){.tdi_13{margin-right:-19px!important;margin-bottom:0px!important}}</style> <style>.tdb_mobile_search{margin-bottom:0;clear:none}.tdb_mobile_search a{display:inline-block!important;position:relative;text-align:center;color:var(--td_theme_color,#4db2ec)}.tdb_mobile_search a>span{display:flex;align-items:center;justify-content:center}.tdb_mobile_search svg{height:auto}.tdb_mobile_search svg,.tdb_mobile_search svg *{fill:var(--td_theme_color,#4db2ec)}#tdc-live-iframe .tdb_mobile_search a{pointer-events:none}.td-search-opened{overflow:hidden}.td-search-opened #td-outer-wrap{position:static}.td-search-opened .td-search-wrap-mob{position:fixed;height:calc(100% + 1px)}.td-search-opened .td-drop-down-search{height:calc(100% + 1px);overflow-y:scroll;overflow-x:hidden}.tdi_13{display:inline-block;float:right;clear:none}.tdi_13 .tdb-header-search-button-mob i{font-size:22px;width:55px;height:55px;line-height:55px}.tdi_13 .tdb-header-search-button-mob svg{width:22px}.tdi_13 .tdb-header-search-button-mob .tdb-mobile-search-icon-svg{width:55px;height:55px;display:flex;justify-content:center}.tdi_13 .tdb-header-search-button-mob{color:#ffffff}.tdi_13 .tdb-header-search-button-mob svg,.tdi_13 .tdb-header-search-button-mob svg *{fill:#ffffff}@media (max-width:767px){.tdi_13 .tdb-header-search-button-mob i{font-size:27px;width:54px;height:54px;line-height:54px}.tdi_13 .tdb-header-search-button-mob svg{width:27px}.tdi_13 .tdb-header-search-button-mob .tdb-mobile-search-icon-svg{width:54px;height:54px;display:flex;justify-content:center}}</style><div class="tdb-block-inner td-fix-index"><span class="tdb-header-search-button-mob dropdown-toggle" data-toggle="dropdown"><i class="tdb-mobile-search-icon td-icon-search"></i></span></div></div> <!-- ./block --></div></div></div></div></div></div> </div> <div class="td-header-desktop-wrap "> <div id="tdi_14" class="tdc-zone"><div class="tdc_zone tdi_15 wpb_row td-pb-row tdc-element-style" > <style scoped>.tdi_15{min-height:0}.td-header-desktop-wrap{position:relative}.tdi_15{position:relative}</style> <div class="tdi_14_rand_style td-element-style" ><style>.tdi_14_rand_style{background-color:#ffffff!important}</style></div><div id="tdi_16" class="tdc-row tdc-row-is-sticky tdc-rist-top stretch_row_1400 td-stretch-content"><div class="vc_row tdi_17 wpb_row td-pb-row tdc-element-style" > <style scoped>body .tdc-row.tdc-rist-top-active,body .tdc-row.tdc-rist-bottom-active{position:fixed;left:50%;transform:translateX(-50%);z-index:10000}body .tdc-row.tdc-rist-top-active.td-stretch-content,body .tdc-row.tdc-rist-bottom-active.td-stretch-content{width:100%!important}body .tdc-row.tdc-rist-top-active{top:0}body .tdc-row.tdc-rist-absolute{position:absolute}body .tdc-row.tdc-rist-bottom-active{bottom:0}.tdi_17,.tdi_17 .tdc-columns{min-height:0}.tdi_17>.td-element-style:after{content:''!important;width:100%!important;height:100%!important;position:absolute!important;top:0!important;left:0!important;z-index:0!important;display:block!important;background-color:#080a19!important}#tdi_16.tdc-rist-top-active .tdi_17:before,#tdi_16.tdc-rist-bottom-active .tdi_17:before{display:block;width:100vw;height:100%;position:absolute;left:50%;transform:translateX(-50%);box-shadow:0px 0px 6px .75px #3d3d3d;z-index:20;pointer-events:none;top:0}.tdi_17,.tdi_17 .tdc-columns{display:block}.tdi_17 .tdc-columns{width:100%}.tdi_17:before,.tdi_17:after{display:table}@media (min-width:767px){body.admin-bar .tdc-row.tdc-rist-top-active{top:32px}}@media (min-width:768px){.tdi_17{margin-left:-21px;margin-right:-21px}.tdi_17 .tdc-row-video-background-error,.tdi_17>.vc_column,.tdi_17>.tdc-columns>.vc_column{padding-left:21px;padding-right:21px}}@media (min-width:768px) and (max-width:1018px){@media (min-width:768px){.tdi_17{margin-left:-10px;margin-right:-10px}.tdi_17 .tdc-row-video-background-error,.tdi_17>.vc_column,.tdi_17>.tdc-columns>.vc_column{padding-left:10px;padding-right:10px}}}.tdi_17{padding-top:15px!important;padding-bottom:15px!important;z-index:100!important;position:relative}.tdi_17 .td_block_wrap{text-align:left}</style> <div class="tdi_16_rand_style td-element-style" ><style>.tdi_16_rand_style{background-color:#151948!important}</style></div><div class="vc_column tdi_19 wpb_column vc_column_container tdc-column td-pb-span12 td-is-sticky"> <style scoped>.tdi_19{vertical-align:baseline}.tdi_19>.wpb_wrapper,.tdi_19>.wpb_wrapper>.tdc-elements{display:block}.tdi_19>.wpb_wrapper>.tdc-elements{width:100%}.tdi_19>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_19>.wpb_wrapper{width:auto;height:auto}</style><div class="wpb_wrapper" data-sticky-enabled-on="W3RydWUsdHJ1ZSx0cnVlLHRydWVd" data-sticky-offset="20" data-sticky-is-width-auto="W2ZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlXQ=="><div class="td_block_wrap tdb_header_logo tdi_20 td-pb-border-top td_block_template_2 tdb-header-align" data-td-block-uid="tdi_20" > <style>.tdi_20{margin-right:21px!important}</style> <style>.tdi_20{display:inline-block}.tdi_20 .tdb-logo-a,.tdi_20 h1{flex-direction:column;align-items:center}.tdi_20 .tdb-logo-svg-wrap{display:block}.tdi_20 .tdb-logo-svg-wrap+.tdb-logo-img-wrap{display:none}.tdi_20 .tdb-logo-img{max-width:280px}.tdi_20 .tdb-logo-text-tagline{margin-top:-3px;margin-left:0;display:block;font-family:Montserrat!important;}.tdi_20 .tdb-logo-text-title{display:block;color:#ffffff;font-family:Roboto!important;font-size:20px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:1px!important;}.tdi_20 .tdb-logo-text-wrap{flex-direction:column;align-items:center}.tdi_20 .tdb-logo-icon{top:0px;display:block}@media (min-width:768px) and (max-width:1018px){.tdi_20 .tdb-logo-img{max-width:186px}.tdi_20 .tdb-logo-text-tagline{margin-top:-2px;margin-left:0}}</style><div class="tdb-block-inner td-fix-index"><a class="tdb-logo-a" href="https://www.codeguru.com/"><span class="tdb-logo-img-wrap"><img class="tdb-logo-img" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%202267%20352'%3E%3C/svg%3E" alt="Logo" title="" width="2267" height="352" data-lazy-src="https://assets.codeguru.com/uploads/2021/08/CG_RetinaLogo-copy-white-2.png" /><noscript><img class="tdb-logo-img" src="https://assets.codeguru.com/uploads/2021/08/CG_RetinaLogo-copy-white-2.png" alt="Logo" title="" width="2267" height="352" /></noscript></span></a></div></div> <!-- ./block --><div class="td_block_wrap tdb_header_menu tdi_21 tds_menu_active3 tds_menu_sub_active1 tdb-head-menu-inline tdb-mm-align-screen td-pb-border-top td_block_template_2 tdb-header-align" data-td-block-uid="tdi_21" style=" z-index: 999;"> <style>.tdb_header_menu{margin-bottom:0;z-index:999;clear:none}.tdb_header_menu .tdb-main-sub-icon-fake,.tdb_header_menu .tdb-sub-icon-fake{display:none}.rtl .tdb_header_menu .tdb-menu{display:flex}.tdb_header_menu .tdb-menu{display:inline-block;vertical-align:middle;margin:0}.tdb_header_menu .tdb-menu .tdb-mega-menu-inactive,.tdb_header_menu .tdb-menu .tdb-menu-item-inactive{pointer-events:none}.tdb_header_menu .tdb-menu .tdb-mega-menu-inactive>ul,.tdb_header_menu .tdb-menu .tdb-menu-item-inactive>ul{visibility:hidden;opacity:0}.tdb_header_menu .tdb-menu .sub-menu{font-size:14px;position:absolute;top:-999em;background-color:#fff;z-index:99}.tdb_header_menu .tdb-menu .sub-menu>li{list-style-type:none;margin:0;font-family:var(--td_default_google_font_1,'Open Sans','Open Sans Regular',sans-serif)}.tdb_header_menu .tdb-menu>li{float:left;list-style-type:none;margin:0}.tdb_header_menu .tdb-menu>li>a{position:relative;display:inline-block;padding:0 14px;font-weight:700;font-size:14px;line-height:48px;vertical-align:middle;text-transform:uppercase;-webkit-backface-visibility:hidden;color:#000;font-family:var(--td_default_google_font_1,'Open Sans','Open Sans Regular',sans-serif)}.tdb_header_menu .tdb-menu>li>a:after{content:'';position:absolute;bottom:0;left:0;right:0;margin:0 auto;width:0;height:3px;background-color:var(--td_theme_color,#4db2ec);-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);-webkit-transition:width 0.2s ease;transition:width 0.2s ease}.tdb_header_menu .tdb-menu>li>a>.tdb-menu-item-text{display:inline-block}.tdb_header_menu .tdb-menu>li>a .tdb-menu-item-text,.tdb_header_menu .tdb-menu>li>a span{vertical-align:middle;float:left}.tdb_header_menu .tdb-menu>li>a .tdb-sub-menu-icon{margin:0 0 0 7px}.tdb_header_menu .tdb-menu>li>a .tdb-sub-menu-icon-svg{float:none;line-height:0}.tdb_header_menu .tdb-menu>li>a .tdb-sub-menu-icon-svg svg{width:14px;height:auto}.tdb_header_menu .tdb-menu>li>a .tdb-sub-menu-icon-svg svg,.tdb_header_menu .tdb-menu>li>a .tdb-sub-menu-icon-svg svg *{fill:#000}.tdb_header_menu .tdb-menu>li.current-menu-item>a:after,.tdb_header_menu .tdb-menu>li.current-menu-ancestor>a:after,.tdb_header_menu .tdb-menu>li.current-category-ancestor>a:after,.tdb_header_menu .tdb-menu>li.current-page-ancestor>a:after,.tdb_header_menu .tdb-menu>li:hover>a:after,.tdb_header_menu .tdb-menu>li.tdb-hover>a:after{width:100%}.tdb_header_menu .tdb-menu>li:hover>ul,.tdb_header_menu .tdb-menu>li.tdb-hover>ul{top:auto;display:block!important}.tdb_header_menu .tdb-menu>li.td-normal-menu>ul.sub-menu{top:auto;left:0;z-index:99}.tdb_header_menu .tdb-menu>li .tdb-menu-sep{position:relative;vertical-align:middle;font-size:14px}.tdb_header_menu .tdb-menu>li .tdb-menu-sep-svg{line-height:0}.tdb_header_menu .tdb-menu>li .tdb-menu-sep-svg svg{width:14px;height:auto}.tdb_header_menu .tdb-menu>li:last-child .tdb-menu-sep{display:none}.tdb_header_menu .tdb-menu-item-text{word-wrap:break-word}.tdb_header_menu .tdb-menu-item-text,.tdb_header_menu .tdb-sub-menu-icon,.tdb_header_menu .tdb-menu-more-subicon{vertical-align:middle}.tdb_header_menu .tdb-sub-menu-icon,.tdb_header_menu .tdb-menu-more-subicon{position:relative;top:0;padding-left:0}.tdb_header_menu .tdb-normal-menu{position:relative}.tdb_header_menu .tdb-normal-menu ul{left:0;padding:15px 0;text-align:left}.tdb_header_menu .tdb-normal-menu ul ul{margin-top:-15px}.tdb_header_menu .tdb-normal-menu ul .tdb-menu-item{position:relative;list-style-type:none}.tdb_header_menu .tdb-normal-menu ul .tdb-menu-item>a{position:relative;display:block;padding:7px 30px;font-size:12px;line-height:20px;color:#111}.tdb_header_menu .tdb-normal-menu ul .tdb-menu-item>a .tdb-sub-menu-icon,.tdb_header_menu .td-pulldown-filter-list .tdb-menu-item>a .tdb-sub-menu-icon{position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);right:0;padding-right:inherit;font-size:7px;line-height:20px}.tdb_header_menu .tdb-normal-menu ul .tdb-menu-item>a .tdb-sub-menu-icon-svg,.tdb_header_menu .td-pulldown-filter-list .tdb-menu-item>a .tdb-sub-menu-icon-svg{line-height:0}.tdb_header_menu .tdb-normal-menu ul .tdb-menu-item>a .tdb-sub-menu-icon-svg svg,.tdb_header_menu .td-pulldown-filter-list .tdb-menu-item>a .tdb-sub-menu-icon-svg svg{width:7px;height:auto}.tdb_header_menu .tdb-normal-menu ul .tdb-menu-item>a .tdb-sub-menu-icon-svg svg,.tdb_header_menu .tdb-normal-menu ul .tdb-menu-item>a .tdb-sub-menu-icon-svg svg *,.tdb_header_menu .td-pulldown-filter-list .tdb-menu-item>a .tdb-sub-menu-icon svg,.tdb_header_menu .td-pulldown-filter-list .tdb-menu-item>a .tdb-sub-menu-icon svg *{fill:#000}.tdb_header_menu .tdb-normal-menu ul .tdb-menu-item:hover>ul,.tdb_header_menu .tdb-normal-menu ul .tdb-menu-item.tdb-hover>ul{top:0;display:block!important}.tdb_header_menu .tdb-normal-menu ul .tdb-menu-item.current-menu-item>a,.tdb_header_menu .tdb-normal-menu ul .tdb-menu-item.current-menu-ancestor>a,.tdb_header_menu .tdb-normal-menu ul .tdb-menu-item.current-category-ancestor>a,.tdb_header_menu .tdb-normal-menu ul .tdb-menu-item.current-page-ancestor>a,.tdb_header_menu .tdb-normal-menu ul .tdb-menu-item.tdb-hover>a,.tdb_header_menu .tdb-normal-menu ul .tdb-menu-item:hover>a{color:var(--td_theme_color,#4db2ec)}.tdb_header_menu .tdb-normal-menu>ul{left:-15px}.tdb_header_menu.tdb-menu-sub-inline .tdb-normal-menu ul,.tdb_header_menu.tdb-menu-sub-inline .td-pulldown-filter-list{width:100%!important}.tdb_header_menu.tdb-menu-sub-inline .tdb-normal-menu ul li,.tdb_header_menu.tdb-menu-sub-inline .td-pulldown-filter-list li{display:inline-block;width:auto!important}.tdb_header_menu.tdb-menu-sub-inline .tdb-normal-menu,.tdb_header_menu.tdb-menu-sub-inline .tdb-normal-menu .tdb-menu-item{position:static}.tdb_header_menu.tdb-menu-sub-inline .tdb-normal-menu ul ul{margin-top:0!important}.tdb_header_menu.tdb-menu-sub-inline .tdb-normal-menu>ul{left:0!important}.tdb_header_menu.tdb-menu-sub-inline .tdb-normal-menu .tdb-menu-item>a .tdb-sub-menu-icon{float:none;line-height:1}.tdb_header_menu.tdb-menu-sub-inline .tdb-normal-menu .tdb-menu-item:hover>ul,.tdb_header_menu.tdb-menu-sub-inline .tdb-normal-menu .tdb-menu-item.tdb-hover>ul{top:100%}.tdb_header_menu.tdb-menu-sub-inline .tdb-menu-items-dropdown{position:static}.tdb_header_menu.tdb-menu-sub-inline .td-pulldown-filter-list{left:0!important}.tdb-menu .tdb-mega-menu .sub-menu{-webkit-transition:opacity 0.3s ease;transition:opacity 0.3s ease;width:1114px!important}.tdb-menu .tdb-mega-menu .sub-menu,.tdb-menu .tdb-mega-menu .sub-menu>li{position:absolute;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.tdb-menu .tdb-mega-menu .sub-menu>li{top:0;width:100%;max-width:1114px!important;height:auto;background-color:#fff;border:1px solid #eaeaea;overflow:hidden}.tdc-dragged .tdb-block-menu ul{visibility:hidden!important;opacity:0!important;-webkit-transition:all 0.3s ease;transition:all 0.3s ease}.tdb-mm-align-screen .tdb-menu .tdb-mega-menu .sub-menu{-webkit-transform:translateX(0);transform:translateX(0)}.tdb-mm-align-parent .tdb-menu .tdb-mega-menu{position:relative}.tdb-menu .tdb-mega-menu .tdc-row:not([class*='stretch_row_']),.tdb-menu .tdb-mega-menu .tdc-row-composer:not([class*='stretch_row_']){width:auto!important;max-width:1240px}.tdb-menu .tdb-mega-menu-page>.sub-menu>li .tdb-page-tpl-edit-btns{position:absolute;top:0;left:0;display:none;flex-wrap:wrap;gap:0 4px}.tdb-menu .tdb-mega-menu-page>.sub-menu>li:hover .tdb-page-tpl-edit-btns{display:flex}.tdb-menu .tdb-mega-menu-page>.sub-menu>li .tdb-page-tpl-edit-btn{background-color:#000;padding:1px 8px 2px;font-size:11px;color:#fff;z-index:100}.tdi_21{max-width:100%;display:inline-block;float:right;clear:none}.tdi_21 .tdb-menu>li .tdb-menu-sep,.tdi_21 .tdb-menu-items-dropdown .tdb-menu-sep{top:-1px}.tdi_21 .tdb-menu>li>a .tdb-sub-menu-icon,.tdi_21 .td-subcat-more .tdb-menu-more-subicon{top:-1px}.tdi_21 .td-subcat-more .tdb-menu-more-icon{top:0px}.tdi_21 .tdb-menu>li>a,.tdi_21 .td-subcat-more{color:#ffffff}.tdi_21 .tdb-menu>li>a .tdb-sub-menu-icon-svg svg,.tdi_21 .tdb-menu>li>a .tdb-sub-menu-icon-svg svg *,.tdi_21 .td-subcat-more .tdb-menu-more-subicon-svg svg,.tdi_21 .td-subcat-more .tdb-menu-more-subicon-svg svg *,.tdi_21 .td-subcat-more .tdb-menu-more-icon-svg,.tdi_21 .td-subcat-more .tdb-menu-more-icon-svg *{fill:#ffffff}.tdi_21 .tdb-menu>li>a,.tdi_21 .td-subcat-more,.tdi_21 .td-subcat-more>.tdb-menu-item-text{font-family:brother-xl!important;font-size:13px!important;text-transform:capitalize!important}.tdi_21 .tdb-normal-menu ul .tdb-menu-item>a .tdb-sub-menu-icon,.tdi_21 .td-pulldown-filter-list .tdb-menu-item>a .tdb-sub-menu-icon{right:0;margin-top:1px}.tdi_21 .tdb-menu .tdb-normal-menu ul,.tdi_21 .td-pulldown-filter-list,.tdi_21 .td-pulldown-filter-list .sub-menu{background-color:#ffffff;box-shadow:1px 1px 4px 0px rgba(0,0,0,0.15)}.tdi_21 .tdb-menu .tdb-normal-menu ul .tdb-menu-item>a,.tdi_21 .tdb-menu-items-dropdown .td-pulldown-filter-list li a,.tdi_21 .tdb-menu-items-dropdown .td-pulldown-filter-list li a{color:#151948}.tdi_21 .tdb-menu .tdb-normal-menu ul .tdb-menu-item>a .tdb-sub-menu-icon-svg svg,.tdi_21 .tdb-menu .tdb-normal-menu ul .tdb-menu-item>a .tdb-sub-menu-icon-svg svg *,.tdi_21 .tdb-menu-items-dropdown .td-pulldown-filter-list li a .tdb-sub-menu-icon-svg svg,.tdi_21 .tdb-menu-items-dropdown .td-pulldown-filter-list li a .tdb-sub-menu-icon-svg svg *{fill:#151948}.tdi_21 .tdb-menu .tdb-normal-menu ul .tdb-menu-item>a,.tdi_21 .td-pulldown-filter-list li a{font-family:brother-xl!important;font-size:15px!important;font-weight:700!important;text-transform:capitalize!important;letter-spacing:0px!important}.tdi_21 .tdb-menu .tdb-mega-menu .sub-menu>li{box-shadow:0px 2px 6px 0px rgba(0,0,0,0.1)}@media (max-width:1140px){.tdb-menu .tdb-mega-menu .sub-menu>li{width:100%!important}}@media (min-width:768px) and (max-width:1018px){.tdi_21 .tdb-menu>li>a,.tdi_21 .td-subcat-more{padding:0 9px}.tdi_21 .tdb-menu>li>a,.tdi_21 .td-subcat-more,.tdi_21 .td-subcat-more>.tdb-menu-item-text{font-size:11px!important;line-height:48px!important}}</style> <style>.tds_menu_active3 .tdb-menu>li>a:after{opacity:0;-webkit-transition:opacity 0.2s ease;transition:opacity 0.2s ease;height:100%;z-index:-1}.tds_menu_active3 .tdb-menu>li.current-menu-item>a:after,.tds_menu_active3 .tdb-menu>li.current-menu-ancestor>a:after,.tds_menu_active3 .tdb-menu>li.current-category-ancestor>a:after,.tds_menu_active3 .tdb-menu>li.current-page-ancestor>a:after,.tds_menu_active3 .tdb-menu>li:hover>a:after,.tds_menu_active3 .tdb-menu>li.tdb-hover>a:after{opacity:1}.tds_menu_active3 .tdb-menu-items-dropdown .td-subcat-more:after{opacity:0;-webkit-transition:opacity 0.2s ease;transition:opacity 0.2s ease;height:100%;z-index:-1}.tds_menu_active3 .tdb-menu-items-dropdown:hover .td-subcat-more:after{opacity:1}.tdi_21 .tdb-menu>li.current-menu-item>a,.tdi_21 .tdb-menu>li.current-menu-ancestor>a,.tdi_21 .tdb-menu>li.current-category-ancestor>a,.tdi_21 .tdb-menu>li.current-page-ancestor>a,.tdi_21 .tdb-menu>li:hover>a,.tdi_21 .tdb-menu>li.tdb-hover>a,.tdi_21 .tdb-menu-items-dropdown:hover .td-subcat-more{color:#ffffff}.tdi_21 .tdb-menu>li.current-menu-item>a .tdb-sub-menu-icon-svg svg,.tdi_21 .tdb-menu>li.current-menu-item>a .tdb-sub-menu-icon-svg svg *,.tdi_21 .tdb-menu>li.current-menu-ancestor>a .tdb-sub-menu-icon-svg svg,.tdi_21 .tdb-menu>li.current-menu-ancestor>a .tdb-sub-menu-icon-svg svg *,.tdi_21 .tdb-menu>li.current-category-ancestor>a .tdb-sub-menu-icon-svg svg,.tdi_21 .tdb-menu>li.current-category-ancestor>a .tdb-sub-menu-icon-svg svg *,.tdi_21 .tdb-menu>li.current-page-ancestor>a .tdb-sub-menu-icon-svg svg *,.tdi_21 .tdb-menu>li:hover>a .tdb-sub-menu-icon-svg svg,.tdi_21 .tdb-menu>li:hover>a .tdb-sub-menu-icon-svg svg *,.tdi_21 .tdb-menu>li.tdb-hover>a .tdb-sub-menu-icon-svg svg,.tdi_21 .tdb-menu>li.tdb-hover>a .tdb-sub-menu-icon-svg svg *,.tdi_21 .tdb-menu-items-dropdown:hover .td-subcat-more .tdb-menu-more-icon-svg svg,.tdi_21 .tdb-menu-items-dropdown:hover .td-subcat-more .tdb-menu-more-icon-svg svg *{fill:#ffffff}.tdi_21 .tdb-menu>li>a:after,.tdi_21 .tdb-menu-items-dropdown .td-subcat-more:after{background-color:#238fee}</style> <style>.tdi_21 .tdb-menu ul .tdb-normal-menu.current-menu-item>a,.tdi_21 .tdb-menu ul .tdb-normal-menu.current-menu-ancestor>a,.tdi_21 .tdb-menu ul .tdb-normal-menu.current-category-ancestor>a,.tdi_21 .tdb-menu ul .tdb-normal-menu.tdb-hover>a,.tdi_21 .tdb-menu ul .tdb-normal-menu:hover>a,.tdi_21 .tdb-menu-items-dropdown .td-pulldown-filter-list li:hover>a{color:#ffffff;background-color:#b361e0}.tdi_21 .tdb-menu ul .tdb-normal-menu.current-menu-item>a .tdb-sub-menu-icon-svg svg,.tdi_21 .tdb-menu ul .tdb-normal-menu.current-menu-item>a .tdb-sub-menu-icon-svg svg *,.tdi_21 .tdb-menu ul .tdb-normal-menu.current-menu-ancestor>a .tdb-sub-menu-icon-svg svg,.tdi_21 .tdb-menu ul .tdb-normal-menu.current-menu-ancestor>a .tdb-sub-menu-icon-svg svg *,.tdi_21 .tdb-menu ul .tdb-normal-menu.current-category-ancestor>a .tdb-sub-menu-icon-svg svg,.tdi_21 .tdb-menu ul .tdb-normal-menu.current-category-ancestor>a .tdb-sub-menu-icon-svg svg *,.tdi_21 .tdb-menu ul .tdb-normal-menu.tdb-hover>a .tdb-sub-menu-icon-svg svg,.tdi_21 .tdb-menu ul .tdb-normal-menu.tdb-hover>a .tdb-sub-menu-icon-svg svg *,.tdi_21 .tdb-menu ul .tdb-normal-menu:hover>a .tdb-sub-menu-icon-svg svg,.tdi_21 .tdb-menu ul .tdb-normal-menu:hover>a .tdb-sub-menu-icon-svg svg *,.tdi_21 .tdb-menu-items-dropdown .td-pulldown-filter-list li:hover>a .tdb-sub-menu-icon-svg svg,.tdi_21 .tdb-menu-items-dropdown .td-pulldown-filter-list li:hover>a .tdb-sub-menu-icon-svg svg *{fill:#ffffff}</style><div id=tdi_21 class="td_block_inner td-fix-index"><div class="tdb-main-sub-icon-fake"><i class="tdb-sub-menu-icon td-icon-down tdb-main-sub-menu-icon"></i></div><div class="tdb-sub-icon-fake"><i class="tdb-sub-menu-icon td-icon-right-arrow"></i></div><ul id="menu-header-menu-2" class="tdb-block-menu tdb-menu tdb-menu-items-visible"><li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-first tdb-menu-item-button tdb-menu-item tdb-normal-menu menu-item-18398"><a href="https://www.codeguru.com/news/"><div class="tdb-menu-item-text">News</div></a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-has-children tdb-menu-item-button tdb-menu-item tdb-normal-menu menu-item-18391 tdb-menu-item-inactive"><a href="https://www.codeguru.com/cplusplus/"><div class="tdb-menu-item-text">C++</div><i class="tdb-sub-menu-icon td-icon-down tdb-main-sub-menu-icon"></i></a> <ul class="sub-menu"> <li class="menu-item menu-item-type-taxonomy menu-item-object-category current-post-ancestor current-menu-parent current-post-parent tdb-menu-item tdb-normal-menu menu-item-18400"><a href="https://www.codeguru.com/soap/"><div class="tdb-menu-item-text">SOAP</div></a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category tdb-menu-item tdb-normal-menu menu-item-18396"><a href="https://www.codeguru.com/multimedia/"><div class="tdb-menu-item-text">Multimedia</div></a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category tdb-menu-item tdb-normal-menu menu-item-18397"><a href="https://www.codeguru.com/network/"><div class="tdb-menu-item-text">Network Programming</div></a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category tdb-menu-item tdb-normal-menu menu-item-18404"><a href="https://www.codeguru.com/windows/"><div class="tdb-menu-item-text">Windows Programming</div></a></li> </ul> </li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category tdb-menu-item-button tdb-menu-item tdb-normal-menu menu-item-18390"><a href="https://www.codeguru.com/csharp/"><div class="tdb-menu-item-text">C#</div></a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category current-post-ancestor current-menu-parent current-post-parent menu-item-has-children tdb-menu-item-button tdb-menu-item tdb-normal-menu menu-item-18387 tdb-menu-item-inactive"><a href="https://www.codeguru.com/dotnet/"><div class="tdb-menu-item-text">.NET</div><i class="tdb-sub-menu-icon td-icon-down tdb-main-sub-menu-icon"></i></a> <ul class="sub-menu"> <li class="menu-item menu-item-type-taxonomy menu-item-object-category tdb-menu-item tdb-normal-menu menu-item-18403"><a href="https://www.codeguru.com/visual-studio/"><div class="tdb-menu-item-text">Visual Studio</div></a></li> </ul> </li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category tdb-menu-item-button tdb-menu-item tdb-normal-menu menu-item-18402"><a href="https://www.codeguru.com/visual-basic/"><div class="tdb-menu-item-text">Visual Basic</div></a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category tdb-menu-item-button tdb-menu-item tdb-normal-menu menu-item-18394"><a href="https://www.codeguru.com/java/"><div class="tdb-menu-item-text">Java</div></a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category tdb-menu-item-button tdb-menu-item tdb-normal-menu menu-item-18392"><a href="https://www.codeguru.com/database/"><div class="tdb-menu-item-text">Database</div></a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category tdb-menu-item-button tdb-menu-item tdb-normal-menu menu-item-18388"><a href="https://www.codeguru.com/azure/"><div class="tdb-menu-item-text">Azure</div></a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category tdb-menu-item-button tdb-menu-item tdb-normal-menu menu-item-18393"><a href="https://www.codeguru.com/iot/"><div class="tdb-menu-item-text">IoT</div></a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category tdb-menu-item-button tdb-menu-item tdb-normal-menu menu-item-18395"><a href="https://www.codeguru.com/mobile/"><div class="tdb-menu-item-text">Mobile</div></a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category tdb-menu-item-button tdb-menu-item tdb-normal-menu menu-item-18399"><a href="https://www.codeguru.com/research/"><div class="tdb-menu-item-text">Research</div></a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category tdb-menu-item-button tdb-menu-item tdb-normal-menu menu-item-18401"><a href="https://www.codeguru.com/tools/"><div class="tdb-menu-item-text">Tools</div></a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category tdb-menu-item-button tdb-menu-item tdb-normal-menu menu-item-18389"><a href="https://www.codeguru.com/blog/"><div class="tdb-menu-item-text">Blog</div></a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom tdb-menu-item-button tdb-menu-item tdb-normal-menu menu-item-18442"><a href="http://forums.codeguru.com"><div class="tdb-menu-item-text">Forums</div></a></li> </ul></div></div></div></div></div></div><div id="tdi_24" class="tdc-row stretch_row_1400 td-stretch-content"><div class="vc_row tdi_25 wpb_row td-pb-row" > <style scoped>.tdi_25,.tdi_25 .tdc-columns{min-height:0}.tdi_25,.tdi_25 .tdc-columns{display:block}.tdi_25 .tdc-columns{width:100%}.tdi_25:before,.tdi_25:after{display:table}.tdi_25{margin-top:15px!important}.tdi_25 .td_block_wrap{text-align:left}</style><div class="vc_column tdi_27 wpb_column vc_column_container tdc-column td-pb-span4"> <style scoped>.tdi_27{vertical-align:baseline}.tdi_27>.wpb_wrapper,.tdi_27>.wpb_wrapper>.tdc-elements{display:block}.tdi_27>.wpb_wrapper>.tdc-elements{width:100%}.tdi_27>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_27>.wpb_wrapper{width:auto;height:auto}</style><div class="wpb_wrapper" ><div class="tdm_block td_block_wrap tdm_block_socials tdi_28 tdm-content-horiz-left td-pb-border-top td_block_template_2" data-td-block-uid="tdi_28" > <style>.tdm_block.tdm_block_socials{margin-bottom:0}.tdm-social-wrapper{*zoom:1}.tdm-social-wrapper:before,.tdm-social-wrapper:after{display:table;content:'';line-height:0}.tdm-social-wrapper:after{clear:both}.tdm-social-item-wrap{display:inline-block}.tdm-social-item{position:relative;display:inline-block;vertical-align:middle;-webkit-transition:all 0.2s;transition:all 0.2s;text-align:center;-webkit-transform:translateZ(0);transform:translateZ(0)}.tdm-social-item i{font-size:14px;color:var(--td_theme_color,#4db2ec);-webkit-transition:all 0.2s;transition:all 0.2s}.tdm-social-text{display:none;margin-top:-1px;vertical-align:middle;font-size:13px;color:var(--td_theme_color,#4db2ec);-webkit-transition:all 0.2s;transition:all 0.2s}.tdm-social-item-wrap:hover i,.tdm-social-item-wrap:hover .tdm-social-text{color:#000}.tdm-social-item-wrap:last-child .tdm-social-text{margin-right:0!important}</style> <style>.tds-social3 .tdm-social-item{background-color:var(--td_theme_color,#4db2ec)}.tds-social3 .tdm-social-item:hover{background-color:#000}.tds-social3 .tdm-social-item i{color:#fff}.tdi_29 .tdm-social-item i{font-size:16px;vertical-align:middle}.tdi_29 .tdm-social-item i.td-icon-linkedin,.tdi_29 .tdm-social-item i.td-icon-pinterest,.tdi_29 .tdm-social-item i.td-icon-blogger,.tdi_29 .tdm-social-item i.td-icon-vimeo{font-size:12.8px}.tdi_29 .tdm-social-item{width:32px;height:32px;line-height:32px;margin:5px 10px 5px 0}.tdi_29 .tdm-social-item-wrap:last-child .tdm-social-item{margin-right:0!important}body .tdi_29 .tdm-social-item i{color:#151948}body .tdi_29 .tdm-social-item-wrap:hover i{color:#ffffff}body .tdi_29 .tdm-social-item{background-color:#ffffff}body .tdi_29 .tdm-social-item-wrap:hover .tdm-social-item{background-color:#238fee}.tdi_29 .tdm-social-text{margin-left:2px;margin-right:18px;display:none}</style><div class="tdm-social-wrapper tds-social3 tdi_29"><div class="tdm-social-item-wrap"><a href="https://www.facebook.com/CodeGuru-108048391032729" target="_blank" title="Facebook" class="tdm-social-item"><i class="td-icon-font td-icon-facebook"></i><span style="display: none">Facebook</span></a></div><div class="tdm-social-item-wrap"><a href="https://www.linkedin.com/company/codegurutoday/?viewAsMember=true" target="_blank" title="Linkedin" class="tdm-social-item"><i class="td-icon-font td-icon-linkedin"></i><span style="display: none">Linkedin</span></a></div><div class="tdm-social-item-wrap"><a href="https://twitter.com/CodeGuruToday" target="_blank" title="Twitter" class="tdm-social-item"><i class="td-icon-font td-icon-twitter"></i><span style="display: none">Twitter</span></a></div></div></div></div></div><div class="vc_column tdi_31 wpb_column vc_column_container tdc-column td-pb-span4"> <style scoped>.tdi_31{vertical-align:baseline}.tdi_31>.wpb_wrapper,.tdi_31>.wpb_wrapper>.tdc-elements{display:block}.tdi_31>.wpb_wrapper>.tdc-elements{width:100%}.tdi_31>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_31>.wpb_wrapper{width:auto;height:auto}</style><div class="wpb_wrapper" ></div></div><div class="vc_column tdi_33 wpb_column vc_column_container tdc-column td-pb-span4"> <style scoped>.tdi_33{vertical-align:baseline}.tdi_33>.wpb_wrapper,.tdi_33>.wpb_wrapper>.tdc-elements{display:block}.tdi_33>.wpb_wrapper>.tdc-elements{width:100%}.tdi_33>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_33>.wpb_wrapper{width:auto;height:auto}</style><div class="wpb_wrapper" ><div class="td_block_wrap tdb_search_form tdi_34 td-pb-border-top td_block_template_2" data-td-block-uid="tdi_34" > <style>.tdi_34{margin-top:10px!important;margin-bottom:10px!important;padding-bottom:0px!important;width:60%!important}</style> <style>.tdb_search_form{margin-bottom:40px}.tdb_search_form .tdb-search-form-inner{position:relative;display:flex;background-color:#fff}.tdb_search_form .tdb-search-form-border{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #e1e1e1;pointer-events:none;transition:all .3s ease}.tdb_search_form .tdb-search-form-input:focus+.tdb-search-form-border{border-color:#b0b0b0}.tdb_search_form .tdb-search-form-input:not([value=""])+.tdb-search-form-border+.tdb-search-form-placeholder{display:none}.tdb_search_form .tdb-search-form-input,.tdb_search_form .tdb-search-form-btn{height:auto;min-height:32px}.tdb_search_form .tdb-search-form-input{position:relative;flex:1;background-color:transparent;line-height:19px;border:0}.tdb_search_form .tdb-search-form-placeholder{position:absolute;top:50%;transform:translateY(-50%);padding:3px 9px;font-size:12px;line-height:21px;color:#999;-webkit-transition:all 0.3s ease;transition:all 0.3s ease;pointer-events:none}.tdb_search_form .tdb-search-form-input:focus+.tdb-search-form-border+.tdb-search-form-placeholder,.tdb-search-form-input:not(:placeholder-shown)~.tdb-search-form-placeholder{opacity:0}.tdb_search_form .tdb-search-form-btn{text-shadow:none;padding:7px 15px 8px 15px;line-height:16px;margin:0;background-color:#222222;font-family:var(--td_default_google_font_2,'Roboto',sans-serif);font-size:13px;font-weight:500;color:#fff;z-index:1;-webkit-transition:all 0.3s ease;transition:all 0.3s ease}.tdb_search_form .tdb-search-form-btn:hover{background-color:var(--td_theme_color,#4db2ec)}.tdb_search_form .tdb-search-form-btn i,.tdb_search_form .tdb-search-form-btn span{display:inline-block;vertical-align:middle}.tdb_search_form .tdb-search-form-btn i{position:relative;font-size:12px}.tdb_search_form .tdb-search-form-btn .tdb-search-form-btn-icon{position:relative}.tdb_search_form .tdb-search-form-btn .tdb-search-form-btn-icon-svg{line-height:0}.tdb_search_form .tdb-search-form-btn svg{width:12px;height:auto}.tdb_search_form .tdb-search-form-btn svg,.tdb_search_form .tdb-search-form-btn svg *{fill:#fff;-webkit-transition:all 0.3s ease;transition:all 0.3s ease}.tdb_search_form .tdb-search-msg{font-size:12px}.tdi_34{max-width:80%;float:right;clear:none}.td-theme-wrap .tdi_34{text-align:left}.tdi_34 .tdb-search-form-input:focus+.tdb-search-form-border+.tdb-search-form-placeholder,.tdb-search-form-input:not(:placeholder-shown)~.tdb-search-form-placeholder{top:-0%;transform:translateY(0)}.tdi_34 .tdb-search-form-border{border-width:2px 0 2px 2px;border-radius:0px;border-color:#f2f2f2}.tdi_34 .tdb-search-form-inner{border-radius:0px}.tdi_34 .tdb-search-form-input{border-top-left-radius:@input_radius;border-bottom-left-radius:@input_radius;font-family:Rubik!important}.tdi_34 .tdb-search-form-btn-icon{top:0px}.tdi_34 .tdb-search-form-btn{border-radius:2px;background:-webkit-linear-gradient(120deg,#26bde9,#238fee);background:linear-gradient(120deg,#26bde9,#238fee);font-family:brother-xl!important;font-weight:700!important}.tdi_34 .tdb-search-msg{margin-top:11px}.tdi_34 .tdb-search-form-btn:hover{color:#ffffff;background-color:#b361e0}.tdi_34 .tdb-search-form-btn:hover svg,.tdi_34 .tdb-search-form-btn:hover svg *{fill:#ffffff}</style><div class="tdb-block-inner td-fix-index"><form method="get" class="tdb-search-form" action="https://www.codeguru.com/"><div role="search" class="tdb-search-form-inner"><input id="tdb-search-form-input-tdi_34" class="tdb-search-form-input" placeholder=" " type="text" value="" name="s" /><div class="tdb-search-form-border"></div><button class="wpb_button wpb_btn-inverse tdb-search-form-btn" aria-label="Search" type="submit"><span>Search</span></button></div></form></div></div></div></div></div></div><div id="tdi_35" class="tdc-row stretch_row_1400 td-stretch-content"><div class="vc_row tdi_36 wpb_row td-pb-row tdc-row-content-vert-center" > <style scoped>.tdi_36,.tdi_36 .tdc-columns{min-height:0}.tdi_36,.tdi_36 .tdc-columns{display:block}.tdi_36 .tdc-columns{width:100%}.tdi_36:before,.tdi_36:after{display:table}@media (min-width:768px){.tdi_36{margin-left:-14px;margin-right:-14px}.tdi_36 .tdc-row-video-background-error,.tdi_36>.vc_column,.tdi_36>.tdc-columns>.vc_column{padding-left:14px;padding-right:14px}}@media (min-width:767px){.tdi_36.tdc-row-content-vert-center,.tdi_36.tdc-row-content-vert-center .tdc-columns{display:flex;align-items:center;flex:1}.tdi_36.tdc-row-content-vert-bottom,.tdi_36.tdc-row-content-vert-bottom .tdc-columns{display:flex;align-items:flex-end;flex:1}.tdi_36.tdc-row-content-vert-center .td_block_wrap{vertical-align:middle}.tdi_36.tdc-row-content-vert-bottom .td_block_wrap{vertical-align:bottom}}.tdi_36{padding-top:24px!important}.tdi_36 .td_block_wrap{text-align:left}@media(min-width:1141px){.tdi_36{display:none!important}}@media (min-width:768px) and (max-width:1018px){.tdi_36{padding-top:14px!important}}</style><div class="vc_column tdi_38 wpb_column vc_column_container tdc-column td-pb-span12"> <style scoped>.tdi_38{vertical-align:baseline}.tdi_38>.wpb_wrapper,.tdi_38>.wpb_wrapper>.tdc-elements{display:block}.tdi_38>.wpb_wrapper>.tdc-elements{width:100%}.tdi_38>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_38>.wpb_wrapper{width:auto;height:auto}</style><div class="wpb_wrapper" ><div class="vc_row_inner tdi_40 vc_row vc_inner wpb_row td-pb-row" > <style scoped>.tdi_40{position:relative!important;top:0;transform:none;-webkit-transform:none}.tdi_40,.tdi_40 .tdc-inner-columns{display:block}.tdi_40 .tdc-inner-columns{width:100%}</style><div class="vc_column_inner tdi_42 wpb_column vc_column_container tdc-inner-column td-pb-span12"> <style scoped>.tdi_42{vertical-align:baseline}.tdi_42 .vc_column-inner>.wpb_wrapper,.tdi_42 .vc_column-inner>.wpb_wrapper .tdc-elements{display:block}.tdi_42 .vc_column-inner>.wpb_wrapper .tdc-elements{width:100%}@media (min-width:768px) and (max-width:1018px){.tdi_42{display:none!important}}@media (min-width:1019px) and (max-width:1140px){.tdi_42{display:none!important}}</style><div class="vc_column-inner"><div class="wpb_wrapper" ></div></div></div></div></div></div></div></div></div></div> </div> </div> <div id="tdb-autoload-article" data-autoload="off" data-autoload-org-post-id="19341" data-autoload-tpl-id="138" data-autoload-type="" data-autoload-count="5" data-autoload-scroll-percent="50"> <style> .tdb-autoload-wrap { position: relative; } .tdb-autoload-wrap .tdb-loader-autoload { top: auto !important; bottom: 50px !important; } .tdb-autoload-debug { display: none; width: 1068px; margin-right: auto; margin-left: auto; } @media (min-width: 1019px) and (max-width: 1018px) { .tdb-autoload-debug { width: 740px; } } @media (max-width: 767px) { .tdb-autoload-debug { display: none; width: 100%; padding-left: 20px; padding-right: 20px; } } </style> <div class="td-main-content-wrap td-container-wrap"> <div class="tdc-content-wrap"> <article id="template-id-138" class="post-138 tdb_templates type-tdb_templates status-publish post" itemscope itemtype="https://schema.org/Article" > <style type="text/css"> .commission-disclaimer-message { background-color: #f7f7f7; color: #aaaaaa !important; font-weight: 300; font-size: .8rem !important; padding: 10px 20px; margin-bottom:10px; border-radius: 20px; } .search .commission-disclaimer-message, .archive .commission-disclaimer-message, .category .commission-disclaimer-message { display: none; } </style><div id="tdi_43" class="tdc-zone"><div class="tdc_zone tdi_44 wpb_row td-pb-row" > <style scoped>.tdi_44{min-height:0}</style><div id="tdi_45" class="tdc-row"><div class="vc_row tdi_46 wpb_row td-pb-row" > <style scoped>.tdi_46,.tdi_46 .tdc-columns{min-height:0}.tdi_46,.tdi_46 .tdc-columns{display:block}.tdi_46 .tdc-columns{width:100%}.tdi_46:before,.tdi_46:after{display:table}</style><div class="vc_column tdi_48 wpb_column vc_column_container tdc-column td-pb-span12"> <style scoped>.tdi_48{vertical-align:baseline}.tdi_48>.wpb_wrapper,.tdi_48>.wpb_wrapper>.tdc-elements{display:block}.tdi_48>.wpb_wrapper>.tdc-elements{width:100%}.tdi_48>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_48>.wpb_wrapper{width:auto;height:auto}</style><div class="wpb_wrapper" ><div class="td-block td-a-rec td-a-rec-id-custom-spot tdi_49 td_block_template_2"> <style>.tdi_49.td-a-rec{text-align:center}.tdi_49.td-a-rec:not(.td-a-rec-no-translate){transform:translateZ(0)}.tdi_49 .td-element-style{z-index:-1}</style><div class="wp-ads-inline-top" id="wp-ads-1824461301"><!-- Start: GAM Ad Slot Render | Codeguru Inline Top --> <div id="inline-top" style="min-width: 300px; width: auto; text-align:center; min-height: 50px; max-height: 250px; height: auto; background-color: #ffffff; border:0px solid #efefef;"> <script nowprocket> window.googletag = window.googletag || { cmd: [] }; window.googletag.cmd.push(function() { googletag.display("inline-top"); }); </script> </div> <!-- End: GAM Ad Slot Render | Codeguru Inline Top --></div></div></div></div></div></div><div id="tdi_50" class="tdc-row stretch_row_1400 td-stretch-content"><div class="vc_row tdi_51 wpb_row td-pb-row" > <style scoped>.tdi_51,.tdi_51 .tdc-columns{min-height:0}.tdi_51,.tdi_51 .tdc-columns{display:block}.tdi_51 .tdc-columns{width:100%}.tdi_51:before,.tdi_51:after{display:table}.tdi_51{margin-top:40px!important}.tdi_51 .td_block_wrap{text-align:left}</style><div class="vc_column tdi_53 wpb_column vc_column_container tdc-column td-pb-span8"> <style scoped>.tdi_53{vertical-align:baseline}.tdi_53>.wpb_wrapper,.tdi_53>.wpb_wrapper>.tdc-elements{display:block}.tdi_53>.wpb_wrapper>.tdc-elements{width:100%}.tdi_53>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_53>.wpb_wrapper{width:auto;height:auto}</style><div class="wpb_wrapper" ><div class="td_block_wrap tdb_breadcrumbs tdi_54 td-pb-border-top td_block_template_2 tdb-breadcrumbs " data-td-block-uid="tdi_54" > <style>.tdi_54{margin-bottom:18px!important}</style> <style>.tdb-breadcrumbs{margin-bottom:11px;font-family:var(--td_default_google_font_1,'Open Sans','Open Sans Regular',sans-serif);font-size:12px;color:#747474;line-height:18px}.tdb-breadcrumbs a{color:#747474}.tdb-breadcrumbs a:hover{color:#000}.tdb-breadcrumbs .tdb-bread-sep{line-height:1;vertical-align:middle}.tdb-breadcrumbs .tdb-bread-sep-svg svg{height:auto}.tdb-breadcrumbs .tdb-bread-sep-svg svg,.tdb-breadcrumbs .tdb-bread-sep-svg svg *{fill:#c3c3c3}.single-tdb_templates.author-template .tdb_breadcrumbs{margin-bottom:2px}.tdb_category_breadcrumbs{margin:21px 0 9px}.search-results .tdb_breadcrumbs{margin-bottom:2px}.tdi_54 .tdb-bread-sep{font-size:10px;margin:0 5px}.tdi_54,.tdi_54 a{color:#a5a5a5}.tdi_54 .tdb-bread-sep-svg svg,.tdi_54 .tdb-bread-sep-svg svg *{fill:#a5a5a5}.tdi_54 a:hover{color:#b361e0}.td-theme-wrap .tdi_54{text-align:left}.tdi_54{font-family:Rubik!important;font-size:14px!important;font-weight:400!important;letter-spacing:.25px!important}</style><div class="tdb-block-inner td-fix-index"><span><a title="" class="tdb-entry-crumb" href="https://www.codeguru.com/">Home</a></span><i class="tdb-bread-sep td-icon-right"></i><span><a title="View all posts in .NET" class="tdb-entry-crumb" href="https://www.codeguru.com/dotnet/">.NET</a></span></div></div><script type="application/ld+json"> { "@context": "https://schema.org", "@type": "BreadcrumbList", "itemListElement": [{ "@type": "ListItem", "position": 1, "item": { "@type": "WebSite", "@id": "https://www.codeguru.com/", "name": "Home" } },{ "@type": "ListItem", "position": 2, "item": { "@type": "WebPage", "@id": "https://www.codeguru.com/dotnet/", "name": ".NET" } } ] } </script><div class="td_block_wrap tdb_title tdi_55 tdb-single-title td-pb-border-top td_block_template_2" data-td-block-uid="tdi_55" > <style>@media (max-width:767px){.tdi_55{padding-right:0px!important}}@media (min-width:768px) and (max-width:1018px){.tdi_55{padding-right:0px!important}}@media (min-width:1019px) and (max-width:1140px){.tdi_55{padding-right:100px!important}}</style> <style>.tdb_title{margin-bottom:19px}.tdb_title.tdb-content-horiz-center{text-align:center}.tdb_title.tdb-content-horiz-center .tdb-title-line{margin:0 auto}.tdb_title.tdb-content-horiz-right{text-align:right}.tdb_title.tdb-content-horiz-right .tdb-title-line{margin-left:auto;margin-right:0}.tdb-title-text{display:inline-block;position:relative;margin:0;word-wrap:break-word;font-size:30px;line-height:38px;font-weight:700}.tdb-first-letter{position:absolute;-webkit-user-select:none;user-select:none;pointer-events:none;text-transform:uppercase;color:rgba(0,0,0,0.08);font-size:6em;font-weight:300;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);left:-0.36em;z-index:-1;-webkit-text-fill-color:initial}.tdb-title-line{display:none;position:relative}.tdb-title-line:after{content:'';width:100%;position:absolute;background-color:var(--td_theme_color,#4db2ec);top:0;left:0;margin:auto}.tdb-single-title .tdb-title-text{font-size:41px;line-height:50px;font-weight:400}.tdi_55 .tdb-title-text{background-color:#080a19;-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-family:brother-xl!important;font-size:30px!important;line-height:1.2!important;font-weight:700!important}html[class*='ie'] .tdi_55 .tdb-title-text{background:none;color:#080a19}.tdi_55 .tdb-title-line:after{height:2px;bottom:40%}.tdi_55 .tdb-title-line{height:50px}.td-theme-wrap .tdi_55{text-align:left}.tdi_55 .tdb-first-letter{left:-0.36em;right:auto;font-family:brother-xl!important;font-weight:700!important}.tdi_55 .tdb-add-text{font-family:brother-xl!important}@media (min-width:1019px) and (max-width:1140px){.tdi_55 .tdb-title-text{font-size:48px!important}}@media (min-width:768px) and (max-width:1018px){.tdi_55 .tdb-title-text{font-size:36px!important}}@media (max-width:767px){.tdi_55 .tdb-title-text{font-size:18px!important;line-height:1.6!important}}</style><div class="tdb-block-inner td-fix-index"><h1 class="tdb-title-text">Introduction to Web Components API</h1><div></div><div class="tdb-title-line"></div></div></div><div class="td_block_wrap tdb_single_author tdi_56 td-pb-border-top td_block_template_2 tdb-post-meta" data-td-block-uid="tdi_56" > <style>.tdi_56{margin-bottom:0px!important}</style> <style>.tdb-post-meta{margin-bottom:16px;color:#444;font-family:var(--td_default_google_font_1,'Open Sans','Open Sans Regular',sans-serif);font-size:11px;font-weight:400;clear:none;vertical-align:middle;line-height:1}.tdb-post-meta span,.tdb-post-meta i,.tdb-post-meta time{vertical-align:middle}.tdb_single_author{line-height:30px}.tdb_single_author a{vertical-align:middle}.tdb_single_author .tdb-block-inner{display:flex;align-items:center}.tdb_single_author .tdb-author-name-wrap{display:flex}.tdb_single_author .tdb-author-name{font-weight:700;margin-right:3px}.tdb_single_author .tdb-author-by{margin-right:3px}.tdb_single_author .tdb-author-photo img{display:block}.tdi_56{display:inline-block}.tdi_56 .tdb-author-name-wrap{align-items:baseline}.tdi_56 .avatar{width:30px;height:30px;margin-right:6px;border-radius:0px}.tdi_56 .tdb-author-by{color:#080a19;font-family:Rubik!important;font-size:14px!important;font-weight:400!important;text-transform:capitalize!important}.tdi_56 .tdb-author-name{color:#238fee;font-family:Rubik!important;font-size:14px!important;font-weight:400!important;text-transform:capitalize!important}.tdi_56 .tdb-author-name:hover{color:#b361e0}</style><div class="tdb-block-inner td-fix-index"><a class="tdb-author-photo" href="https://www.codeguru.com/author/tariqsiddiqui/" title="Tariq Siddiqui"><img alt='Tariq Siddiqui' src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2030%2030'%3E%3C/svg%3E" data-lazy-srcset='https://assets.dev.codeguru.com/uploads/2022/02/Tariq-461x462-1-60x60.png 2x' class='avatar avatar-30 photo' height='30' width='30' decoding='async' data-lazy-src="https://assets.dev.codeguru.com/uploads/2022/02/Tariq-461x462-1-30x30.png"/><noscript><img alt='Tariq Siddiqui' src='https://assets.dev.codeguru.com/uploads/2022/02/Tariq-461x462-1-30x30.png' srcset='https://assets.dev.codeguru.com/uploads/2022/02/Tariq-461x462-1-60x60.png 2x' class='avatar avatar-30 photo' height='30' width='30' loading='lazy' decoding='async'/></noscript></a><div class="tdb-author-name-wrap"><span class="tdb-author-by">By</span> <a class="tdb-author-name" href="https://www.codeguru.com/author/tariqsiddiqui/">Tariq Siddiqui</a></div></div></div><div class="td_block_wrap tdb_single_date tdi_57 td-pb-border-top td_block_template_2 tdb-post-meta" data-td-block-uid="tdi_57" > <style>.tdi_57{margin-bottom:2px!important;margin-left:10px!important}@media (max-width:767px){.tdi_57{margin-right:10px!important}}</style> <style>.tdb_single_date{line-height:30px}.tdb_single_date a{vertical-align:middle}.tdb_single_date .tdb-date-icon-svg{position:relative;line-height:0}.tdb_single_date svg{height:auto}.tdb_single_date svg,.tdb_single_date svg *{fill:#444}.tdi_57{display:inline-block;color:#a5a5a5;font-family:Rubik!important;font-size:14px!important;font-weight:400!important;text-transform:capitalize!important;letter-spacing:.05px!important}.tdi_57 svg{width:14px}.tdi_57 .tdb-date-icon{margin-right:5px}.tdi_57 svg,.tdi_57 svg *{fill:#a5a5a5}</style><div class="tdb-block-inner td-fix-index"><time class="entry-date updated td-module-date" datetime="2022-07-13T19:07:29+00:00">July 13, 2022</time></div></div> <!-- ./block --><div class="td_block_wrap tdb_single_post_share tdi_58 td-pb-border-top td_block_template_2" data-td-block-uid="tdi_58" > <style>.tdi_58{margin-top:20px!important;margin-bottom:60px!important}@media (min-width:768px) and (max-width:1018px){.tdi_58{margin-top:15px!important;margin-bottom:40px!important}}@media (max-width:767px){.tdi_58{margin-bottom:20px!important}}</style> <style>.tdb_single_post_share{margin-bottom:23px}.tdb-share-classic{position:relative;height:20px;margin-bottom:15px}.td-post-sharing-show-all-icons .td-social-sharing-hidden .td-social-expand-tabs{display:none}.td-post-sharing_display-vertically .td-post-sharing-visible,.td-post-sharing_display-vertically .td-social-sharing-hidden{display:flex;flex-direction:column}.tdi_58 .td-post-sharing-visible{align-items:flex-start}.tdi_58 .td-social-handler .td-social-but-text{font-family:brother-xl!important;font-size:12px!important;font-weight:300!important}.tdi_58 .td-social-network{font-family:brother-xl!important;font-weight:300!important}.tdi_58 .td-social-expand-tabs-icon,.tdi_58 .td-icon-share{color:#080a19}.tdi_58 .td-social-share-text .td-social-but-text{color:#080a19}.tdi_58 .td-social-handler .td-social-but-text:before{background-color:#080a19}.tdi_58 .td-ps-bg .td-social-network div,.tdi_58 .td-ps-icon-bg .td-social-network .td-social-but-icon,.tdi_58 .td-ps-dark-bg .td-social-network div{background-color:#238fee}.tdi_58 .td-ps-icon-arrow .td-social-but-icon:after{border-left-color:#238fee}.tdi_58 .td-ps-border-colored .td-social-but-text{border-color:#238fee}</style><div id="tdi_58" class="td-post-sharing tdb-block td-ps-bg td-ps-notext td-ps-bar td-post-sharing-style5 "> <style>.td-post-sharing-classic{position:relative;height:20px}.td-post-sharing{margin-left:-3px;margin-right:-3px;font-family:var(--td_default_google_font_1,'Open Sans','Open Sans Regular',sans-serif);z-index:2;white-space:nowrap;opacity:0}.td-post-sharing.td-social-show-all{white-space:normal}.td-js-loaded .td-post-sharing{-webkit-transition:opacity 0.3s;transition:opacity 0.3s;opacity:1}.td-post-sharing-classic+.td-post-sharing{margin-top:15px}@media (max-width:767px){.td-post-sharing-classic+.td-post-sharing{margin-top:8px}}.td-post-sharing-top{margin-bottom:30px}@media (max-width:767px){.td-post-sharing-top{margin-bottom:20px}}.td-post-sharing-bottom{border-style:solid;border-color:#ededed;border-width:1px 0;padding:21px 0;margin-bottom:42px}.td-post-sharing-bottom .td-post-sharing{margin-bottom:-7px}.td-post-sharing-visible,.td-social-sharing-hidden{display:inline-block}.td-social-sharing-hidden ul{display:none}.td-social-show-all .td-pulldown-filter-list{display:inline-block}.td-social-network,.td-social-handler{position:relative;display:inline-block;margin:0 3px 7px;height:40px;min-width:40px;font-size:11px;text-align:center;vertical-align:middle}.td-ps-notext .td-social-network .td-social-but-icon,.td-ps-notext .td-social-handler .td-social-but-icon{border-top-right-radius:2px;border-bottom-right-radius:2px}.td-social-network{color:#000;overflow:hidden}.td-social-network .td-social-but-icon{border-top-left-radius:2px;border-bottom-left-radius:2px}.td-social-network .td-social-but-text{border-top-right-radius:2px;border-bottom-right-radius:2px}.td-social-network:hover{opacity:0.8!important}.td-social-handler{color:#444;border:1px solid #e9e9e9;border-radius:2px}.td-social-handler .td-social-but-text{font-weight:700}.td-social-handler .td-social-but-text:before{background-color:#000;opacity:0.08}.td-social-share-text{margin-right:18px}.td-social-share-text:before,.td-social-share-text:after{content:'';position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);left:100%;width:0;height:0;border-style:solid}.td-social-share-text:before{border-width:9px 0 9px 11px;border-color:transparent transparent transparent #e9e9e9}.td-social-share-text:after{border-width:8px 0 8px 10px;border-color:transparent transparent transparent #fff}.td-social-but-text,.td-social-but-icon{display:inline-block;position:relative}.td-social-but-icon{padding-left:13px;padding-right:13px;line-height:40px;z-index:1}.td-social-but-icon i{position:relative;top:-1px;vertical-align:middle}.td-social-but-text{margin-left:-6px;padding-left:12px;padding-right:17px;line-height:40px}.td-social-but-text:before{content:'';position:absolute;top:12px;left:0;width:1px;height:16px;background-color:#fff;opacity:0.2;z-index:1}.td-social-handler i,.td-social-facebook i,.td-social-reddit i,.td-social-linkedin i,.td-social-tumblr i,.td-social-stumbleupon i,.td-social-vk i,.td-social-viber i,.td-social-flipboard i,.td-social-koo i{font-size:14px}.td-social-telegram i{font-size:16px}.td-social-mail i,.td-social-line i,.td-social-print i{font-size:15px}.td-social-handler .td-icon-share{top:-1px;left:-1px}.td-social-twitter .td-icon-twitter{font-size:14px}.td-social-pinterest .td-icon-pinterest{font-size:13px}.td-social-whatsapp .td-icon-whatsapp,.td-social-kakao .td-icon-kakao{font-size:18px}.td-social-kakao .td-icon-kakao:before{color:#3C1B1D}.td-social-reddit .td-social-but-icon{padding-right:12px}.td-social-reddit .td-icon-reddit{left:-1px}.td-social-telegram .td-social-but-icon{padding-right:12px}.td-social-telegram .td-icon-telegram{left:-1px}.td-social-stumbleupon .td-social-but-icon{padding-right:11px}.td-social-stumbleupon .td-icon-stumbleupon{left:-2px}.td-social-digg .td-social-but-icon{padding-right:11px}.td-social-digg .td-icon-digg{left:-2px;font-size:17px}.td-social-vk .td-social-but-icon{padding-right:11px}.td-social-vk .td-icon-vk{left:-2px}.td-social-naver .td-icon-naver{left:-1px;font-size:16px}.td-social-gettr .td-icon-gettr{font-size:25px}.td-ps-notext .td-social-gettr .td-icon-gettr{left:-5px}.td-social-copy_url{position:relative}.td-social-copy_url-check{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;opacity:0;pointer-events:none;transition:opacity .2s ease-in-out;z-index:11}.td-social-copy_url .td-icon-copy_url{left:-1px;font-size:17px}.td-social-copy_url-disabled{pointer-events:none}.td-social-copy_url-disabled .td-icon-copy_url{opacity:0}.td-social-copy_url-copied .td-social-copy_url-check{opacity:1}@keyframes social_copy_url_loader{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.td-social-expand-tabs i{top:-2px;left:-1px;font-size:16px}@media (min-width:767px){.td-social-line,.td-social-viber{display:none}}.td-ps-bg .td-social-network{color:#fff}.td-ps-bg .td-social-facebook .td-social-but-icon,.td-ps-bg .td-social-facebook .td-social-but-text{background-color:#516eab}.td-ps-bg .td-social-twitter .td-social-but-icon,.td-ps-bg .td-social-twitter .td-social-but-text{background-color:#29c5f6}.td-ps-bg .td-social-pinterest .td-social-but-icon,.td-ps-bg .td-social-pinterest .td-social-but-text{background-color:#ca212a}.td-ps-bg .td-social-whatsapp .td-social-but-icon,.td-ps-bg .td-social-whatsapp .td-social-but-text{background-color:#7bbf6a}.td-ps-bg .td-social-reddit .td-social-but-icon,.td-ps-bg .td-social-reddit .td-social-but-text{background-color:#f54200}.td-ps-bg .td-social-mail .td-social-but-icon,.td-ps-bg .td-social-digg .td-social-but-icon,.td-ps-bg .td-social-copy_url .td-social-but-icon,.td-ps-bg .td-social-mail .td-social-but-text,.td-ps-bg .td-social-digg .td-social-but-text,.td-ps-bg .td-social-copy_url .td-social-but-text{background-color:#000}.td-ps-bg .td-social-print .td-social-but-icon,.td-ps-bg .td-social-print .td-social-but-text{background-color:#333}.td-ps-bg .td-social-linkedin .td-social-but-icon,.td-ps-bg .td-social-linkedin .td-social-but-text{background-color:#0266a0}.td-ps-bg .td-social-tumblr .td-social-but-icon,.td-ps-bg .td-social-tumblr .td-social-but-text{background-color:#3e5a70}.td-ps-bg .td-social-telegram .td-social-but-icon,.td-ps-bg .td-social-telegram .td-social-but-text{background-color:#179cde}.td-ps-bg .td-social-stumbleupon .td-social-but-icon,.td-ps-bg .td-social-stumbleupon .td-social-but-text{background-color:#ee4813}.td-ps-bg .td-social-vk .td-social-but-icon,.td-ps-bg .td-social-vk .td-social-but-text{background-color:#4c75a3}.td-ps-bg .td-social-line .td-social-but-icon,.td-ps-bg .td-social-line .td-social-but-text{background-color:#00b900}.td-ps-bg .td-social-viber .td-social-but-icon,.td-ps-bg .td-social-viber .td-social-but-text{background-color:#5d54a4}.td-ps-bg .td-social-naver .td-social-but-icon,.td-ps-bg .td-social-naver .td-social-but-text{background-color:#3ec729}.td-ps-bg .td-social-flipboard .td-social-but-icon,.td-ps-bg .td-social-flipboard .td-social-but-text{background-color:#f42827}.td-ps-bg .td-social-kakao .td-social-but-icon,.td-ps-bg .td-social-kakao .td-social-but-text{background-color:#f9e000}.td-ps-bg .td-social-gettr .td-social-but-icon,.td-ps-bg .td-social-gettr .td-social-but-text{background-color:#fc223b}.td-ps-bg .td-social-koo .td-social-but-icon,.td-ps-bg .td-social-koo .td-social-but-text{background-color:#facd00}.td-ps-dark-bg .td-social-network{color:#fff}.td-ps-dark-bg .td-social-network .td-social-but-icon,.td-ps-dark-bg .td-social-network .td-social-but-text{background-color:#000}.td-ps-border .td-social-network .td-social-but-icon,.td-ps-border .td-social-network .td-social-but-text{line-height:38px;border-width:1px;border-style:solid}.td-ps-border .td-social-network .td-social-but-text{border-left-width:0}.td-ps-border .td-social-network .td-social-but-text:before{background-color:#000;opacity:0.08}.td-ps-border.td-ps-padding .td-social-network .td-social-but-icon{border-right-width:0}.td-ps-border.td-ps-padding .td-social-network.td-social-expand-tabs .td-social-but-icon{border-right-width:1px}.td-ps-border-grey .td-social-but-icon,.td-ps-border-grey .td-social-but-text{border-color:#e9e9e9}.td-ps-border-colored .td-social-facebook .td-social-but-icon,.td-ps-border-colored .td-social-facebook .td-social-but-text{border-color:#516eab}.td-ps-border-colored .td-social-twitter .td-social-but-icon,div.td-ps-border-colored .td-social-twitter .td-social-but-text{border-color:#29c5f6;color:#29c5f6}.td-ps-border-colored .td-social-pinterest .td-social-but-icon,.td-ps-border-colored .td-social-pinterest .td-social-but-text{border-color:#ca212a}.td-ps-border-colored .td-social-whatsapp .td-social-but-icon,.td-ps-border-colored .td-social-whatsapp .td-social-but-text{border-color:#7bbf6a}.td-ps-border-colored .td-social-reddit .td-social-but-icon,.td-ps-border-colored .td-social-reddit .td-social-but-text{border-color:#f54200}.td-ps-border-colored .td-social-mail .td-social-but-icon,.td-ps-border-colored .td-social-digg .td-social-but-icon,.td-ps-border-colored .td-social-copy_url .td-social-but-icon,.td-ps-border-colored .td-social-mail .td-social-but-text,.td-ps-border-colored .td-social-digg .td-social-but-text,.td-ps-border-colored .td-social-copy_url .td-social-but-text{border-color:#000}.td-ps-border-colored .td-social-print .td-social-but-icon,.td-ps-border-colored .td-social-print .td-social-but-text{border-color:#333}.td-ps-border-colored .td-social-linkedin .td-social-but-icon,.td-ps-border-colored .td-social-linkedin .td-social-but-text{border-color:#0266a0}.td-ps-border-colored .td-social-tumblr .td-social-but-icon,.td-ps-border-colored .td-social-tumblr .td-social-but-text{border-color:#3e5a70}.td-ps-border-colored .td-social-telegram .td-social-but-icon,.td-ps-border-colored .td-social-telegram .td-social-but-text{border-color:#179cde}.td-ps-border-colored .td-social-stumbleupon .td-social-but-icon,.td-ps-border-colored .td-social-stumbleupon .td-social-but-text{border-color:#ee4813}.td-ps-border-colored .td-social-vk .td-social-but-icon,.td-ps-border-colored .td-social-vk .td-social-but-text{border-color:#4c75a3}.td-ps-border-colored .td-social-line .td-social-but-icon,.td-ps-border-colored .td-social-line .td-social-but-text{border-color:#00b900}.td-ps-border-colored .td-social-viber .td-social-but-icon,.td-ps-border-colored .td-social-viber .td-social-but-text{border-color:#5d54a4}.td-ps-border-colored .td-social-naver .td-social-but-icon,.td-ps-border-colored .td-social-naver .td-social-but-text{border-color:#3ec729}.td-ps-border-colored .td-social-flipboard .td-social-but-icon,.td-ps-border-colored .td-social-flipboard .td-social-but-text{border-color:#f42827}.td-ps-border-colored .td-social-kakao .td-social-but-icon,.td-ps-border-colored .td-social-kakao .td-social-but-text{border-color:#f9e000}.td-ps-border-colored .td-social-gettr .td-social-but-icon,.td-ps-border-colored .td-social-gettr .td-social-but-text{border-color:#fc223b}.td-ps-border-colored .td-social-koo .td-social-but-icon,.td-ps-border-colored .td-social-koo .td-social-but-text{border-color:#facd00}.td-ps-icon-bg .td-social-but-icon{height:100%;border-color:transparent!important}.td-ps-icon-bg .td-social-network .td-social-but-icon{color:#fff}.td-ps-icon-bg .td-social-facebook .td-social-but-icon{background-color:#516eab}.td-ps-icon-bg .td-social-twitter .td-social-but-icon{background-color:#29c5f6}.td-ps-icon-bg .td-social-pinterest .td-social-but-icon{background-color:#ca212a}.td-ps-icon-bg .td-social-whatsapp .td-social-but-icon{background-color:#7bbf6a}.td-ps-icon-bg .td-social-reddit .td-social-but-icon{background-color:#f54200}.td-ps-icon-bg .td-social-mail .td-social-but-icon,.td-ps-icon-bg .td-social-digg .td-social-but-icon,.td-ps-icon-bg .td-social-copy_url .td-social-but-icon{background-color:#000}.td-ps-icon-bg .td-social-print .td-social-but-icon{background-color:#333}.td-ps-icon-bg .td-social-linkedin .td-social-but-icon{background-color:#0266a0}.td-ps-icon-bg .td-social-tumblr .td-social-but-icon{background-color:#3e5a70}.td-ps-icon-bg .td-social-telegram .td-social-but-icon{background-color:#179cde}.td-ps-icon-bg .td-social-stumbleupon .td-social-but-icon{background-color:#ee4813}.td-ps-icon-bg .td-social-vk .td-social-but-icon{background-color:#4c75a3}.td-ps-icon-bg .td-social-line .td-social-but-icon{background-color:#00b900}.td-ps-icon-bg .td-social-viber .td-social-but-icon{background-color:#5d54a4}.td-ps-icon-bg .td-social-naver .td-social-but-icon{background-color:#3ec729}.td-ps-icon-bg .td-social-flipboard .td-social-but-icon{background-color:#f42827}.td-ps-icon-bg .td-social-kakao .td-social-but-icon{background-color:#f9e000}.td-ps-icon-bg .td-social-gettr .td-social-but-icon{background-color:#fc223b}.td-ps-icon-bg .td-social-koo .td-social-but-icon{background-color:#facd00}.td-ps-icon-bg .td-social-but-text{margin-left:-3px}.td-ps-icon-bg .td-social-network .td-social-but-text:before{display:none}.td-ps-icon-arrow .td-social-network .td-social-but-icon:after{content:'';position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);left:calc(100% + 1px);width:0;height:0;border-style:solid;border-width:9px 0 9px 11px;border-color:transparent transparent transparent #000}.td-ps-icon-arrow .td-social-network .td-social-but-text{padding-left:20px}.td-ps-icon-arrow .td-social-network .td-social-but-text:before{display:none}.td-ps-icon-arrow.td-ps-padding .td-social-network .td-social-but-icon:after{left:100%}.td-ps-icon-arrow .td-social-facebook .td-social-but-icon:after{border-left-color:#516eab}.td-ps-icon-arrow .td-social-twitter .td-social-but-icon:after{border-left-color:#29c5f6}.td-ps-icon-arrow .td-social-pinterest .td-social-but-icon:after{border-left-color:#ca212a}.td-ps-icon-arrow .td-social-whatsapp .td-social-but-icon:after{border-left-color:#7bbf6a}.td-ps-icon-arrow .td-social-reddit .td-social-but-icon:after{border-left-color:#f54200}.td-ps-icon-arrow .td-social-mail .td-social-but-icon:after,.td-ps-icon-arrow .td-social-digg .td-social-but-icon:after,.td-ps-icon-arrow .td-social-copy_url .td-social-but-icon:after{border-left-color:#000}.td-ps-icon-arrow .td-social-print .td-social-but-icon:after{border-left-color:#333}.td-ps-icon-arrow .td-social-linkedin .td-social-but-icon:after{border-left-color:#0266a0}.td-ps-icon-arrow .td-social-tumblr .td-social-but-icon:after{border-left-color:#3e5a70}.td-ps-icon-arrow .td-social-telegram .td-social-but-icon:after{border-left-color:#179cde}.td-ps-icon-arrow .td-social-stumbleupon .td-social-but-icon:after{border-left-color:#ee4813}.td-ps-icon-arrow .td-social-vk .td-social-but-icon:after{border-left-color:#4c75a3}.td-ps-icon-arrow .td-social-line .td-social-but-icon:after{border-left-color:#00b900}.td-ps-icon-arrow .td-social-viber .td-social-but-icon:after{border-left-color:#5d54a4}.td-ps-icon-arrow .td-social-naver .td-social-but-icon:after{border-left-color:#3ec729}.td-ps-icon-arrow .td-social-flipboard .td-social-but-icon:after{border-left-color:#f42827}.td-ps-icon-arrow .td-social-kakao .td-social-but-icon:after{border-left-color:#f9e000}.td-ps-icon-arrow .td-social-gettr .td-social-but-icon:after{border-left-color:#fc223b}.td-ps-icon-arrow .td-social-koo .td-social-but-icon:after{border-left-color:#facd00}.td-ps-icon-arrow .td-social-expand-tabs .td-social-but-icon:after{display:none}.td-ps-icon-color .td-social-facebook .td-social-but-icon{color:#516eab}.td-ps-icon-color .td-social-pinterest .td-social-but-icon{color:#ca212a}.td-ps-icon-color .td-social-whatsapp .td-social-but-icon{color:#7bbf6a}.td-ps-icon-color .td-social-reddit .td-social-but-icon{color:#f54200}.td-ps-icon-color .td-social-mail .td-social-but-icon,.td-ps-icon-color .td-social-digg .td-social-but-icon,.td-ps-icon-color .td-social-copy_url .td-social-but-icon,.td-ps-icon-color .td-social-copy_url-check,.td-ps-icon-color .td-social-twitter .td-social-but-icon{color:#000}.td-ps-icon-color .td-social-print .td-social-but-icon{color:#333}.td-ps-icon-color .td-social-linkedin .td-social-but-icon{color:#0266a0}.td-ps-icon-color .td-social-tumblr .td-social-but-icon{color:#3e5a70}.td-ps-icon-color .td-social-telegram .td-social-but-icon{color:#179cde}.td-ps-icon-color .td-social-stumbleupon .td-social-but-icon{color:#ee4813}.td-ps-icon-color .td-social-vk .td-social-but-icon{color:#4c75a3}.td-ps-icon-color .td-social-line .td-social-but-icon{color:#00b900}.td-ps-icon-color .td-social-viber .td-social-but-icon{color:#5d54a4}.td-ps-icon-color .td-social-naver .td-social-but-icon{color:#3ec729}.td-ps-icon-color .td-social-flipboard .td-social-but-icon{color:#f42827}.td-ps-icon-color .td-social-kakao .td-social-but-icon{color:#f9e000}.td-ps-icon-color .td-social-gettr .td-social-but-icon{color:#fc223b}.td-ps-icon-color .td-social-koo .td-social-but-icon{color:#facd00}.td-ps-text-color .td-social-but-text{font-weight:700}.td-ps-text-color .td-social-facebook .td-social-but-text{color:#516eab}.td-ps-text-color .td-social-twitter .td-social-but-text{color:#29c5f6}.td-ps-text-color .td-social-pinterest .td-social-but-text{color:#ca212a}.td-ps-text-color .td-social-whatsapp .td-social-but-text{color:#7bbf6a}.td-ps-text-color .td-social-reddit .td-social-but-text{color:#f54200}.td-ps-text-color .td-social-mail .td-social-but-text,.td-ps-text-color .td-social-digg .td-social-but-text,.td-ps-text-color .td-social-copy_url .td-social-but-text{color:#000}.td-ps-text-color .td-social-print .td-social-but-text{color:#333}.td-ps-text-color .td-social-linkedin .td-social-but-text{color:#0266a0}.td-ps-text-color .td-social-tumblr .td-social-but-text{color:#3e5a70}.td-ps-text-color .td-social-telegram .td-social-but-text{color:#179cde}.td-ps-text-color .td-social-stumbleupon .td-social-but-text{color:#ee4813}.td-ps-text-color .td-social-vk .td-social-but-text{color:#4c75a3}.td-ps-text-color .td-social-line .td-social-but-text{color:#00b900}.td-ps-text-color .td-social-viber .td-social-but-text{color:#5d54a4}.td-ps-text-color .td-social-naver .td-social-but-text{color:#3ec729}.td-ps-text-color .td-social-flipboard .td-social-but-text{color:#f42827}.td-ps-text-color .td-social-kakao .td-social-but-text{color:#f9e000}.td-ps-text-color .td-social-gettr .td-social-but-text{color:#fc223b}.td-ps-text-color .td-social-koo .td-social-but-text{color:#facd00}.td-ps-text-color .td-social-expand-tabs .td-social-but-text{color:#b1b1b1}.td-ps-notext .td-social-but-icon{width:40px}.td-ps-notext .td-social-network .td-social-but-text{display:none}.td-ps-padding .td-social-network .td-social-but-icon{padding-left:17px;padding-right:17px}.td-ps-padding .td-social-handler .td-social-but-icon{width:40px}.td-ps-padding .td-social-reddit .td-social-but-icon,.td-ps-padding .td-social-telegram .td-social-but-icon{padding-right:16px}.td-ps-padding .td-social-stumbleupon .td-social-but-icon,.td-ps-padding .td-social-digg .td-social-but-icon,.td-ps-padding .td-social-expand-tabs .td-social-but-icon{padding-right:13px}.td-ps-padding .td-social-vk .td-social-but-icon{padding-right:14px}.td-ps-padding .td-social-expand-tabs .td-social-but-icon{padding-left:13px}.td-ps-rounded .td-social-network .td-social-but-icon{border-top-left-radius:100px;border-bottom-left-radius:100px}.td-ps-rounded .td-social-network .td-social-but-text{border-top-right-radius:100px;border-bottom-right-radius:100px}.td-ps-rounded.td-ps-notext .td-social-network .td-social-but-icon{border-top-right-radius:100px;border-bottom-right-radius:100px}.td-ps-rounded .td-social-expand-tabs{border-radius:100px}.td-ps-bar .td-social-network .td-social-but-icon,.td-ps-bar .td-social-network .td-social-but-text{-webkit-box-shadow:inset 0px -3px 0px 0px rgba(0,0,0,0.31);box-shadow:inset 0px -3px 0px 0px rgba(0,0,0,0.31)}.td-ps-bar .td-social-mail .td-social-but-icon,.td-ps-bar .td-social-digg .td-social-but-icon,.td-ps-bar .td-social-copy_url .td-social-but-icon,.td-ps-bar .td-social-mail .td-social-but-text,.td-ps-bar .td-social-digg .td-social-but-text,.td-ps-bar .td-social-copy_url .td-social-but-text{-webkit-box-shadow:inset 0px -3px 0px 0px rgba(255,255,255,0.28);box-shadow:inset 0px -3px 0px 0px rgba(255,255,255,0.28)}.td-ps-bar .td-social-print .td-social-but-icon,.td-ps-bar .td-social-print .td-social-but-text{-webkit-box-shadow:inset 0px -3px 0px 0px rgba(255,255,255,0.2);box-shadow:inset 0px -3px 0px 0px rgba(255,255,255,0.2)}.td-ps-big .td-social-but-icon{display:block;line-height:60px}.td-ps-big .td-social-but-icon .td-icon-share{width:auto}.td-ps-big .td-social-handler .td-social-but-text:before{display:none}.td-ps-big .td-social-share-text .td-social-but-icon{width:90px}.td-ps-big .td-social-expand-tabs .td-social-but-icon{width:60px}@media (max-width:767px){.td-ps-big .td-social-share-text{display:none}}.td-ps-big .td-social-facebook i,.td-ps-big .td-social-reddit i,.td-ps-big .td-social-mail i,.td-ps-big .td-social-linkedin i,.td-ps-big .td-social-tumblr i,.td-ps-big .td-social-stumbleupon i{margin-top:-2px}.td-ps-big .td-social-facebook i,.td-ps-big .td-social-reddit i,.td-ps-big .td-social-linkedin i,.td-ps-big .td-social-tumblr i,.td-ps-big .td-social-stumbleupon i,.td-ps-big .td-social-vk i,.td-ps-big .td-social-viber i,.td-ps-big .td-social-fliboard i,.td-ps-big .td-social-koo i,.td-ps-big .td-social-share-text i{font-size:22px}.td-ps-big .td-social-telegram i{font-size:24px}.td-ps-big .td-social-mail i,.td-ps-big .td-social-line i,.td-ps-big .td-social-print i{font-size:23px}.td-ps-big .td-social-twitter i,.td-ps-big .td-social-expand-tabs i{font-size:20px}.td-ps-big .td-social-whatsapp i,.td-ps-big .td-social-naver i,.td-ps-big .td-social-flipboard i,.td-ps-big .td-social-kakao i{font-size:26px}.td-ps-big .td-social-pinterest .td-icon-pinterest{font-size:21px}.td-ps-big .td-social-telegram .td-icon-telegram{left:1px}.td-ps-big .td-social-stumbleupon .td-icon-stumbleupon{left:-2px}.td-ps-big .td-social-digg .td-icon-digg{left:-1px;font-size:25px}.td-ps-big .td-social-vk .td-icon-vk{left:-1px}.td-ps-big .td-social-naver .td-icon-naver{left:0}.td-ps-big .td-social-gettr .td-icon-gettr{left:-1px}.td-ps-big .td-social-copy_url .td-icon-copy_url{left:0;font-size:25px}.td-ps-big .td-social-copy_url-check{font-size:18px}.td-ps-big .td-social-but-text{margin-left:0;padding-top:0;padding-left:17px}.td-ps-big.td-ps-notext .td-social-network,.td-ps-big.td-ps-notext .td-social-handler{height:60px}.td-ps-big.td-ps-notext .td-social-network{width:60px}.td-ps-big.td-ps-notext .td-social-network .td-social-but-icon{width:60px}.td-ps-big.td-ps-notext .td-social-share-text .td-social-but-icon{line-height:40px}.td-ps-big.td-ps-notext .td-social-share-text .td-social-but-text{display:block;line-height:1}.td-ps-big.td-ps-padding .td-social-network,.td-ps-big.td-ps-padding .td-social-handler{height:90px;font-size:13px}.td-ps-big.td-ps-padding .td-social-network{min-width:60px}.td-ps-big.td-ps-padding .td-social-but-icon{border-bottom-left-radius:0;border-top-right-radius:2px}.td-ps-big.td-ps-padding.td-ps-bar .td-social-but-icon{-webkit-box-shadow:none;box-shadow:none}.td-ps-big.td-ps-padding .td-social-but-text{display:block;padding-bottom:17px;line-height:1;border-top-left-radius:0;border-top-right-radius:0;border-bottom-left-radius:2px}.td-ps-big.td-ps-padding .td-social-but-text:before{display:none}.td-ps-big.td-ps-padding .td-social-expand-tabs i{line-height:90px}.td-ps-nogap{margin-left:0;margin-right:0}.td-ps-nogap .td-social-network,.td-ps-nogap .td-social-handler{margin-left:0;margin-right:0;border-radius:0}.td-ps-nogap .td-social-network .td-social-but-icon,.td-ps-nogap .td-social-network .td-social-but-text{border-radius:0}.td-ps-nogap .td-social-expand-tabs{border-radius:0}.td-post-sharing-style7 .td-social-network .td-social-but-icon{height:100%}.td-post-sharing-style7 .td-social-network .td-social-but-icon:before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,0.31)}.td-post-sharing-style7 .td-social-network .td-social-but-text{padding-left:17px}.td-post-sharing-style7 .td-social-network .td-social-but-text:before{display:none}.td-post-sharing-style7 .td-social-mail .td-social-but-icon:before,.td-post-sharing-style7 .td-social-digg .td-social-but-icon:before,.td-post-sharing-style7 .td-social-copy_url .td-social-but-icon:before{background-color:rgba(255,255,255,0.2)}.td-post-sharing-style7 .td-social-print .td-social-but-icon:before{background-color:rgba(255,255,255,0.1)}@media (max-width:767px){.td-post-sharing-style1 .td-social-share-text .td-social-but-text,.td-post-sharing-style3 .td-social-share-text .td-social-but-text,.td-post-sharing-style5 .td-social-share-text .td-social-but-text,.td-post-sharing-style14 .td-social-share-text .td-social-but-text,.td-post-sharing-style16 .td-social-share-text .td-social-but-text{display:none!important}}@media (max-width:767px){.td-post-sharing-style2 .td-social-share-text,.td-post-sharing-style4 .td-social-share-text,.td-post-sharing-style6 .td-social-share-text,.td-post-sharing-style7 .td-social-share-text,.td-post-sharing-style15 .td-social-share-text,.td-post-sharing-style17 .td-social-share-text,.td-post-sharing-style18 .td-social-share-text,.td-post-sharing-style19 .td-social-share-text,.td-post-sharing-style20 .td-social-share-text{display:none!important}}</style> <div class="td-post-sharing-visible"><a class="td-social-sharing-button td-social-sharing-button-js td-social-network td-social-facebook" href="https://www.facebook.com/sharer.php?u=https%3A%2F%2Fwww.codeguru.com%2Fsoap%2Fweb-components-api%2F" title="Facebook" ><div class="td-social-but-icon"><i class="td-icon-facebook"></i></div><div class="td-social-but-text">Facebook</div></a><a class="td-social-sharing-button td-social-sharing-button-js td-social-network td-social-twitter" href="https://twitter.com/intent/tweet?text=Introduction+to+Web+Components+API&url=https%3A%2F%2Fwww.codeguru.com%2Fsoap%2Fweb-components-api%2F&via=CodeGuru" title="Twitter" ><div class="td-social-but-icon"><i class="td-icon-twitter"></i></div><div class="td-social-but-text">Twitter</div></a><a class="td-social-sharing-button td-social-sharing-button-js td-social-network td-social-linkedin" href="https://www.linkedin.com/shareArticle?mini=true&url=https://www.codeguru.com/soap/web-components-api/&title=Introduction+to+Web+Components+API" title="Linkedin" ><div class="td-social-but-icon"><i class="td-icon-linkedin"></i></div><div class="td-social-but-text">Linkedin</div></a><a class="td-social-sharing-button td-social-sharing-button-js td-social-network td-social-whatsapp" href="https://api.whatsapp.com/send?text=Introduction+to+Web+Components+API %0A%0A https://www.codeguru.com/soap/web-components-api/" title="WhatsApp" ><div class="td-social-but-icon"><i class="td-icon-whatsapp"></i></div><div class="td-social-but-text">WhatsApp</div></a><a class="td-social-sharing-button td-social-sharing-button-js td-social-network td-social-reddit" href="https://reddit.com/submit?url=https://www.codeguru.com/soap/web-components-api/&title=Introduction+to+Web+Components+API" title="ReddIt" ><div class="td-social-but-icon"><i class="td-icon-reddit"></i></div><div class="td-social-but-text">ReddIt</div></a></div><div class="td-social-sharing-hidden"><ul class="td-pulldown-filter-list"></ul><a class="td-social-sharing-button td-social-handler td-social-expand-tabs" href="#" data-block-uid="tdi_58" title="More"> <div class="td-social-but-icon"><i class="td-icon-plus td-social-expand-tabs-icon"></i></div> </a></div></div></div><div class="td_block_wrap tdb_single_content tdi_59 td-pb-border-top td_block_template_2 td-post-content tagdiv-type" data-td-block-uid="tdi_59" > <style>.tdi_59{margin-top:0px!important}@media (max-width:767px){.tdi_59{margin-top:0px!important}}</style> <style>.tdb_single_content{margin-bottom:0;*zoom:1}.tdb_single_content:before,.tdb_single_content:after{display:table;content:'';line-height:0}.tdb_single_content:after{clear:both}.tdb_single_content .tdb-block-inner>*:not(.wp-block-quote):not(.alignwide):not(.alignfull.wp-block-cover.has-parallax):not(.td-a-ad){margin-left:auto;margin-right:auto}.tdb_single_content a{pointer-events:auto}.tdb_single_content .td-spot-id-top_ad .tdc-placeholder-title:before{content:'Article Top Ad'!important}.tdb_single_content .td-spot-id-inline_ad0 .tdc-placeholder-title:before{content:'Article Inline Ad 1'!important}.tdb_single_content .td-spot-id-inline_ad1 .tdc-placeholder-title:before{content:'Article Inline Ad 2'!important}.tdb_single_content .td-spot-id-inline_ad2 .tdc-placeholder-title:before{content:'Article Inline Ad 3'!important}.tdb_single_content .td-spot-id-bottom_ad .tdc-placeholder-title:before{content:'Article Bottom Ad'!important}.tdb_single_content .id_top_ad,.tdb_single_content .id_bottom_ad{clear:both;margin-bottom:21px;text-align:center}.tdb_single_content .id_top_ad img,.tdb_single_content .id_bottom_ad img{margin-bottom:0}.tdb_single_content .id_top_ad .adsbygoogle,.tdb_single_content .id_bottom_ad .adsbygoogle{position:relative}.tdb_single_content .id_ad_content-horiz-left,.tdb_single_content .id_ad_content-horiz-right,.tdb_single_content .id_ad_content-horiz-center{margin-bottom:15px}.tdb_single_content .id_ad_content-horiz-left img,.tdb_single_content .id_ad_content-horiz-right img,.tdb_single_content .id_ad_content-horiz-center img{margin-bottom:0}.tdb_single_content .id_ad_content-horiz-center{text-align:center}.tdb_single_content .id_ad_content-horiz-center img{margin-right:auto;margin-left:auto}.tdb_single_content .id_ad_content-horiz-left{float:left;margin-top:9px;margin-right:21px}.tdb_single_content .id_ad_content-horiz-right{float:right;margin-top:6px;margin-left:21px}.tdb_single_content .tdc-a-ad .tdc-placeholder-title{width:300px;height:250px}.tdb_single_content .tdc-a-ad .tdc-placeholder-title:before{position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);margin:auto;display:table;width:100%}.tdb_single_content .tdb-block-inner.td-fix-index{word-break:break-word}.tdi_59,.tdi_59>p,.tdi_59 .tdb-block-inner>p{font-family:Rubik!important;font-size:16px!important;line-height:1.6!important;font-weight:400!important}.tdi_59 h1{font-family:brother-xl!important;font-weight:700!important;letter-spacing:0px!important}.tdi_59 h2{font-family:brother-xl!important;font-weight:700!important;letter-spacing:0px!important}.tdi_59 h3:not(.tds-locker-title){font-family:brother-xl!important;font-weight:700!important;letter-spacing:0px!important}.tdi_59 h4{font-family:brother-xl!important;font-weight:500!important;letter-spacing:0px!important}.tdi_59 h5{font-family:brother-xl!important;font-weight:500!important;letter-spacing:0px!important}.tdi_59 h6{font-family:brother-xl!important;font-weight:500!important;letter-spacing:0px!important}.tdi_59 li{font-family:Rubik!important;font-size:16px!important;font-weight:400!important}.tdi_59 li:before{margin-top:1px;line-height:16px!important}.tdi_59 .tdb-block-inner blockquote p{font-family:brother-xl!important;font-size:30px!important;line-height:1.1!important;font-weight:700!important;text-transform:uppercase!important;color:#222222}.tdi_59,.tdi_59 p{color:#080a19}.tdi_59 h1,.tdi_59 h2,.tdi_59 h3:not(.tds-locker-title),.tdi_59 h4,.tdi_59 h5,.tdi_59 h6{color:#238fee}.tdi_59 .wp-caption-text,.tdi_59 figcaption{color:#080a19}.tdi_59 a:not(.wp-block-button__link){color:#238fee}.tdi_59 a:not(.wp-block-button__link):hover{color:#b361e0}@media (max-width:767px){.tdb_single_content .id_ad_content-horiz-left,.tdb_single_content .id_ad_content-horiz-right,.tdb_single_content .id_ad_content-horiz-center{margin:0 auto 26px auto}}@media (max-width:767px){.tdb_single_content .id_ad_content-horiz-left{margin-right:0}}@media (max-width:767px){.tdb_single_content .id_ad_content-horiz-right{margin-left:0}}@media (max-width:767px){.tdb_single_content .td-a-ad{float:none;text-align:center}.tdb_single_content .td-a-ad img{margin-right:auto;margin-left:auto}.tdb_single_content .tdc-a-ad{float:none}}@media (min-width:768px) and (max-width:1018px){.tdi_59 .tdb-block-inner blockquote p{font-size:24px!important;line-height:1.2!important}}@media (max-width:767px){.tdi_59 h2{line-height:1.2!important}.tdi_59 .tdb-block-inner blockquote p{font-size:24px!important;line-height:1.2!important}}</style><div class="tdb-block-inner td-fix-index"><p class="commission-disclaimer-message"> CodeGuru content and product recommendations are editorially independent. We may make money when you click on links to our partners. <a href="/editorial-policy/" target="_blank">Learn More</a>. </p><p><img fetchpriority="high" decoding="async" class="alignnone size-medium wp-image-19308" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20300%20200'%3E%3C/svg%3E" alt="API Tutorial" width="300" height="200" data-lazy-srcset="https://assets.codeguru.com/uploads/2022/06/API-Testing-Tutorial-300x200.jpeg 300w, https://assets.codeguru.com/uploads/2022/06/API-Testing-Tutorial-1024x683.jpeg 1024w, https://assets.codeguru.com/uploads/2022/06/API-Testing-Tutorial-768x512.jpeg 768w, https://assets.codeguru.com/uploads/2022/06/API-Testing-Tutorial-1536x1024.jpeg 1536w, https://assets.codeguru.com/uploads/2022/06/API-Testing-Tutorial-2048x1365.jpeg 2048w, https://assets.codeguru.com/uploads/2022/06/API-Testing-Tutorial-696x464.jpeg 696w, https://assets.codeguru.com/uploads/2022/06/API-Testing-Tutorial-1068x712.jpeg 1068w, https://assets.codeguru.com/uploads/2022/06/API-Testing-Tutorial-1920x1280.jpeg 1920w, https://assets.codeguru.com/uploads/2022/06/API-Testing-Tutorial-630x420.jpeg 630w" data-lazy-sizes="(max-width: 300px) 100vw, 300px" data-lazy-src="https://assets.codeguru.com/uploads/2022/06/API-Testing-Tutorial-300x200.jpeg" /><noscript><img fetchpriority="high" decoding="async" class="alignnone size-medium wp-image-19308" src="https://assets.codeguru.com/uploads/2022/06/API-Testing-Tutorial-300x200.jpeg" alt="API Tutorial" width="300" height="200" srcset="https://assets.codeguru.com/uploads/2022/06/API-Testing-Tutorial-300x200.jpeg 300w, https://assets.codeguru.com/uploads/2022/06/API-Testing-Tutorial-1024x683.jpeg 1024w, https://assets.codeguru.com/uploads/2022/06/API-Testing-Tutorial-768x512.jpeg 768w, https://assets.codeguru.com/uploads/2022/06/API-Testing-Tutorial-1536x1024.jpeg 1536w, https://assets.codeguru.com/uploads/2022/06/API-Testing-Tutorial-2048x1365.jpeg 2048w, https://assets.codeguru.com/uploads/2022/06/API-Testing-Tutorial-696x464.jpeg 696w, https://assets.codeguru.com/uploads/2022/06/API-Testing-Tutorial-1068x712.jpeg 1068w, https://assets.codeguru.com/uploads/2022/06/API-Testing-Tutorial-1920x1280.jpeg 1920w, https://assets.codeguru.com/uploads/2022/06/API-Testing-Tutorial-630x420.jpeg 630w" sizes="(max-width: 300px) 100vw, 300px" /></noscript></p> <p>In this web development tutorial, we are going to look at web components web developers can leverage to create better maintainability of their codebases, provide high-quality user experiences, and avoid the fate of their web applications becoming obsolete due to outdated technologies or coding principles.</p> <p>This tutorial assumes that readers are at least aware of web fundamentals such as the basics of programming in HTML, CSS, and JavaScript. However, if you do not have basic knowledge of these technologies, you can still build custom elements, which makes it easy for you to learn about simplifying the complexities of front-end web applications.</p> <p>Additionally, if you would like to learn web development and HTML in more of a classroom setting, we have a list of some of the <a href="https://www.htmlgoodies.com/html/best-online-courses-to-learn-html/" target="_blank" rel="noopener">Best Online Courses to Learn HTML and Web Development</a> to get you started.</p> <h2>What are Web Components?</h2> <p>In any typical <a href="https://www.webopedia.com/definitions/framework/" target="_blank" rel="noopener">front-end framework</a>, such as Angular, we usually put components that share similar functionalities into a module. However, these components have a drawback – they are dependent on the underlying library or framework, which means if you remove the framework from your project, the components will no longer work. You may be wondering if there is a common component that does not have a dependency on any technology – yes, there are; we have common components that can be used across the range of technologies known as <i>web components</i>. Web components are HTML elements that leverage the power to create new HTML tags and extend existing HTML tags or other components created by another developer.</p> <p><span style="font-weight: 400;">Since the advent of front-end frameworks, component-based web development has been steadily on the rise. Today, web components are a part of more than 10% of all the pages that load in a browser. Tech giants like Google, Facebook, and Microsoft incorporate web components into their technologies and frameworks. JavaScript frameworks, such as Angular, Next.js, Vue, and React are already making use of web components as well.</span></p> <p>You can learn more about the different web development frameworks by reading our tutorial: <a href="https://www.htmlgoodies.com/javascript/best-javascript-frameworks-for-web-developers/" target="_blank" rel="noopener">Best JavaScript Frameworks for Web Developers</a>.</p> <h3>What are the Features of Web Components</h3> <p>Below are some of the features web components bring to the table for web developers and web applications:</p> <ul> <li><a href="https://www.webopedia.com/definitions/w3c/" target="_blank" rel="noopener">W3C</a> is continuously working on web component specifications to extend its scope. Programmers will be able to create more common components and since those components do not rely on a framework or library, developers can save time and effort when choosing the right web framework; all programmers need to do is add some HTML, CSS, and JavaScript code to build native web components.</li> <li>Web Components can be used with any JavaScript library or framework that is compliant with HTML. They can be easily created using the browser’s API and do not have a dependency on any third-party library or framework.</li> <li>Web components are non-intrusive. That means they are well organized and have their styling and structure. They do not interfere with any other component or code on the page.</li> </ul> <p><b>Read:</b> <a href="https://www.codeguru.com/csharp/top-tools-for-web-developers/" target="_blank" rel="noopener">Top Tools for Web Developers</a></p> <h2>What is the Web Components API?</h2> <p>The power of web components lies in their API. It brings the power to create reusable components with nothing more than HTML, CSS, and vanilla JavaScript. The API uses four web standards as a way of creating reusable components. They are listed below:</p> <ul> <li>Custom elements</li> <li>HTML templates</li> <li>ES modules</li> <li>Shadow DOM</li> </ul> <p>Let’s take a more detailed look at each of the web standards that make up the web components API.</p> <h3>Custom Elements</h3> <p>Custom elements are like any HTML elements, such as <strong><</strong><b>p></b> or <strong><</strong><b>article></b> tags. Through browser API, we can also create elements ourselves. The custom elements created are just like HTML elements and are enclosed in angular brackets. The name of the custom elements should have a dash in them – for example: <strong><page-header></strong><b></b> or <strong><stories-section></strong><b></b>.</p> <p>It should be noted that, to prevent conflict in the future with the names of custom elements, browser vendors have committed to not creating new built-in elements that have dashes within their names.</p> <p>Custom elements have their own set of semantics, mark-up, and behaviors that you can share across multiple libraries, frameworks, and browsers.</p> <p>Let’s create a custom element using the following code example:</p> <pre><span style="font-weight: 400;">class ComponentDemonstation extends HTMLElement {</span> <span style="font-weight: 400;"> connectedCallback() {</span> <span style="font-weight: 400;"> this.innerHTML = `<h3>This is a demonstration of Custom elements</h3>`;</span> <span style="font-weight: 400;"> }</span> <span style="font-weight: 400;">}</span><span style="font-weight: 400;"> </span> <span style="font-weight: 400;">customElements.define('component-demo', ComponentDemonstation);</span></pre> <p>On the HTML page, place the following tag:</p> <pre><span style="font-weight: 400;"><my-component></my-component></span></pre> <p>In the example above, we have defined an HTML element known as <strong><component-demo></strong><b></b>. As you can see, while defining the custom element, we used the <b>extend</b> keyword. The <b>extend</b> keyword is used to register an element with the browser. Note that all custom elements you create must extend <b>HTMLElement</b>.</p> <p><b>Read:</b> <a href="https://www.codeguru.com/research/tips-to-optimize-website-performance/" target="_blank" rel="noopener">Tips to Optimize Website Performance</a></p> <h3>HTML Templates</h3> <p>HTML5 templates are an excellent way to build reusable layouts using markup. HTML5 templates are a “template” of code that you can put inside an HTML page to render whenever the code is required.</p> <p>Consider the following code example:</p> <pre>const fragment = document.getElementById('item-template'); const items = [ { name: 'Bicycle', quantity: 2 }, { name: 'Dart', quantity: 1 }, { name: 'Sports Shoes', quantity: 1 } ]; items.forEach(item => { // Creating an instance of the template const instance = document.importNode(fragment.content, true); // Adding relevant content to the template instance.querySelector('.name').innerHTML = item.name; instance.querySelector('.quantity').innerHTML = item.quantity; // Appending the instance of the DOM document.getElementById(items).appendChild(instance); }); </pre> <p>In the above code example, we have created a template using <strong><template id=”item-template”></strong><b></b>. To consume our newly created template, we can use the following HTML code snippet:</p> <pre><span style="font-weight: 400;"><template id="item-template"></span> <span style="font-weight: 400;"> <li><span class="name"></span> &mdash; <span class="quantity"></span></li></span> <span style="font-weight: 400;"></template></span> <span style="font-weight: 400;"><ul id="items"></ul></span></pre> <ul id="items"></ul> <p>The above code demonstrates how an HTML template can consume a script to tell the browser what to do with it.</p> <h3>ES Modules API</h3> <p>Before the ES Modules were introduced, JavaScript did not have any convention to use modules. You can think of a <strong><</strong><b>module></b> as a collection of features you can reuse in other codebase files. Developers are then required to use <strong><</strong><b>script></b> tags whenever they want to load JavaScript files into their programs and web applications.</p> <p>The ES Modules API introduced the standard way for bundling a collection of features into a library that can be reused in other JavaScript files at some point of time in the future.</p> <h3>Shadow DOM</h3> <p>Although the shadow DOM API is not required to create web components, it is a powerful tool for scope customization for individual custom elements.</p> <p>As the name implies, a shadow DOM creates a separate DOM tree inside the element it is attached to. In other words, anything inside of the document’s scope is referred to as light DOM and anything inside the shadow root is called shadow DOM.</p> <p>Shadow DOM functions like <strong><</strong><b>iframe</b><strong>></strong>, where its content is isolated from the rest of the document. The shadow DOM protects its content from the surrounding variables. It also prevents leakage of CSS and JavaScript code from and into a custom element. Let’s see how you can set-up a shadow DOM. You can attach shadow DOM on any HTML element using the <strong>attachShadow()</strong> method. Below is a code example illustrating setting up a shadow DOM:</p> <div></div> <pre><span style="font-weight: 400;"><div></span> <span style="font-weight: 400;"> <div id="shadowRootDemo"></div></span> <span style="font-weight: 400;"> <button id="button">Banana</button></span> <span style="font-weight: 400;"></div></span></pre> <p>To attach the shadow root to the above node, use the following script:</p> <pre><span style="font-weight: 400;">const shadowRoot = document.getElementById('shadowRootDemo').attachShadow({ mode: 'open' });</span> <span style="font-weight: 400;">shadowRoot.innerHTML = `<style></span> <span style="font-weight: 400;">button {</span> <span style="font-weight: 400;"> color: orange;</span> <span style="font-weight: 400;">}</span> <span style="font-weight: 400;"></style></span> <span style="font-weight: 400;"><button id="button">This will use the CSS color: orange <slot></slot></button>`;</span></pre> <p>If you have noticed here, we have used the <strong><slot></strong> <b></b> element to include the content from the containing document in the shadow root. At the point where you would use the <strong><slot></strong> element, it will drop the user content from the containing document at that designated point.</p> <h3>Browser Support</h3> <p>An important thing to consider while working with the web components API is keeping browser compatibility in mind. The Web Component APIs that we have used in this article are fully supported in all modern browsers, such as Firefox, Chrome, and Edge. The exceptions, however, are Internet Explorer 11 and Safari. Microsoft ended support for IE 11 in August 2021, Safari does not support web components, and Apple has no plans yet to support web components in the coming future, so polyfills must be used for these two browsers to fill the browsers’ capabilities gap.</p> <h2>Final Thoughts on Web Components API</h2> <p>There is no doubt that web components are going to play a vital role in the development of front-end applications. Web components are already being adopted by large tech companies like Google, Facebook, etc. as their preferred framework and technology. The Accelerated Mobile Pages (AMP) technology and Google’s Polymer framework are examples of the ever-increasing use of web components in the software industry. The <i>Web Components Specification</i> APIs are here to stay longer and continue to grow and evolve as the needs of developers evolve.</p> <p><strong>Read:</strong> <a href="https://www.codeguru.com/tools/productivity-tools-dot-net/" target="_blank" rel="noopener">Productivity Tools for .NET Developers</a></p> </div></div><div class="td_block_wrap tdb_single_post_share tdi_60 td-pb-border-top td_block_template_2" data-td-block-uid="tdi_60" > <style>.tdi_60{margin-top:20px!important;margin-bottom:60px!important}@media (min-width:768px) and (max-width:1018px){.tdi_60{margin-top:15px!important;margin-bottom:40px!important}}</style> <style>.tdi_60 .td-post-sharing-visible{align-items:flex-start}.tdi_60 .td-social-handler .td-social-but-text{font-family:brother-xl!important;font-size:12px!important;font-weight:400!important}.tdi_60 .td-social-network{font-family:brother-xl!important;font-weight:400!important}.tdi_60 .td-social-expand-tabs-icon,.tdi_60 .td-icon-share{color:#080a19}.tdi_60 .td-social-share-text .td-social-but-text{color:#080a19}.tdi_60 .td-social-handler .td-social-but-text:before{background-color:#080a19}.tdi_60 .td-ps-bg .td-social-network div,.tdi_60 .td-ps-icon-bg .td-social-network .td-social-but-icon,.tdi_60 .td-ps-dark-bg .td-social-network div{background-color:#238fee}.tdi_60 .td-ps-icon-arrow .td-social-but-icon:after{border-left-color:#238fee}.tdi_60 .td-ps-border-colored .td-social-but-text{border-color:#238fee}</style><div id="tdi_60" class="td-post-sharing tdb-block td-ps-bg td-ps-notext td-ps-bar td-post-sharing-style5 "><div class="td-post-sharing-visible"><a class="td-social-sharing-button td-social-sharing-button-js td-social-network td-social-facebook" href="https://www.facebook.com/sharer.php?u=https%3A%2F%2Fwww.codeguru.com%2Fsoap%2Fweb-components-api%2F" title="Facebook" ><div class="td-social-but-icon"><i class="td-icon-facebook"></i></div><div class="td-social-but-text">Facebook</div></a><a class="td-social-sharing-button td-social-sharing-button-js td-social-network td-social-twitter" href="https://twitter.com/intent/tweet?text=Introduction+to+Web+Components+API&url=https%3A%2F%2Fwww.codeguru.com%2Fsoap%2Fweb-components-api%2F&via=CodeGuru" title="Twitter" ><div class="td-social-but-icon"><i class="td-icon-twitter"></i></div><div class="td-social-but-text">Twitter</div></a><a class="td-social-sharing-button td-social-sharing-button-js td-social-network td-social-linkedin" href="https://www.linkedin.com/shareArticle?mini=true&url=https://www.codeguru.com/soap/web-components-api/&title=Introduction+to+Web+Components+API" title="Linkedin" ><div class="td-social-but-icon"><i class="td-icon-linkedin"></i></div><div class="td-social-but-text">Linkedin</div></a><a class="td-social-sharing-button td-social-sharing-button-js td-social-network td-social-whatsapp" href="https://api.whatsapp.com/send?text=Introduction+to+Web+Components+API %0A%0A https://www.codeguru.com/soap/web-components-api/" title="WhatsApp" ><div class="td-social-but-icon"><i class="td-icon-whatsapp"></i></div><div class="td-social-but-text">WhatsApp</div></a><a class="td-social-sharing-button td-social-sharing-button-js td-social-network td-social-reddit" href="https://reddit.com/submit?url=https://www.codeguru.com/soap/web-components-api/&title=Introduction+to+Web+Components+API" title="ReddIt" ><div class="td-social-but-icon"><i class="td-icon-reddit"></i></div><div class="td-social-but-text">ReddIt</div></a></div><div class="td-social-sharing-hidden"><ul class="td-pulldown-filter-list"></ul><a class="td-social-sharing-button td-social-handler td-social-expand-tabs" href="#" data-block-uid="tdi_60" title="More"> <div class="td-social-but-icon"><i class="td-icon-plus td-social-expand-tabs-icon"></i></div> </a></div></div></div><div class="vc_row_inner tdi_62 native-boap-before vc_row vc_inner wpb_row td-pb-row" > <style scoped>.tdi_62{position:relative!important;top:0;transform:none;-webkit-transform:none}.tdi_62,.tdi_62 .tdc-inner-columns{display:block}.tdi_62 .tdc-inner-columns{width:100%}@media (min-width:768px){.tdi_62{margin-left:-15px;margin-right:-15px}.tdi_62>.vc_column_inner,.tdi_62>.tdc-inner-columns>.vc_column_inner{padding-left:15px;padding-right:15px}}.tdi_62{margin-bottom:20px!important}.tdi_62 .td_block_wrap{text-align:left}</style><div class="vc_column_inner tdi_64 wpb_column vc_column_container tdc-inner-column td-pb-span3"> <style scoped>.tdi_64{vertical-align:baseline}.tdi_64 .vc_column-inner>.wpb_wrapper,.tdi_64 .vc_column-inner>.wpb_wrapper .tdc-elements{display:block}.tdi_64 .vc_column-inner>.wpb_wrapper .tdc-elements{width:100%}</style><div class="vc_column-inner"><div class="wpb_wrapper" ><div class="tdb-author-box td_block_wrap tdb_single_author_box tdi_65 tdb-content-vert-top td-pb-border-top td_block_template_2" data-td-block-uid="tdi_65" > <style>.tdi_65{margin-bottom:60px!important;box-shadow:0 3px 20px rgba(0,0,0,0.15)!important}@media (min-width:768px) and (max-width:1018px){.tdi_65{margin-bottom:40px!important;box-shadow:0 3px 20px rgba(0,0,0,0.15)!important}}</style> <style>.tdb-author-box .tdb-author-photo,.tdb-author-box .tdb-author-info{display:table-cell;vertical-align:top}.tdb-author-box .tdb-author-photo img{display:block}.tdb-author-box .tdb-author-counters span{display:inline-block;background-color:#222;margin:0 10px 0 0;padding:5px 10px 4px;font-family:var(--td_default_google_font_2,'Roboto',sans-serif);font-size:11px;font-weight:700;line-height:1;color:#fff}.tdb-author-box .tdb-author-name,.tdb-author-box .tdb-author-url{display:block}.tdb-author-box .tdb-author-name{margin:7px 0 8px;font-family:var(--td_default_google_font_1,'Open Sans','Open Sans Regular',sans-serif);font-size:15px;line-height:21px;font-weight:700;color:#222}.tdb-author-box .tdb-author-name:hover{color:#4db2ec}.tdb-author-box .tdb-author-url{margin-bottom:6px;font-size:11px;font-style:italic;line-height:21px;color:#444}.tdb-author-box .tdb-author-url:hover{color:#4db2ec}.tdb-author-box .tdb-author-descr{font-size:12px}.tdb-author-box .tdb-author-social{margin-top:4px}.tdb-author-box .tdb-social-item{position:relative;display:inline-block;-webkit-transition:all 0.2s;transition:all 0.2s;text-align:center;-webkit-transform:translateZ(0);transform:translateZ(0)}.tdb-author-box .tdb-social-item:last-child{margin-right:0!important}.tdb-author-box .tdb-social-item i{color:#000;-webkit-transition:all 0.2s;transition:all 0.2s}.tdb-author-box .tdb-social-item:hover i{color:#000}.tdi_65{padding:21px;border:1px solid #ededed}.tdi_65 .tdb-author-photo{display:inline-block;width:130px;transform:translateZ(0);-webkit-transform:translateZ(0);pointer-events:auto}.tdi_65 .tdb-author-info{display:inline-block;width:100%;padding-top:21px;padding-left:0}.tdi_65 .tdb-block-inner{text-align:center}.tdi_65 .avatar,.tdi_65 .tdb-author-photo:before,.tdi_65 .tdb-author-photo:after{border-radius:0px}.tdi_65 .tdb-author-name{color:#238fee;font-family:Rubik!important;font-size:18px!important;line-height:1.2!important;font-weight:400!important}.tdi_65 .tdb-author-name:hover{color:#b361e0}.tdi_65 .tdb-author-url{color:#a5a5a5;font-family:Rubik!important;font-size:11px!important;line-height:1.1!important;font-weight:400!important}.tdi_65 .tdb-author-url:hover{color:#b361e0}.tdi_65 .tdb-author-descr{color:#080a19;font-family:Rubik!important;font-size:15px!important;font-weight:300!important}.tdi_65 .tdb-social-item i{font-size:16px;vertical-align:middle;line-height:24px;color:#080a19}.tdi_65 .tdb-social-item i.td-icon-twitter,.tdi_65 .tdb-social-item i.td-icon-linkedin,.tdi_65 .tdb-social-item i.td-icon-pinterest,.tdi_65 .tdb-social-item i.td-icon-blogger,.tdi_65 .tdb-social-item i.td-icon-vimeo{font-size:12.8px}.tdi_65 .tdb-social-item{min-width:24px;height:24px;margin:7px 14px 7px 0}.tdi_65 .tdb-social-item:hover i{color:#ffffff}.tdi_65 .tdb-social-item:hover{background-color:#238fee}.tdi_65 .tdb-author-photo:hover:before{opacity:0}@media (min-width:1019px) and (max-width:1140px){.tdi_65{border:1px solid #ededed}}@media (min-width:768px) and (max-width:1018px){.tdi_65{border:1px solid #ededed}.tdi_65 .tdb-author-descr{font-size:12px!important}}@media (max-width:767px){.tdi_65{border:1px solid #ededed}}</style><div class="tdb-block-inner td-fix-index"><a href="https://www.codeguru.com/author/tariqsiddiqui/" class="tdb-author-photo" title="Tariq Siddiqui"><img alt='Tariq Siddiqui' src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20130%20130'%3E%3C/svg%3E" data-lazy-srcset='https://assets.codeguru.com/uploads/2022/02/Tariq-461x462-1-260x260.png 2x' class='avatar avatar-130 photo' height='130' width='130' decoding='async' data-lazy-src="https://assets.codeguru.com/uploads/2022/02/Tariq-461x462-1-130x130.png"/><noscript><img alt='Tariq Siddiqui' src='https://assets.codeguru.com/uploads/2022/02/Tariq-461x462-1-130x130.png' srcset='https://assets.codeguru.com/uploads/2022/02/Tariq-461x462-1-260x260.png 2x' class='avatar avatar-130 photo' height='130' width='130' loading='lazy' decoding='async'/></noscript></a><div class="tdb-author-info"><a href="https://www.codeguru.com/author/tariqsiddiqui/" class="tdb-author-name">Tariq Siddiqui</a><div class="tdb-author-descr">A graduate in MS Computer Applications and a Web Developer from India with diverse skills across multiple Web development technologies. Enjoys writing about any tech topic, including programming, algorithms and cloud computing. Traveling and playing video games are the hobbies that interest me most.</div><div class="tdb-author-social"></div></div></div></div></div></div></div><div class="vc_column_inner tdi_67 wpb_column vc_column_container tdc-inner-column td-pb-span9"> <style scoped>.tdi_67{vertical-align:baseline}.tdi_67 .vc_column-inner>.wpb_wrapper,.tdi_67 .vc_column-inner>.wpb_wrapper .tdc-elements{display:block}.tdi_67 .vc_column-inner>.wpb_wrapper .tdc-elements{width:100%}</style><div class="vc_column-inner"><div class="wpb_wrapper" ><div class="td_block_wrap td_flex_block_1 tdi_68 td-pb-border-top td_block_template_2 td_flex_block" data-td-block-uid="tdi_68" > <style> .td_block_template_2.widget > ul > li { margin-left: 0 !important; } .td_block_template_2 .td-block-title { font-size: 17px; font-weight: 500; margin-top: 0; margin-bottom: 16px; line-height: 31px; text-align: left; } .td_block_template_2 .td-block-title > * { color: var(--td_text_header_color, #000); } .td_block_template_2 .td-related-title a { padding: 0 20px 0 0; } @media (max-width: 767px) { .td_block_template_2 .td-related-title a { font-size: 15px; } } .td_block_template_2 .td-related-title .td-cur-simple-item { color: var(--td_theme_color, #4db2ec); } .td-theme-wrap .tdi_68 .td-block-title > *, .td-theme-wrap .tdi_68 .td-pulldown-filter-link:hover, .td-theme-wrap .tdi_68 .td-subcat-item a:hover, .td-theme-wrap .tdi_68 .td-subcat-item .td-cur-simple-item, .td-theme-wrap .tdi_68 .td-subcat-dropdown:hover .td-subcat-more span, .td-theme-wrap .tdi_68 .td-subcat-dropdown:hover .td-subcat-more i { color: #151948; } .td-theme-wrap .tdi_68 .td-subcat-dropdown ul:after { background-color: #151948; } .td-theme-wrap .tdi_68 .td_module_wrap:hover .entry-title a, .td-theme-wrap .tdi_68 .td_quote_on_blocks, .td-theme-wrap .tdi_68 .td-opacity-cat .td-post-category:hover, .td-theme-wrap .tdi_68 .td-opacity-read .td-read-more a:hover, .td-theme-wrap .tdi_68 .td-opacity-author .td-post-author-name a:hover, .td-theme-wrap .tdi_68 .td-instagram-user a { color: #151948; } .td-theme-wrap .tdi_68 .td-next-prev-wrap a:hover, .td-theme-wrap .tdi_68 .td-load-more-wrap a:hover { background-color: #151948; border-color: #151948; } .td-theme-wrap .tdi_68 .td-read-more a, .td-theme-wrap .tdi_68 .td-weather-information:before, .td-theme-wrap .tdi_68 .td-weather-week:before, .td-theme-wrap .tdi_68 .td-exchange-header:before, .td-theme-wrap .td-footer-wrapper .tdi_68 .td-post-category, .td-theme-wrap .tdi_68 .td-post-category:hover { background-color: #151948; } </style> <style>.tdi_68 .td-image-wrap{padding-bottom:60%}.tdi_68 .entry-thumb{background-position:center 50%}.tdi_68 .td-image-container{flex:0 0 30%;width:30%;display:block;order:0}.ie10 .tdi_68 .td-image-container,.ie11 .tdi_68 .td-image-container{flex:0 0 auto}.tdi_68 .td-module-container{flex-direction:row;padding:0 0 10px 0;border-width:0 0 2px 0;border-style:solid;border-color:#000;border-color:#eaeaea!important}.ie10 .tdi_68 .td-module-meta-info,.ie11 .tdi_68 .td-module-meta-info{flex:1}body .tdi_68 .td-favorite{font-size:36px;box-shadow:1px 1px 4px 0px rgba(0,0,0,0.2)}.tdi_68 .td-module-meta-info{padding:0px;border-color:#eaeaea}.tdi_68 .td_module_wrap{width:50%;float:left;padding-left:10px;padding-right:10px;padding-bottom:9px;margin-bottom:9px}.rtl .tdi_68 .td_module_wrap{float:right}.tdi_68 .td_block_inner{margin-left:-10px;margin-right:-10px}.tdi_68 .td-module-container:before{bottom:-9px;border-color:#eaeaea}.tdi_68 .td-post-vid-time{display:block}.tdi_68 .td-post-category{padding:6px 8px;background-color:#238fee;color:#ffffff;border-color:#ffffff;font-family:brother-xl!important;font-size:14px!important}.tdi_68 .td-post-category:not(.td-post-extra-category){display:none}.tdi_68 .td-author-photo .avatar{width:20px;height:20px;margin-right:6px;border-radius:50%}.tdi_68 .td-excerpt{display:none;margin:0px;column-count:1;column-gap:48px}.tdi_68 .td-audio-player{opacity:1;visibility:visible;height:auto;font-size:13px}.tdi_68 .td-author-date{display:inline}.tdi_68 .entry-review-stars{display:inline-block}.tdi_68 .td-icon-star,.tdi_68 .td-icon-star-empty,.tdi_68 .td-icon-star-half{font-size:15px}.tdi_68 .td-module-comments{display:none}.tdi_68 .td_module_wrap:nth-child(2n+1){clear:both}.tdi_68 .td_module_wrap:nth-last-child(-n+2){margin-bottom:0;padding-bottom:0}.tdi_68 .td_module_wrap:nth-last-child(-n+2) .td-module-container:before{display:none}.tdi_68 .td-module-thumb a:after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:-webkit-linear-gradient(90deg,rgba(38,189,233,0.29),rgba(0,126,237,0.26));background:linear-gradient(90deg,rgba(38,189,233,0.29),rgba(0,126,237,0.26))}.tdi_68 .td-post-category:hover{background-color:#f2f2f2!important;color:#238fee;border-color:#ffffff}.tdi_68 .td-module-title a{color:#151948;box-shadow:inset 0 0 0 0 #238fee}.tdi_68 .td_module_wrap:hover .td-module-title a{color:#151948!important;box-shadow:inset 0 -2px 0 0 #238fee}.tdi_68 .td-post-author-name a{color:#238fee}.tdi_68 .td-post-author-name:hover a{color:#b361e0}.tdi_68 .td-post-date,.tdi_68 .td-post-author-name span{color:#a5a5a5}.tdi_68.td_with_ajax_pagination .td-next-prev-wrap a,.tdi_68 .td-load-more-wrap a{color:#a5a5a5;background-color:#ffffff;border-color:#dbdbdb;border-width:0px}.tdi_68 .td-load-more-wrap a .td-load-more-icon-svg svg,.tdi_68 .td-load-more-wrap a .td-load-more-icon-svg svg *,.tdi_68.td_with_ajax_pagination .td-next-prev-wrap .td-next-prev-icon-svg svg,.tdi_68.td_with_ajax_pagination .td-next-prev-wrap .td-next-prev-icon-svg svg *{fill:#a5a5a5}.tdi_68.td_with_ajax_pagination .td-next-prev-wrap a:hover,.tdi_68 .td-load-more-wrap a:hover{color:#ffffff;background-color:#238fee!important;border-color:#238fee!important;border-color:#f2f2f2!important}.tdi_68 .td-load-more-wrap a:hover .td-load-more-icon-svg svg,.tdi_68 .td-load-more-wrap a:hover .td-load-more-icon-svg svg *,.tdi_68.td_with_ajax_pagination .td-next-prev-wrap a:hover .td-next-prev-icon-svg svg,.tdi_68.td_with_ajax_pagination .td-next-prev-wrap a:hover .td-next-prev-icon-svg svg *{fill:#ffffff}.tdi_68 .entry-title{margin:0 0 5px 0;font-family:brother-xl!important;font-size:17px!important;line-height:1.2!important;font-weight:700!important}.tdi_68 .td-read-more{margin:15px 0 0 0}.tdi_68 .td-read-more a{border-width:2px;border-style:solid;border-color:#000;background-color:#238fee!important;color:#ffffff;border-color:#ffffff!important;font-family:brother-xl!important;font-size:12px!important;font-weight:700!important}.tdi_68 .td-read-more:hover a{background-color:#ffffff!important;color:#a5a5a5;border-color:#dbdbdb!important}.tdi_68.td_with_ajax_pagination .td-next-prev-wrap,.tdi_68 .td-load-more-wrap{margin-top:0px}.tdi_68 .td-block-title a,.tdi_68 .td-block-title span{font-family:brother-xl!important;font-size:30px!important;font-weight:700!important;text-transform:capitalize!important}.tdi_68 .td-subcat-list a,.tdi_68 .td-subcat-dropdown span,.tdi_68 .td-subcat-dropdown a{font-family:brother-xl!important}.tdi_68 .td-editor-date,.tdi_68 .td-editor-date .td-post-author-name a,.tdi_68 .td-editor-date .entry-date,.tdi_68 .td-module-comments a{font-family:Rubik!important;font-size:14px!important;font-weight:400!important}.tdi_68 .td-load-more-wrap a{font-family:brother-xl!important}html:not([class*='ie']) .tdi_68 .td-module-container:hover .entry-thumb:before{opacity:0}html:not([class*='ie']) .tdi_68 .entry-thumb{filter:brightness(1) contrast(1) saturate(1);transition:all 1s ease;-webkit-transition:all 1s ease}@media (min-width:768px){.tdi_68 .td-module-title a{transition:all 0.2s ease;-webkit-transition:all 0.2s ease}}@media (min-width:1141px){html:not([class*='ie']) .tdi_68 .td-module-container:hover .entry-thumb{filter:brightness(0.7) contrast(0.7) saturate(1)}}@media (min-width:1019px) and (max-width:1140px){.tdi_68 .td_module_wrap{padding-bottom:9px;margin-bottom:9px;clear:none!important;padding-bottom:9px!important;margin-bottom:9px!important}.tdi_68 .td-module-container:before{bottom:-9px}.tdi_68 .td_module_wrap:nth-child(2n+1){clear:both!important}.tdi_68 .td_module_wrap:nth-last-child(-n+2){margin-bottom:0!important;padding-bottom:0!important}.tdi_68 .td_module_wrap .td-module-container:before{display:block!important}.tdi_68 .td_module_wrap:nth-last-child(-n+2) .td-module-container:before{display:none!important}.tdi_68 .td-module-title a{box-shadow:inset 0 0 0 0 #238fee}.tdi_68 .td_module_wrap:hover .td-module-title a{box-shadow:inset 0 -2px 0 0 #238fee}.tdi_68 .entry-title{font-size:14px!important}@media (min-width:768px){.tdi_68 .td-module-title a{transition:all 0.2s ease;-webkit-transition:all 0.2s ease}}}@media (min-width:768px) and (max-width:1018px){.tdi_68 .td-image-wrap{padding-bottom:90%}.tdi_68 .td-module-meta-info{padding:0 0 0 10px}.tdi_68 .td_module_wrap{padding-bottom:8px;margin-bottom:8px;clear:none!important;padding-bottom:8px!important;margin-bottom:8px!important}.tdi_68 .td-module-container:before{bottom:-8px}.tdi_68 .td_module_wrap:nth-child(2n+1){clear:both!important}.tdi_68 .td_module_wrap:nth-last-child(-n+2){margin-bottom:0!important;padding-bottom:0!important}.tdi_68 .td_module_wrap .td-module-container:before{display:block!important}.tdi_68 .td_module_wrap:nth-last-child(-n+2) .td-module-container:before{display:none!important}.tdi_68 .td-module-title a{box-shadow:inset 0 0 0 0 #238fee}.tdi_68 .td_module_wrap:hover .td-module-title a{box-shadow:inset 0 -2px 0 0 #238fee}.tdi_68 .entry-title{font-size:12px!important}@media (min-width:768px){.tdi_68 .td-module-title a{transition:all 0.2s ease;-webkit-transition:all 0.2s ease}}}@media (max-width:767px){.tdi_68 .td-module-meta-info{padding:0px 5px 5px 15px}.tdi_68 .td_module_wrap{width:100%;float:left;padding-bottom:9px;margin-bottom:9px;padding-bottom:9px!important;margin-bottom:9px!important}.rtl .tdi_68 .td_module_wrap{float:right}.tdi_68 .td-module-container:before{bottom:-9px}.tdi_68 .td_module_wrap:nth-last-child(1){margin-bottom:0!important;padding-bottom:0!important}.tdi_68 .td_module_wrap .td-module-container:before{display:block!important}.tdi_68 .td_module_wrap:nth-last-child(1) .td-module-container:before{display:none!important}.tdi_68 .td-module-title a{box-shadow:inset 0 0 0 0 #238fee}.tdi_68 .td_module_wrap:hover .td-module-title a{box-shadow:inset 0 -2px 0 0 #238fee}.tdi_68 .entry-title{font-size:15px!important}@media (min-width:768px){.tdi_68 .td-module-title a{transition:all 0.2s ease;-webkit-transition:all 0.2s ease}}}</style><script data-src="data:text/javascript;base64,dmFyIGJsb2NrX3RkaV82OCA9IG5ldyB0ZEJsb2NrKCk7CmJsb2NrX3RkaV82OC5pZCA9ICJ0ZGlfNjgiOwpibG9ja190ZGlfNjguYXR0cyA9ICd7ImZfaGVhZGVyX2ZvbnRfdHJhbnNmb3JtIjoiY2FwaXRhbGl6ZSIsImFqYXhfcGFnaW5hdGlvbiI6IiIsImNhdGVnb3J5X2lkIjoiX21vcmVfYXV0aG9yIiwic29ydCI6IiIsImFsbF9tb2R1bGVzX3NwYWNlIjoiZXlKd2IzSjBjbUZwZENJNklqRTJJaXdpWVd4c0lqb2lNVGdpZlE9PSIsImltYWdlX2Zsb2F0ZWQiOiJmbG9hdF9sZWZ0IiwiaW1hZ2Vfd2lkdGgiOiIzMCIsImltYWdlX2hlaWdodCI6ImV5SmhiR3dpT2lJMk1DVWlMQ0p3YjNKMGNtRnBkQ0k2SWprd0luMD0iLCJtZXRhX3BhZGRpbmciOiJleUp3YjNKMGNtRnBkQ0k2SWpBZ01DQXdJREV3Y0hnaUxDSndhRzl1WlNJNklqQndlQ0ExY0hnZ05YQjRJREUxY0hnaUxDSmhiR3dpT2lJd0luMD0iLCJzaG93X2V4Y2VycHQiOiJub25lIiwic2hvd19idG4iOiIiLCJzaG93X2NvbSI6Im5vbmUiLCJzaG93X2RhdGUiOiIiLCJzaG93X2F1dGhvciI6IiIsImJsb2NrX3RlbXBsYXRlX2lkIjoidGRfYmxvY2tfdGVtcGxhdGVfMiIsImZfdGl0bGVfZm9udF9zaXplIjoiZXlKd2IzSjBjbUZwZENJNklqRXlJaXdpYkdGdVpITmpZWEJsSWpvaU1UUWlMQ0p3YUc5dVpTSTZJakUxSWl3aVlXeHNJam9pTVRjaWZRPT0iLCJmX3RpdGxlX2ZvbnRfbGluZV9oZWlnaHQiOiIxLjIiLCJmX3RpdGxlX2ZvbnRfd2VpZ2h0IjoiNzAwIiwiZl9oZWFkZXJfZm9udF9mYW1pbHkiOiJ0a18xIiwiZl9oZWFkZXJfZm9udF93ZWlnaHQiOiI3MDAiLCJmX3RpdGxlX2ZvbnRfZmFtaWx5IjoidGtfMSIsInNob3dfY2F0IjoiZXlKc1lXNWtjMk5oY0dVaU9pSnViMjVsSWl3aWNHOXlkSEpoYVhRaU9pSnViMjVsSWl3aWNHaHZibVVpT2lKdWIyNWxJaXdpWVd4c0lqb2libTl1WlNKOSIsIm1jMV9lbCI6IjEwIiwibW9kdWxlc19nYXAiOiIyMCIsIm1vZHVsZXNfY2F0ZWdvcnkiOiIiLCJtb2R1bGVzX2NhdGVnb3J5X3BhZGRpbmciOiI2cHggOHB4IiwiYXJ0X2V4Y2VycHQiOiIwIiwicGFnX2JvcmRlcl93aWR0aCI6IjAiLCJwcmV2X3RkaWNvbiI6InRkLWljb24tbGluZWUiLCJmX2FqYXhfZm9udF9mYW1pbHkiOiJ0a18xIiwiZl9tb3JlX2ZvbnRfZmFtaWx5IjoidGtfMSIsImZfY2F0X2ZvbnRfZmFtaWx5IjoidGtfMSIsImZfbWV0YV9mb250X2ZhbWlseSI6IjcxMiIsImZfbWV0YV9mb250X3dlaWdodCI6IjQwMCIsImZfbWV0YV9mb250X3NpemUiOiIxNCIsImZfY2F0X2ZvbnRfc2l6ZSI6IjE0IiwiZmVfYnJpZ2h0bmVzc19oIjoiMC43IiwiZmVfY29udHJhc3RfaCI6IjAuNyIsImNvbG9yX292ZXJsYXkiOiJleUowZVhCbElqb2laM0poWkdsbGJuUWlMQ0pqYjJ4dmNqRWlPaUp5WjJKaEtEQXNNVEkyTERJek55d3dMakkyS1NJc0ltTnZiRzl5TWlJNkluSm5ZbUVvTXpnc01UZzVMREl6TXl3d0xqSTVLU0lzSW0xcGVHVmtRMjlzYjNKeklqcGJYU3dpWkdWbmNtVmxJam9pT1RBaUxDSmpjM01pT2lKaVlXTnJaM0p2ZFc1a09pQXRkMlZpYTJsMExXeHBibVZoY2kxbmNtRmthV1Z1ZENnNU1HUmxaeXh5WjJKaEtETTRMREU0T1N3eU16TXNNQzR5T1Nrc2NtZGlZU2d3TERFeU5pd3lNemNzTUM0eU5pa3BPMkpoWTJ0bmNtOTFibVE2SUd4cGJtVmhjaTFuY21Ga2FXVnVkQ2c1TUdSbFp5eHlaMkpoS0RNNExERTRPU3d5TXpNc01DNHlPU2tzY21kaVlTZ3dMREV5Tml3eU16Y3NNQzR5TmlrcE95SXNJbU56YzFCaGNtRnRjeUk2SWprd1pHVm5MSEpuWW1Fb016Z3NNVGc1TERJek15d3dMakk1S1N4eVoySmhLREFzTVRJMkxESXpOeXd3TGpJMktTSjkiLCJ0aXRsZV90eHQiOiIjMTUxOTQ4IiwidGl0bGVfdHh0X2hvdmVyIjoiIzE1MTk0OCIsImFsbF91bmRlcmxpbmVfaGVpZ2h0IjoiMiIsImFsbF91bmRlcmxpbmVfY29sb3IiOiIjMjM4ZmVlIiwiY2F0X2JnIjoiIzIzOGZlZSIsImNhdF9iZ19ob3ZlciI6IiNmMmYyZjIiLCJjYXRfdHh0X2hvdmVyIjoiIzIzOGZlZSIsImNhdF90eHQiOiIjZmZmZmZmIiwiY2F0X2JvcmRlciI6IiNmZmZmZmYiLCJjYXRfYm9yZGVyX2hvdmVyIjoiI2ZmZmZmZiIsImF1dGhvcl90eHQiOiIjMjM4ZmVlIiwiYXV0aG9yX3R4dF9ob3ZlciI6IiNiMzYxZTAiLCJkYXRlX3R4dCI6IiNhNWE1YTUiLCJwYWdfdGV4dCI6IiNhNWE1YTUiLCJwYWdfaF90ZXh0IjoiI2ZmZmZmZiIsInBhZ19iZyI6IiNmZmZmZmYiLCJwYWdfaF9iZyI6IiMyMzhmZWUiLCJwYWdfaF9ib3JkZXIiOiIjZjJmMmYyIiwicGFnX2JvcmRlciI6IiNkYmRiZGIiLCJoZWFkZXJfdGV4dF9jb2xvciI6IiMxNTE5NDgiLCJoaWRlX2ltYWdlIjoieWVzIiwicGFnX3NwYWNlIjoiMCIsImZfaGVhZGVyX2ZvbnRfc2l6ZSI6IjMwIiwibGltaXQiOiI0IiwibWMxX3RsIjoiMjAiLCJhcnRfYnRuIjoiMTVweCAwIDAgMCIsImFydF90aXRsZSI6IjAgMCA1cHggMCIsIm1vZHVsZXNfYm9yZGVyX3NpemUiOiIwIDAgMnB4IDAiLCJtX3BhZGRpbmciOiIwIDAgMTBweCAwIiwiYnRuX2JnIjoiIzIzOGZlZSIsImJ0bl9iZ19ob3ZlciI6IiNmZmZmZmYiLCJidG5fdHh0X2hvdmVyIjoiI2E1YTVhNSIsImJ0bl9ib3JkZXJfaG92ZXIiOiIjZGJkYmRiIiwiYnRuX3R4dCI6IiNmZmZmZmYiLCJidG5fYm9yZGVyIjoiI2ZmZmZmZiIsImZfYnRuX2ZvbnRfc2l6ZSI6IjEyIiwiZl9idG5fZm9udF93ZWlnaHQiOiI3MDAiLCJmX2J0bl9mb250X2ZhbWlseSI6InRrXzEiLCJidG5fYm9yZGVyX3dpZHRoIjoiMiIsIm1vZHVsZXNfb25fcm93IjoiZXlKaGJHd2lPaUkxTUNVaUxDSndhRzl1WlNJNklqRXdNQ1VpZlE9PSIsImN1c3RvbV90aXRsZSI6Ik1vcmUgYnkgQXV0aG9yIiwiYmxvY2tfdHlwZSI6InRkX2ZsZXhfYmxvY2tfMSIsInNlcGFyYXRvciI6IiIsImN1c3RvbV91cmwiOiIiLCJ0aXRsZV90YWciOiIiLCJtYzFfdGl0bGVfdGFnIjoiIiwicG9zdF9pZHMiOiItMTkzNDEiLCJ0YXhvbm9taWVzIjoiIiwiY2F0ZWdvcnlfaWRzIjoiIiwiaW5fYWxsX3Rlcm1zIjoiIiwidGFnX3NsdWciOiIiLCJhdXRvcnNfaWQiOiIiLCJpbnN0YWxsZWRfcG9zdF90eXBlcyI6IiIsImluY2x1ZGVfY2ZfcG9zdHMiOiIiLCJleGNsdWRlX2NmX3Bvc3RzIjoiIiwicG9wdWxhcl9ieV9kYXRlIjoiIiwibGlua2VkX3Bvc3RzIjoiIiwiZmF2b3VyaXRlX29ubHkiOiIiLCJvZmZzZXQiOiIiLCJvcGVuX2luX25ld193aW5kb3ciOiIiLCJzaG93X21vZGlmaWVkX2RhdGUiOiIiLCJ0aW1lX2FnbyI6IiIsInRpbWVfYWdvX2FkZF90eHQiOiJhZ28iLCJ0aW1lX2Fnb190eHRfcG9zIjoiIiwicmV2aWV3X3NvdXJjZSI6IiIsImVsX2NsYXNzIjoiIiwidGRfcXVlcnlfY2FjaGUiOiIiLCJ0ZF9xdWVyeV9jYWNoZV9leHBpcmF0aW9uIjoiIiwidGRfYWpheF9maWx0ZXJfdHlwZSI6IiIsInRkX2FqYXhfZmlsdGVyX2lkcyI6IiIsInRkX2ZpbHRlcl9kZWZhdWx0X3R4dCI6IkFsbCIsInRkX2FqYXhfcHJlbG9hZGluZyI6IiIsImNvbnRhaW5lcl93aWR0aCI6IiIsIm1vZHVsZXNfYm9yZGVyX3N0eWxlIjoiIiwibW9kdWxlc19ib3JkZXJfY29sb3IiOiIjZWFlYWVhIiwibW9kdWxlc19ib3JkZXJfcmFkaXVzIjoiIiwibW9kdWxlc19kaXZpZGVyIjoiIiwibW9kdWxlc19kaXZpZGVyX2NvbG9yIjoiI2VhZWFlYSIsImhfZWZmZWN0IjoiIiwiaW1hZ2Vfc2l6ZSI6IiIsImltYWdlX2FsaWdubWVudCI6IjUwIiwiaW1hZ2VfcmFkaXVzIjoiIiwic2hvd19mYXZvdXJpdGVzIjoiIiwiZmF2X3NpemUiOiIyIiwiZmF2X3NwYWNlIjoiIiwiZmF2X2ljb19jb2xvciI6IiIsImZhdl9pY29fY29sb3JfaCI6IiIsImZhdl9iZyI6IiIsImZhdl9iZ19oIjoiIiwiZmF2X3NoYWRvd19zaGFkb3dfaGVhZGVyIjoiIiwiZmF2X3NoYWRvd19zaGFkb3dfdGl0bGUiOiJTaGFkb3ciLCJmYXZfc2hhZG93X3NoYWRvd19zaXplIjoiIiwiZmF2X3NoYWRvd19zaGFkb3dfb2Zmc2V0X2hvcml6b250YWwiOiIiLCJmYXZfc2hhZG93X3NoYWRvd19vZmZzZXRfdmVydGljYWwiOiIiLCJmYXZfc2hhZG93X3NoYWRvd19zcHJlYWQiOiIiLCJmYXZfc2hhZG93X3NoYWRvd19jb2xvciI6IiIsInZpZGVvX2ljb24iOiIiLCJ2aWRlb19wb3B1cCI6InllcyIsInZpZGVvX3JlYyI6IiIsInNwb3RfaGVhZGVyIjoiIiwidmlkZW9fcmVjX3RpdGxlIjoiIiwidmlkZW9fcmVjX2NvbG9yIjoiIiwidmlkZW9fcmVjX2Rpc2FibGUiOiIiLCJhdXRvcGxheV92aWQiOiJ5ZXMiLCJzaG93X3ZpZF90IjoiYmxvY2siLCJ2aWRfdF9tYXJnaW4iOiIiLCJ2aWRfdF9wYWRkaW5nIjoiIiwidmlkZW9fdGl0bGVfY29sb3IiOiIiLCJ2aWRlb190aXRsZV9jb2xvcl9oIjoiIiwidmlkZW9fYmciOiIiLCJ2aWRlb19vdmVybGF5IjoiIiwidmlkX3RfY29sb3IiOiIiLCJ2aWRfdF9iZ19jb2xvciI6IiIsImZfdmlkX3RpdGxlX2ZvbnRfaGVhZGVyIjoiIiwiZl92aWRfdGl0bGVfZm9udF90aXRsZSI6IlZpZGVvIHBvcC11cCBhcnRpY2xlIHRpdGxlIiwiZl92aWRfdGl0bGVfZm9udF9zZXR0aW5ncyI6IiIsImZfdmlkX3RpdGxlX2ZvbnRfZmFtaWx5IjoiIiwiZl92aWRfdGl0bGVfZm9udF9zaXplIjoiIiwiZl92aWRfdGl0bGVfZm9udF9saW5lX2hlaWdodCI6IiIsImZfdmlkX3RpdGxlX2ZvbnRfc3R5bGUiOiIiLCJmX3ZpZF90aXRsZV9mb250X3dlaWdodCI6IiIsImZfdmlkX3RpdGxlX2ZvbnRfdHJhbnNmb3JtIjoiIiwiZl92aWRfdGl0bGVfZm9udF9zcGFjaW5nIjoiIiwiZl92aWRfdGl0bGVfIjoiIiwiZl92aWRfdGltZV9mb250X3RpdGxlIjoiVmlkZW8gZHVyYXRpb24gdGV4dCIsImZfdmlkX3RpbWVfZm9udF9zZXR0aW5ncyI6IiIsImZfdmlkX3RpbWVfZm9udF9mYW1pbHkiOiIiLCJmX3ZpZF90aW1lX2ZvbnRfc2l6ZSI6IiIsImZfdmlkX3RpbWVfZm9udF9saW5lX2hlaWdodCI6IiIsImZfdmlkX3RpbWVfZm9udF9zdHlsZSI6IiIsImZfdmlkX3RpbWVfZm9udF93ZWlnaHQiOiIiLCJmX3ZpZF90aW1lX2ZvbnRfdHJhbnNmb3JtIjoiIiwiZl92aWRfdGltZV9mb250X3NwYWNpbmciOiIiLCJmX3ZpZF90aW1lXyI6IiIsIm1ldGFfaW5mb19hbGlnbiI6IiIsIm1ldGFfaW5mb19ob3JpeiI6ImxheW91dC1kZWZhdWx0IiwibWV0YV93aWR0aCI6IiIsIm1ldGFfbWFyZ2luIjoiIiwibWV0YV9zcGFjZSI6IiIsIm1ldGFfaW5mb19ib3JkZXJfc2l6ZSI6IiIsIm1ldGFfaW5mb19ib3JkZXJfc3R5bGUiOiIiLCJtZXRhX2luZm9fYm9yZGVyX2NvbG9yIjoiI2VhZWFlYSIsIm1ldGFfaW5mb19ib3JkZXJfcmFkaXVzIjoiIiwibW9kdWxlc19jYXRlZ29yeV9tYXJnaW4iOiIiLCJtb2R1bGVzX2NhdF9ib3JkZXIiOiIiLCJtb2R1bGVzX2NhdGVnb3J5X3JhZGl1cyI6IjAiLCJtb2R1bGVzX2V4dHJhX2NhdCI6IiIsImF1dGhvcl9waG90byI6IiIsImF1dGhvcl9waG90b19zaXplIjoiIiwiYXV0aG9yX3Bob3RvX3NwYWNlIjoiIiwiYXV0aG9yX3Bob3RvX3JhZGl1cyI6IiIsInNob3dfcmV2aWV3IjoiaW5saW5lLWJsb2NrIiwicmV2aWV3X3NwYWNlIjoiIiwicmV2aWV3X3NpemUiOiIyLjUiLCJyZXZpZXdfZGlzdGFuY2UiOiIiLCJleGNlcnB0X2NvbCI6IjEiLCJleGNlcnB0X2dhcCI6IiIsImV4Y2VycHRfbWlkZGxlIjoiIiwiZXhjZXJwdF9pbmxpbmUiOiIiLCJzaG93X2F1ZGlvIjoiYmxvY2siLCJoaWRlX2F1ZGlvIjoiIiwiYXJ0X2F1ZGlvIjoiIiwiYXJ0X2F1ZGlvX3NpemUiOiIxLjUiLCJidG5fdGl0bGUiOiIiLCJidG5fbWFyZ2luIjoiIiwiYnRuX3BhZGRpbmciOiIiLCJidG5fcmFkaXVzIjoiIiwicGFnX3BhZGRpbmciOiIiLCJwYWdfYm9yZGVyX3JhZGl1cyI6IiIsIm5leHRfdGRpY29uIjoiIiwicGFnX2ljb25zX3NpemUiOiIiLCJmX2hlYWRlcl9mb250X2hlYWRlciI6IiIsImZfaGVhZGVyX2ZvbnRfdGl0bGUiOiJCbG9jayBoZWFkZXIiLCJmX2hlYWRlcl9mb250X3NldHRpbmdzIjoiIiwiZl9oZWFkZXJfZm9udF9saW5lX2hlaWdodCI6IiIsImZfaGVhZGVyX2ZvbnRfc3R5bGUiOiIiLCJmX2hlYWRlcl9mb250X3NwYWNpbmciOiIiLCJmX2hlYWRlcl8iOiIiLCJmX2FqYXhfZm9udF90aXRsZSI6IkFqYXggY2F0ZWdvcmllcyIsImZfYWpheF9mb250X3NldHRpbmdzIjoiIiwiZl9hamF4X2ZvbnRfc2l6ZSI6IiIsImZfYWpheF9mb250X2xpbmVfaGVpZ2h0IjoiIiwiZl9hamF4X2ZvbnRfc3R5bGUiOiIiLCJmX2FqYXhfZm9udF93ZWlnaHQiOiIiLCJmX2FqYXhfZm9udF90cmFuc2Zvcm0iOiIiLCJmX2FqYXhfZm9udF9zcGFjaW5nIjoiIiwiZl9hamF4XyI6IiIsImZfbW9yZV9mb250X3RpdGxlIjoiTG9hZCBtb3JlIGJ1dHRvbiIsImZfbW9yZV9mb250X3NldHRpbmdzIjoiIiwiZl9tb3JlX2ZvbnRfc2l6ZSI6IiIsImZfbW9yZV9mb250X2xpbmVfaGVpZ2h0IjoiIiwiZl9tb3JlX2ZvbnRfc3R5bGUiOiIiLCJmX21vcmVfZm9udF93ZWlnaHQiOiIiLCJmX21vcmVfZm9udF90cmFuc2Zvcm0iOiIiLCJmX21vcmVfZm9udF9zcGFjaW5nIjoiIiwiZl9tb3JlXyI6IiIsImZfdGl0bGVfZm9udF9oZWFkZXIiOiIiLCJmX3RpdGxlX2ZvbnRfdGl0bGUiOiJBcnRpY2xlIHRpdGxlIiwiZl90aXRsZV9mb250X3NldHRpbmdzIjoiIiwiZl90aXRsZV9mb250X3N0eWxlIjoiIiwiZl90aXRsZV9mb250X3RyYW5zZm9ybSI6IiIsImZfdGl0bGVfZm9udF9zcGFjaW5nIjoiIiwiZl90aXRsZV8iOiIiLCJmX2NhdF9mb250X3RpdGxlIjoiQXJ0aWNsZSBjYXRlZ29yeSB0YWciLCJmX2NhdF9mb250X3NldHRpbmdzIjoiIiwiZl9jYXRfZm9udF9saW5lX2hlaWdodCI6IiIsImZfY2F0X2ZvbnRfc3R5bGUiOiIiLCJmX2NhdF9mb250X3dlaWdodCI6IiIsImZfY2F0X2ZvbnRfdHJhbnNmb3JtIjoiIiwiZl9jYXRfZm9udF9zcGFjaW5nIjoiIiwiZl9jYXRfIjoiIiwiZl9tZXRhX2ZvbnRfdGl0bGUiOiJBcnRpY2xlIG1ldGEgaW5mbyIsImZfbWV0YV9mb250X3NldHRpbmdzIjoiIiwiZl9tZXRhX2ZvbnRfbGluZV9oZWlnaHQiOiIiLCJmX21ldGFfZm9udF9zdHlsZSI6IiIsImZfbWV0YV9mb250X3RyYW5zZm9ybSI6IiIsImZfbWV0YV9mb250X3NwYWNpbmciOiIiLCJmX21ldGFfIjoiIiwiZl9leF9mb250X3RpdGxlIjoiQXJ0aWNsZSBleGNlcnB0IiwiZl9leF9mb250X3NldHRpbmdzIjoiIiwiZl9leF9mb250X2ZhbWlseSI6IiIsImZfZXhfZm9udF9zaXplIjoiIiwiZl9leF9mb250X2xpbmVfaGVpZ2h0IjoiIiwiZl9leF9mb250X3N0eWxlIjoiIiwiZl9leF9mb250X3dlaWdodCI6IiIsImZfZXhfZm9udF90cmFuc2Zvcm0iOiIiLCJmX2V4X2ZvbnRfc3BhY2luZyI6IiIsImZfZXhfIjoiIiwiZl9idG5fZm9udF90aXRsZSI6IkFydGljbGUgcmVhZCBtb3JlIGJ1dHRvbiIsImZfYnRuX2ZvbnRfc2V0dGluZ3MiOiIiLCJmX2J0bl9mb250X2xpbmVfaGVpZ2h0IjoiIiwiZl9idG5fZm9udF9zdHlsZSI6IiIsImZfYnRuX2ZvbnRfdHJhbnNmb3JtIjoiIiwiZl9idG5fZm9udF9zcGFjaW5nIjoiIiwiZl9idG5fIjoiIiwibWl4X2NvbG9yIjoiIiwibWl4X3R5cGUiOiIiLCJmZV9icmlnaHRuZXNzIjoiMSIsImZlX2NvbnRyYXN0IjoiMSIsImZlX3NhdHVyYXRlIjoiMSIsIm1peF9jb2xvcl9oIjoiIiwibWl4X3R5cGVfaCI6IiIsImZlX3NhdHVyYXRlX2giOiIxIiwibV9iZyI6IiIsInNoYWRvd19zaGFkb3dfaGVhZGVyIjoiIiwic2hhZG93X3NoYWRvd190aXRsZSI6Ik1vZHVsZSBTaGFkb3ciLCJzaGFkb3dfc2hhZG93X3NpemUiOiIiLCJzaGFkb3dfc2hhZG93X29mZnNldF9ob3Jpem9udGFsIjoiIiwic2hhZG93X3NoYWRvd19vZmZzZXRfdmVydGljYWwiOiIiLCJzaGFkb3dfc2hhZG93X3NwcmVhZCI6IiIsInNoYWRvd19zaGFkb3dfY29sb3IiOiIiLCJjYXRfc3R5bGUiOiIiLCJtZXRhX2JnIjoiIiwiZXhfdHh0IjoiIiwiY29tX2JnIjoiIiwiY29tX3R4dCI6IiIsInJldl90eHQiOiIiLCJhdWRpb19idG5fY29sb3IiOiIiLCJhdWRpb190aW1lX2NvbG9yIjoiIiwiYXVkaW9fYmFyX2NvbG9yIjoiIiwiYXVkaW9fYmFyX2N1cnJfY29sb3IiOiIiLCJzaGFkb3dfbV9zaGFkb3dfaGVhZGVyIjoiIiwic2hhZG93X21fc2hhZG93X3RpdGxlIjoiTWV0YSBpbmZvIHNoYWRvdyIsInNoYWRvd19tX3NoYWRvd19zaXplIjoiIiwic2hhZG93X21fc2hhZG93X29mZnNldF9ob3Jpem9udGFsIjoiIiwic2hhZG93X21fc2hhZG93X29mZnNldF92ZXJ0aWNhbCI6IiIsInNoYWRvd19tX3NoYWRvd19zcHJlYWQiOiIiLCJzaGFkb3dfbV9zaGFkb3dfY29sb3IiOiIiLCJhamF4X3BhZ2luYXRpb25fbmV4dF9wcmV2X3N3aXBlIjoiIiwiYWpheF9wYWdpbmF0aW9uX2luZmluaXRlX3N0b3AiOiIiLCJjc3MiOiIiLCJ0ZGNfY3NzIjoiIiwidGRfY29sdW1uX251bWJlciI6MSwiaGVhZGVyX2NvbG9yIjoiIiwiY29sb3JfcHJlc2V0IjoiIiwiYm9yZGVyX3RvcCI6IiIsImNsYXNzIjoidGRpXzY4IiwidGRjX2Nzc19jbGFzcyI6InRkaV82OCIsInRkY19jc3NfY2xhc3Nfc3R5bGUiOiJ0ZGlfNjhfcmFuZF9zdHlsZSIsImxpdmVfZmlsdGVyIjoiY3VyX3Bvc3Rfc2FtZV9hdXRob3IiLCJsaXZlX2ZpbHRlcl9jdXJfcG9zdF9hdXRob3IiOiI4OCJ9JzsKYmxvY2tfdGRpXzY4LnRkX2NvbHVtbl9udW1iZXIgPSAiMSI7CmJsb2NrX3RkaV82OC5ibG9ja190eXBlID0gInRkX2ZsZXhfYmxvY2tfMSI7CmJsb2NrX3RkaV82OC5wb3N0X2NvdW50ID0gIjQiOwpibG9ja190ZGlfNjguZm91bmRfcG9zdHMgPSAiMzciOwpibG9ja190ZGlfNjguaGVhZGVyX2NvbG9yID0gIiI7CmJsb2NrX3RkaV82OC5hamF4X3BhZ2luYXRpb25faW5maW5pdGVfc3RvcCA9ICIiOwpibG9ja190ZGlfNjgubWF4X251bV9wYWdlcyA9ICIxMCI7CnRkQmxvY2tzQXJyYXkucHVzaChibG9ja190ZGlfNjgpOwo=" data-type="lazy"></script><div class="td-block-title-wrap"><h4 class="td-block-title"><span class="td-pulldown-size">More by Author</span></h4></div><div id=tdi_68 class="td_block_inner td-mc1-wrap"> <div class="td_module_flex td_module_flex_1 td_module_wrap td-animation-stack td-cpt-post"> <div class="td-module-container td-category-pos-"> <div class="td-module-meta-info"> <h3 class="entry-title td-module-title"><a href="https://www.codeguru.com/dotnet/jit-compiler-dot-net/" rel="bookmark" title="Different Types of JIT Compilers in .NET">Different Types of JIT Compilers in .NET</a></h3> <div class="td-editor-date"> <a href="https://www.codeguru.com/dotnet/" class="td-post-category" >.NET</a> <span class="td-author-date"> <span class="td-post-author-name"><a href="https://www.codeguru.com/author/tariqsiddiqui/">Tariq Siddiqui</a> <span>-</span> </span> <span class="td-post-date"><time class="entry-date updated td-module-date" datetime="2023-03-17T02:49:37+00:00" >March 17, 2023</time></span> </span> </div> <div class="td-read-more"> <a href="https://www.codeguru.com/dotnet/jit-compiler-dot-net/" title="Read more" >Read more</a> </div> </div> </div> </div> <div class="td_module_flex td_module_flex_1 td_module_wrap td-animation-stack td-cpt-post"> <div class="td-module-container td-category-pos-"> <div class="td-module-meta-info"> <h3 class="entry-title td-module-title"><a href="https://www.codeguru.com/csharp/asp-net-middleware/" rel="bookmark" title="Middleware in ASP.NET Core">Middleware in ASP.NET Core</a></h3> <div class="td-editor-date"> <a href="https://www.codeguru.com/dotnet/" class="td-post-category" >.NET</a> <span class="td-author-date"> <span class="td-post-author-name"><a href="https://www.codeguru.com/author/tariqsiddiqui/">Tariq Siddiqui</a> <span>-</span> </span> <span class="td-post-date"><time class="entry-date updated td-module-date" datetime="2023-03-16T01:54:15+00:00" >March 16, 2023</time></span> </span> </div> <div class="td-read-more"> <a href="https://www.codeguru.com/csharp/asp-net-middleware/" title="Read more" >Read more</a> </div> </div> </div> </div> <div class="td_module_flex td_module_flex_1 td_module_wrap td-animation-stack td-cpt-post"> <div class="td-module-container td-category-pos-"> <div class="td-module-meta-info"> <h3 class="entry-title td-module-title"><a href="https://www.codeguru.com/csharp/c-sharp-generic-linked-lists/" rel="bookmark" title="Implementing Generic Singly Linked List in C#">Implementing Generic Singly Linked List in C#</a></h3> <div class="td-editor-date"> <a href="https://www.codeguru.com/csharp/" class="td-post-category" >C#</a> <span class="td-author-date"> <span class="td-post-author-name"><a href="https://www.codeguru.com/author/tariqsiddiqui/">Tariq Siddiqui</a> <span>-</span> </span> <span class="td-post-date"><time class="entry-date updated td-module-date" datetime="2023-02-15T00:37:57+00:00" >February 15, 2023</time></span> </span> </div> <div class="td-read-more"> <a href="https://www.codeguru.com/csharp/c-sharp-generic-linked-lists/" title="Read more" >Read more</a> </div> </div> </div> </div> <div class="td_module_flex td_module_flex_1 td_module_wrap td-animation-stack td-cpt-post"> <div class="td-module-container td-category-pos-"> <div class="td-module-meta-info"> <h3 class="entry-title td-module-title"><a href="https://www.codeguru.com/dotnet/linq-query-execution/" rel="bookmark" title="Types of Query Execution in LINQ">Types of Query Execution in LINQ</a></h3> <div class="td-editor-date"> <a href="https://www.codeguru.com/dotnet/" class="td-post-category" >.NET</a> <span class="td-author-date"> <span class="td-post-author-name"><a href="https://www.codeguru.com/author/tariqsiddiqui/">Tariq Siddiqui</a> <span>-</span> </span> <span class="td-post-date"><time class="entry-date updated td-module-date" datetime="2022-12-15T15:14:26+00:00" >December 15, 2022</time></span> </span> </div> <div class="td-read-more"> <a href="https://www.codeguru.com/dotnet/linq-query-execution/" title="Read more" >Read more</a> </div> </div> </div> </div> </div></div></div></div></div></div><div class="td_block_wrap tdb_single_next_prev tdi_69 td-pb-border-top td_block_template_2" data-td-block-uid="tdi_69" > <style>.tdi_69{position:relative}@media (min-width:768px) and (max-width:1018px){.tdi_69{margin-bottom:40px!important}}@media (max-width:767px){.tdi_69{margin-bottom:40px!important}}</style> <style>.tdb_single_next_prev{*zoom:1}.tdb_single_next_prev:before,.tdb_single_next_prev:after{display:table;content:'';line-height:0}.tdb_single_next_prev:after{clear:both}.tdb-next-post{font-family:var(--td_default_google_font_2,'Roboto',sans-serif);width:48%;float:left;transform:translateZ(0);-webkit-transform:translateZ(0);min-height:1px;line-height:1}.tdb-next-post span{display:block;font-size:12px;color:#747474;margin-bottom:7px}.tdb-next-post a{font-size:15px;color:#222;line-height:21px;-webkit-transition:color 0.2s ease;transition:color 0.2s ease}.tdb-next-post a:hover{color:var(--td_theme_color,#4db2ec)}.tdb-post-next{margin-left:2%;text-align:right}.tdb-post-prev{margin-right:2%}.tdb-post-next .td-image-container{display:inline-block}.tdi_69 .td-module-container{display:flex;flex-direction:column}.tdi_69 .tdb-post-next .td-module-container{align-items:flex-end}.tdi_69 .td-image-container{display:block;order:0}.ie10 .tdi_69 .next-prev-title,.ie11 .tdi_69 .next-prev-title{flex:auto}.tdi_69 .tdb-next-post{padding:20px}.tdi_69 .tdb-next-post a{color:#ffffff;font-family:brother-xl!important;font-size:18px!important;line-height:1.2!important;font-weight:700!important}.tdi_69 .tdb-next-post:hover a{color:#080a19;box-shadow:inset 0 -2px 0 0 #ffffff}.tdi_69 .tdb-next-post span{color:#ffffff;font-family:Rubik!important;font-size:14px!important;font-weight:400!important}.tdi_69 .td-module-title a{box-shadow:inset 0 0 0 0 #ffffff}@media (min-width:768px){.tdi_69 .td-module-title a{transition:all 0.2s ease;-webkit-transition:all 0.2s ease}}@media (min-width:1019px) and (max-width:1140px){.tdi_69 .td-module-title a{box-shadow:inset 0 0 0 0 #ffffff}.tdi_69 .tdb-next-post:hover a{box-shadow:inset 0 -2px 0 0 #ffffff}@media (min-width:768px){.tdi_69 .td-module-title a{transition:all 0.2s ease;-webkit-transition:all 0.2s ease}}}@media (min-width:768px) and (max-width:1018px){.tdi_69 .td-module-title a{box-shadow:inset 0 0 0 0 #ffffff}.tdi_69 .tdb-next-post:hover a{box-shadow:inset 0 -2px 0 0 #ffffff}.tdi_69 .tdb-next-post a{font-size:14px!important}@media (min-width:768px){.tdi_69 .td-module-title a{transition:all 0.2s ease;-webkit-transition:all 0.2s ease}}}@media (max-width:767px){.tdi_69 .td-module-title a{box-shadow:inset 0 0 0 0 #ffffff}.tdi_69 .tdb-next-post:hover a{box-shadow:inset 0 -2px 0 0 #ffffff}.tdi_69 .tdb-next-post a{font-size:12px!important}@media (min-width:768px){.tdi_69 .td-module-title a{transition:all 0.2s ease;-webkit-transition:all 0.2s ease}}}</style> <div class="tdi_69_rand_style td-element-style"><style> .tdi_69_rand_style::after { content:'' !important; width:100% !important; height:100% !important; position:absolute !important; top:0 !important; left:0 !important; z-index:0 !important; display:block !important; background: linear-gradient(90deg,#238fee, #2fc8c0) !important; } </style></div><div class="tdb-block-inner td-fix-index"><div class="tdb-next-post tdb-next-post-bg tdb-post-prev"><span>Previous article</span><div class="td-module-container"><div class="next-prev-title"><a href="https://www.codeguru.com/cplusplus/video-game-development-courses/">Online Courses to Learn Video Game Development</a></div></div></div><div class="tdb-next-post tdb-next-post-bg tdb-post-next"><span>Next article</span><div class="td-module-container"><div class="next-prev-title"><a href="https://www.codeguru.com/tools/version-control-systems/">Top 10 Version Control Systems</a></div></div></div></div></div><div class="td_block_wrap tdb_single_related tdi_70 td_with_ajax_pagination td-pb-border-top td_block_template_3 tdb-single-related-posts" data-td-block-uid="tdi_70" > <style>.td-block-title-wrap .td-wrapper-pulldown-filter{font-family:var(--td_default_google_font_2,'Roboto',sans-serif);position:absolute;bottom:0;right:0;top:0;margin:auto 0;z-index:2;background-color:#fff;font-size:13px;line-height:1;color:#777;text-align:right}.td-block-title-wrap .td-wrapper-pulldown-filter .td-pulldown-filter-display-option{cursor:pointer;white-space:nowrap;position:relative;line-height:29px}.td-block-title-wrap .td-wrapper-pulldown-filter .td-pulldown-filter-display-option i{font-size:9px;color:#777;margin-left:20px;margin-right:10px}.td-block-title-wrap .td-wrapper-pulldown-filter .td-pulldown-filter-display-option i:before{content:'\e83d'}.td-block-title-wrap .td-wrapper-pulldown-filter .td-pulldown-filter-display-option span{padding-left:20px;margin-right:-14px}@media (max-width:360px){.td-block-title-wrap .td-wrapper-pulldown-filter .td-pulldown-filter-display-option span{display:none}}.td-block-title-wrap .td-pulldown-filter-display-option:hover,.td-block-title-wrap .td-pulldown-filter-display-option:hover i{color:#4db2ec}.td-block-title-wrap .td-wrapper-pulldown-filter .td-pulldown-filter-display-option:hover ul{display:block}.td-block-title-wrap .td-wrapper-pulldown-filter .td-pulldown-filter-list{list-style:none;position:absolute;right:0;top:100%;padding:18px 0;background-color:rgb(255,255,255);background-color:rgba(255,255,255,0.95);z-index:999;border-width:1px;border-color:#ededed;border-style:solid;display:none;margin:0}.td-block-title-wrap .td-wrapper-pulldown-filter .td-pulldown-filter-item{list-style:none;margin:0}.td-block-title-wrap .td-pulldown-filter-item .td-cur-simple-item{color:#4db2ec}.td-block-title-wrap .td-wrapper-pulldown-filter .td-pulldown-more{padding-bottom:10px}.td-block-title-wrap .td-wrapper-pulldown-filter .td-pulldown-more:before{content:'';width:70px;height:100%;position:absolute;margin-top:2px;top:0;right:0;z-index:1;opacity:0}.td-block-title-wrap .td-wrapper-pulldown-filter .td-pulldown-filter-link{color:#777;white-space:nowrap;display:block;line-height:26px;padding-left:36px;padding-right:27px}.td-block-title-wrap .td-pulldown-filter-link:hover{color:#4db2ec}@media (min-width:768px) and (max-width:1018px){.td-pb-span4 .td-block-title-wrap .td-wrapper-pulldown-filter .td-pulldown-filter-display-option span{display:none}.td-pb-span4 .td-block-title-wrap .td-wrapper-pulldown-filter .td-pulldown-filter-link{padding-left:24px;padding-right:20px!important}}.td-pulldown-syle-3{top:0}.td-pulldown-syle-3 .td-subcat-dropdown ul{padding:15px 0;margin-top:-1px;border-width:1px}.td-pulldown-syle-3 .td-subcat-dropdown a{padding-left:40px;padding-right:31px}.td-pulldown-syle-3 .td-subcat-dropdown:hover .td-subcat-more{background-color:transparent!important}.td-pulldown-syle-3 .td-subcat-dropdown:hover span,.td-pulldown-syle-3 .td-subcat-dropdown:hover i{color:#4db2ec}.td-pulldown-syle-3 .td-subcat-dropdown .td-subcat-more{margin-left:9px;margin-bottom:8px}.td-pulldown-syle-3 .td-subcat-list .td-subcat-item{margin-left:24px}.td_block_template_3 .td-block-title{font-size:16px;font-weight:400;margin-top:0;margin-bottom:26px;line-height:31px;text-align:left}.td_block_template_3 .td-block-title>*{background-color:var(--td_header_color,#000);color:var(--td_text_header_color,#fff);padding:0 10px}.td_block_template_3 .td-related-title a{margin-right:10px}@media (max-width:767px){.td_block_template_3 .td-related-title a{margin-right:0;font-size:14px}}.td_block_template_3 .td-related-title .td-cur-simple-item{background-color:var(--td_theme_color,#4db2ec)}@-moz-document url-prefix(){.td_block_template_3 .td-block-title>*{padding-bottom:2px}}.td-theme-wrap .tdi_70 .td-pulldown-filter-link:hover,.td-theme-wrap .tdi_70 .td-subcat-item a:hover,.td-theme-wrap .tdi_70 .td-subcat-item .td-cur-simple-item,.td-theme-wrap .tdi_70 .td-subcat-dropdown:hover .td-subcat-more span,.td-theme-wrap .tdi_70 .td-subcat-dropdown:hover .td-subcat-more i{color:rgba(219,219,219,0)}.td-theme-wrap .tdi_70 .td-block-title>*{background-color:rgba(219,219,219,0)}.td-theme-wrap .tdi_70 .td-block-title>*{color:#151948}.td-theme-wrap .tdi_70 .td_module_wrap:hover .entry-title a,.td-theme-wrap .tdi_70 .td_quote_on_blocks,.td-theme-wrap .tdi_70 .td-opacity-cat .td-post-category:hover,.td-theme-wrap .tdi_70 .td-opacity-read .td-read-more a:hover,.td-theme-wrap .tdi_70 .td-opacity-author .td-post-author-name a:hover,.td-theme-wrap .tdi_70 .td-instagram-user a{color:rgba(219,219,219,0)}.td-theme-wrap .tdi_70 .td-next-prev-wrap a:hover,.td-theme-wrap .tdi_70 .td-load-more-wrap a:hover{background-color:rgba(219,219,219,0);border-color:rgba(219,219,219,0)}.td-theme-wrap .tdi_70 .td-read-more a,.td-theme-wrap .tdi_70 .td-weather-information:before,.td-theme-wrap .tdi_70 .td-weather-week:before,.td-theme-wrap .tdi_70 .td-exchange-header:before,.td-theme-wrap .td-footer-wrapper .tdi_70 .td-post-category,.td-theme-wrap .tdi_70 .td-post-category:hover{background-color:rgba(219,219,219,0)}@media (max-width:767px){.tdi_70{margin-bottom:40px!important}}</style> <style>.tdb-single-related-posts{display:inline-block;width:100%;padding-bottom:0;overflow:visible}.tdb-single-related-posts .tdb-block-inner:after,.tdb-single-related-posts .tdb-block-inner .td_module_wrap:after{content:'';display:table;clear:both}.tdb-single-related-posts .td-module-container{display:flex;flex-direction:column;position:relative}.tdb-single-related-posts .td-module-container:before{content:'';position:absolute;bottom:0;left:0;width:100%;height:1px}.tdb-single-related-posts .td-image-wrap{display:block;position:relative;padding-bottom:70%}.tdb-single-related-posts .td-image-container{position:relative;flex:0 0 100%;width:100%;height:100%}.tdb-single-related-posts .td-module-thumb{margin-bottom:0}.tdb-single-related-posts .td-module-meta-info{padding:7px 0 0 0;margin-bottom:0;z-index:1;border:0 solid #eaeaea}.tdb-single-related-posts .tdb-author-photo{display:inline-block}.tdb-single-related-posts .tdb-author-photo,.tdb-single-related-posts .tdb-author-photo img{vertical-align:middle}.tdb-single-related-posts .td-post-author-name,.tdb-single-related-posts .td-post-date,.tdb-single-related-posts .td-module-comments{vertical-align:text-top}.tdb-single-related-posts .entry-review-stars{margin-left:6px;vertical-align:text-bottom}.tdb-single-related-posts .td-author-photo{display:inline-block;vertical-align:middle}.tdb-single-related-posts .td-thumb-css{width:100%;height:100%;position:absolute;background-size:cover;background-position:center center}.tdb-single-related-posts .td-category-pos-image .td-post-category,.tdb-single-related-posts .td-post-vid-time{position:absolute;z-index:2;bottom:0}.tdb-single-related-posts .td-category-pos-image .td-post-category{left:0}.tdb-single-related-posts .td-post-vid-time{right:0;background-color:#000;padding:3px 6px 4px;font-family:var(--td_default_google_font_1,'Open Sans','Open Sans Regular',sans-serif);font-size:10px;font-weight:600;line-height:1;color:#fff}.tdb-single-related-posts .td-module-title{font-family:var(--td_default_google_font_2,'Roboto',sans-serif);font-weight:500;font-size:13px;line-height:20px;margin:0}.tdb-single-related-posts .td-excerpt{margin:20px 0 0;line-height:21px}.tdb-single-related-posts .td-read-more,.tdb-single-related-posts .td-next-prev-wrap{margin:20px 0 0}.tdb-single-related-posts div.tdb-block-inner:after{content:''!important;padding:0;border:none}.tdb-single-related-posts .td-next-prev-wrap a{width:auto;height:auto;min-width:25px;min-height:25px}.single-tdb_templates .tdb-single-related-posts .td-next-prev-wrap a:active{pointer-events:none}.tdb-dummy-data{position:absolute;top:50%;left:50%;transform:translate(-50%);padding:8px 40px 9px;background:rgba(0,0,0,0.35);color:#fff;z-index:100;opacity:0;-webkit-transition:opacity 0.2s;transition:opacity 0.2s}.tdc-element:hover .tdb-dummy-data{opacity:1}.tdi_70 .td-image-wrap{padding-bottom:60%}.tdi_70 .entry-thumb{background-position:center 50%}.tdi_70 .td-module-container{flex-direction:column;border-color:#eaeaea;flex-grow:1}.tdi_70 .td-image-container{display:block;order:0;flex:0 0 0}.tdi_70 .td-module-meta-info{padding:12px 0 0 0;border-color:#eaeaea}.tdi_70 .td-module-title a{box-shadow:inset 0 0 0 0 #238fee;color:#151948}.tdi_70 .td-module-container:hover .td-module-title a{box-shadow:inset 0 -2px 0 0 #238fee}.tdi_70 .td_module_wrap{width:33.33333333%;float:left;padding-left:20px;padding-right:20px;padding-bottom:5px;margin-bottom:5px;display:flex}.tdi_70 .tdb-block-inner{margin-left:-20px;margin-right:-20px}.tdi_70 .td-module-container:before{bottom:-5px;border-color:#eaeaea}.tdi_70 .td-post-vid-time{display:block}.tdi_70 .td-post-category{padding:6px 8px;background-color:#238fee;color:#ffffff;font-family:brother-xl!important;font-size:14px!important;font-weight:700!important}.tdi_70 .td-author-photo .avatar{width:20px;height:20px;margin-right:6px;border-radius:50%}.tdi_70 .td-excerpt{display:none;column-count:1;column-gap:48px;font-family:Rubik!important}.tdi_70 .td-audio-player{opacity:1;visibility:visible;height:auto;font-size:13px}.tdi_70 .td-read-more{display:none}.tdi_70 .td-module-comments{display:none}.tdi_70 .td_module_wrap:nth-child(3n+1){clear:both}.tdi_70 .td_module_wrap:nth-last-child(-n+3){margin-bottom:0;padding-bottom:0}.tdi_70 .td_module_wrap:nth-last-child(-n+3) .td-module-container:before{display:none}.tdi_70 .td-module-thumb a:after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:-webkit-linear-gradient(90deg,rgba(38,189,233,0.29),rgba(0,126,237,0.26));background:linear-gradient(90deg,rgba(38,189,233,0.29),rgba(0,126,237,0.26))}.tdi_70 .td-post-category:hover{background-color:#f2f2f2!important;color:#238fee}.tdi_70 .td_module_wrap:hover .td-module-title a{color:#151948!important}.tdi_70 .td-post-author-name a{color:#238fee}.tdi_70 .td-post-author-name:hover a{color:#b361e0}.tdi_70 .td-post-date,.tdi_70 .td-post-author-name span{color:#a5a5a5}.tdi_70.td_with_ajax_pagination .td-next-prev-wrap a{color:#a5a5a5;background-color:#ffffff;border-color:#ffffff;border-color:#dbdbdb;padding:6px 6px 4px 7px;border-width:2px;font-size:24px}.tdi_70.td_with_ajax_pagination .td-next-prev-wrap .td-next-prev-icon-svg svg,.tdi_70.td_with_ajax_pagination .td-next-prev-wrap .td-next-prev-icon-svg svg *{fill:#a5a5a5}.tdi_70.td_with_ajax_pagination .td-next-prev-wrap a:hover{color:#ffffff;background-color:#238fee;border-color:#238fee;border-color:#f2f2f2}.tdi_70.td_with_ajax_pagination .td-next-prev-wrap a:hover .td-next-prev-icon-svg svg,.tdi_70.td_with_ajax_pagination .td-next-prev-wrap a:hover .td-next-prev-icon-svg svg *{fill:#ffffff}.tdi_70 .entry-title{margin:0 0 3px 0;font-family:brother-xl!important;font-size:17px!important;line-height:1.3!important;font-weight:700!important}.tdi_70.td_with_ajax_pagination .td-next-prev-wrap{margin-top:35px}.tdi_70.td_with_ajax_pagination .td-next-prev-wrap .td-next-prev-icon-svg svg{width:24px;height:calc(24px + 1px)}.tdi_70 .block-title a,.tdi_70 .block-title span,.tdi_70 .td-block-title a,.tdi_70 .td-block-title span{font-family:brother-xl!important;font-size:30px!important;font-weight:700!important}.tdi_70 .td-editor-date,.tdi_70 .td-editor-date .entry-date,.tdi_70 .td-post-author-name a,.tdi_70 .td-module-comments a{font-family:Rubik!important;font-size:14px!important;font-weight:400!important}.tdi_70 .td-post-author-name{font-weight:400}.tdi_70 .td_block_inner{display:flex;flex-wrap:wrap}html:not([class*='ie']) .tdi_70 .td-module-container:hover .entry-thumb:before{opacity:0}@media (max-width:767px){.tdb-single-related-posts .td-module-title{font-size:17px;line-height:23px}}@media (min-width:768px){.tdi_70 .td-module-title a{transition:all 0.2s ease;-webkit-transition:all 0.2s ease}}@media (min-width:1019px) and (max-width:1140px){.tdi_70 .td-module-title a{box-shadow:inset 0 0 0 0 #238fee}.tdi_70 .td-module-container:hover .td-module-title a{box-shadow:inset 0 -2px 0 0 #238fee}.tdi_70 .td_module_wrap{padding-bottom:5px;margin-bottom:5px;clear:none!important;padding-bottom:5px!important;margin-bottom:5px!important}.tdi_70 .td-module-container:before{bottom:-5px}.tdi_70 .td_module_wrap:nth-child(3n+1){clear:both!important}.tdi_70 .td_module_wrap:nth-last-child(-n+3){margin-bottom:0!important;padding-bottom:0!important}.tdi_70 .td_module_wrap .td-module-container:before{display:block!important}.tdi_70 .td_module_wrap:nth-last-child(-n+3) .td-module-container:before{display:none!important}.tdi_70 .entry-title{font-size:20px!important}@media (min-width:768px){.tdi_70 .td-module-title a{transition:all 0.2s ease;-webkit-transition:all 0.2s ease}}}@media (min-width:768px) and (max-width:1018px){.tdi_70 .td-module-title a{box-shadow:inset 0 0 0 0 #238fee}.tdi_70 .td-module-container:hover .td-module-title a{box-shadow:inset 0 -2px 0 0 #238fee}.tdi_70 .td_module_wrap{padding-bottom:5px;margin-bottom:5px;clear:none!important;padding-bottom:5px!important;margin-bottom:5px!important}.tdi_70 .td-module-container:before{bottom:-5px}.tdi_70 .td_module_wrap:nth-child(3n+1){clear:both!important}.tdi_70 .td_module_wrap:nth-last-child(-n+3){margin-bottom:0!important;padding-bottom:0!important}.tdi_70 .td_module_wrap .td-module-container:before{display:block!important}.tdi_70 .td_module_wrap:nth-last-child(-n+3) .td-module-container:before{display:none!important}.tdi_70 .entry-title{font-size:14px!important}@media (min-width:768px){.tdi_70 .td-module-title a{transition:all 0.2s ease;-webkit-transition:all 0.2s ease}}}@media (max-width:767px){.tdi_70 .td-image-container{flex:0 0 30%;width:30%;display:block;order:0}.tdi_70 .td-module-container{flex-direction:row}.tdi_70 .td-module-meta-info{padding:0px 5px 5px 15px}.tdi_70 .td-module-title a{box-shadow:inset 0 0 0 0 #238fee}.tdi_70 .td-module-container:hover .td-module-title a{box-shadow:inset 0 -2px 0 0 #238fee}.tdi_70 .td_module_wrap{width:100%;float:left;padding-bottom:5px;margin-bottom:5px;padding-bottom:5px!important;margin-bottom:5px!important}.tdi_70 .td-module-container:before{bottom:-5px}.tdi_70 .td-post-category{display:none}.tdi_70 .td_module_wrap:nth-last-child(1){margin-bottom:0!important;padding-bottom:0!important}.tdi_70 .td_module_wrap .td-module-container:before{display:block!important}.tdi_70 .td_module_wrap:nth-last-child(1) .td-module-container:before{display:none!important}.tdi_70 .entry-title{font-size:15px!important}@media (min-width:768px){.tdi_70 .td-module-title a{transition:all 0.2s ease;-webkit-transition:all 0.2s ease}}}</style><script data-src="data:text/javascript;base64,dmFyIGJsb2NrX3RkaV83MCA9IG5ldyB0ZEJsb2NrKCk7CmJsb2NrX3RkaV83MC5pZCA9ICJ0ZGlfNzAiOwpibG9ja190ZGlfNzAuYXR0cyA9ICd7Im1vZHVsZXNfb25fcm93IjoiZXlKaGJHd2lPaUl6TXk0ek16TXpNek16TXlVaUxDSndhRzl1WlNJNklqRXdNQ1VpZlE9PSIsIm1vZHVsZXNfY2F0ZWdvcnkiOiJpbWFnZSIsInNob3dfYXV0aG9yIjoiIiwic2hvd19kYXRlIjoiIiwic2hvd19jb20iOiJub25lIiwic2hvd19leGNlcnB0Ijoibm9uZSIsInNob3dfYnRuIjoibm9uZSIsImFqYXhfcGFnaW5hdGlvbiI6Im5leHRfcHJldiIsInJlbGF0ZWRfYXJ0aWNsZXNfcG9zdHNfbGltaXQiOiIzIiwiaW1hZ2Vfd2lkdGgiOiJleUp3YUc5dVpTSTZJak13SW4wPSIsImltYWdlX2Zsb2F0ZWQiOiJleUp3YUc5dVpTSTZJbVpzYjJGMFgyeGxablFpZlE9PSIsIm1ldGFfcGFkZGluZyI6ImV5SndhRzl1WlNJNklqQndlQ0ExY0hnZ05YQjRJREUxY0hnaUxDSmhiR3dpT2lJeE1uQjRJREFnTUNBd0luMD0iLCJibG9ja190ZW1wbGF0ZV9pZCI6InRkX2Jsb2NrX3RlbXBsYXRlXzMiLCJmX3RpdGxlX2ZvbnRfc2l6ZSI6ImV5SmhiR3dpT2lJeE55SXNJbkJvYjI1bElqb2lNVFVpTENKc1lXNWtjMk5oY0dVaU9pSXlNQ0lzSW5CdmNuUnlZV2wwSWpvaU1UUWlmUT09IiwiZl90aXRsZV9mb250X2xpbmVfaGVpZ2h0IjoiMS4zIiwibW9kdWxlc19nYXAiOiIiLCJhbGxfbW9kdWxlc19zcGFjZSI6IjEwIiwiZl90aXRsZV9mb250X3dlaWdodCI6IjcwMCIsInRkY19jc3MiOiJleUp3YUc5dVpTSTZleUp0WVhKbmFXNHRZbTkwZEc5dElqb2lOREFpTENKa2FYTndiR0Y1SWpvaUluMHNJbkJvYjI1bFgyMWhlRjkzYVdSMGFDSTZOelkzZlE9PSIsImZfdGl0bGVfZm9udF9mYW1pbHkiOiJ0a18xIiwiZl9oZWFkZXJfZm9udF9mYW1pbHkiOiJ0a18xIiwiZl9oZWFkZXJfZm9udF93ZWlnaHQiOiI3MDAiLCJzaG93X2NhdCI6ImV5SndhRzl1WlNJNkltNXZibVVpZlE9PSIsImN1c3RvbV90aXRsZSI6Ik5ld3MgJmFtcDsgVHJlbmRzIiwiaGVhZGVyX3RleHRfY29sb3IiOiIjMTUxOTQ4IiwibWMxX2VsIjoiMTUiLCJuZXh0cHJldiI6InllcyIsImltYWdlX2hlaWdodCI6IjYwJSIsInBhZ19zcGFjZSI6IjM1IiwicGFnX3BhZGRpbmciOiI2cHggNnB4IDRweCA3cHgiLCJwYWdfYm9yZGVyX3dpZHRoIjoiMiIsInBhZ19pY29uc19zaXplIjoiMjQiLCJwcmV2X3RkaWNvbiI6InRkLWljb24tbGluZWUiLCJuZXh0X3RkaWNvbiI6InRkLWljb24tcGx1c3MiLCJmX2hlYWRlcl9mb250X3NpemUiOiIzMCIsImhlYWRlcl9jb2xvciI6InJnYmEoMjE5LDIxOSwyMTksMCkiLCJtb2R1bGVzX2NhdGVnb3J5X3BhZGRpbmciOiI2cHggOHB4IiwiZl9jYXRfZm9udF9mYW1pbHkiOiJ0a18xIiwiZl9tZXRhX2ZvbnRfZmFtaWx5IjoiNzEyIiwiZl9leF9mb250X2ZhbWlseSI6IjcxMiIsImZfY2F0X2ZvbnRfc2l6ZSI6IjE0IiwiZl9tZXRhX2ZvbnRfc2l6ZSI6IjE0IiwiZl9tZXRhX2ZvbnRfd2VpZ2h0IjoiNDAwIiwiZl9jYXRfZm9udF93ZWlnaHQiOiI3MDAiLCJ0aXRsZV90eHQiOiIjMTUxOTQ4IiwidGl0bGVfdHh0X2hvdmVyIjoiIzE1MTk0OCIsImFsbF91bmRlcmxpbmVfaGVpZ2h0IjoiMiIsImFsbF91bmRlcmxpbmVfY29sb3IiOiIjMjM4ZmVlIiwiY2F0X2JnIjoiIzIzOGZlZSIsImNhdF9iZ19ob3ZlciI6IiNmMmYyZjIiLCJjYXRfdHh0IjoiI2ZmZmZmZiIsImNhdF90eHRfaG92ZXIiOiIjMjM4ZmVlIiwiYXV0aG9yX3R4dCI6IiMyMzhmZWUiLCJhdXRob3JfdHh0X2hvdmVyIjoiI2IzNjFlMCIsImRhdGVfdHh0IjoiI2E1YTVhNSIsImFydF90aXRsZSI6IjAgMCAzcHggMCIsImNvbG9yX292ZXJsYXkiOiJleUowZVhCbElqb2laM0poWkdsbGJuUWlMQ0pqYjJ4dmNqRWlPaUp5WjJKaEtEQXNNVEkyTERJek55d3dMakkyS1NJc0ltTnZiRzl5TWlJNkluSm5ZbUVvTXpnc01UZzVMREl6TXl3d0xqSTVLU0lzSW0xcGVHVmtRMjlzYjNKeklqcGJYU3dpWkdWbmNtVmxJam9pT1RBaUxDSmpjM01pT2lKaVlXTnJaM0p2ZFc1a09pQXRkMlZpYTJsMExXeHBibVZoY2kxbmNtRmthV1Z1ZENnNU1HUmxaeXh5WjJKaEtETTRMREU0T1N3eU16TXNNQzR5T1Nrc2NtZGlZU2d3TERFeU5pd3lNemNzTUM0eU5pa3BPMkpoWTJ0bmNtOTFibVE2SUd4cGJtVmhjaTFuY21Ga2FXVnVkQ2c1TUdSbFp5eHlaMkpoS0RNNExERTRPU3d5TXpNc01DNHlPU2tzY21kaVlTZ3dMREV5Tml3eU16Y3NNQzR5TmlrcE95SXNJbU56YzFCaGNtRnRjeUk2SWprd1pHVm5MSEpuWW1Fb016Z3NNVGc1TERJek15d3dMakk1S1N4eVoySmhLREFzTVRJMkxESXpOeXd3TGpJMktTSjkiLCJuZXh0cHJldl9pY29uIjoiI2E1YTVhNSIsIm5leHRwcmV2X2ljb25faCI6IiNmZmZmZmYiLCJuZXh0cHJldl9iZyI6IiNmZmZmZmYiLCJuZXh0cHJldl9iZ19oIjoiIzIzOGZlZSIsIm5leHRwcmV2X2JvcmRlciI6IiNkYmRiZGIiLCJuZXh0cHJldl9ib3JkZXJfaCI6IiNmMmYyZjIiLCJsaW1pdCI6IjMiLCJvZmZzZXQiOiIiLCJsaXZlX2ZpbHRlciI6ImN1cl9wb3N0X3NhbWVfY2F0ZWdvcmllcyIsInRkX2FqYXhfZmlsdGVyX3R5cGUiOiJ0ZF9jdXN0b21fcmVsYXRlZCIsImxpdmVfZmlsdGVyX2N1cl9wb3N0X2lkIjoxOTM0MSwic2FtcGxlX3Bvc3RzX2RhdGEiOmZhbHNlLCJibG9ja190eXBlIjoidGRiX3NpbmdsZV9yZWxhdGVkIiwic2VwYXJhdG9yIjoiIiwidGl0bGVfdGFnIjoiIiwibWMxX3RsIjoiIiwibWMxX3RpdGxlX3RhZyI6IiIsInJlbGF0ZWRfYXJ0aWNsZXNfdHlwZSI6IiIsInJlbGF0ZWRfYXJ0aWNsZXNfcG9zdHNfb2Zmc2V0IjoiIiwiY29udGFpbmVyX3dpZHRoIjoiIiwibV9wYWRkaW5nIjoiIiwibW9kdWxlc19ib3JkZXJfc2l6ZSI6IiIsIm1vZHVsZXNfYm9yZGVyX3N0eWxlIjoiIiwibW9kdWxlc19ib3JkZXJfY29sb3IiOiIjZWFlYWVhIiwibW9kdWxlc19kaXZpZGVyIjoiIiwiZGl2aWRlcl9vbiI6IiIsIm1vZHVsZXNfZGl2aWRlcl9jb2xvciI6IiNlYWVhZWEiLCJzaGFkb3dfc2hhZG93X2hlYWRlciI6IiIsInNoYWRvd19zaGFkb3dfdGl0bGUiOiJTaGFkb3ciLCJzaGFkb3dfc2hhZG93X3NpemUiOiIiLCJzaGFkb3dfc2hhZG93X29mZnNldF9ob3Jpem9udGFsIjoiIiwic2hhZG93X3NoYWRvd19vZmZzZXRfdmVydGljYWwiOiIiLCJzaGFkb3dfc2hhZG93X3NwcmVhZCI6IiIsInNoYWRvd19zaGFkb3dfY29sb3IiOiIiLCJoX2VmZmVjdCI6IiIsImltYWdlX3NpemUiOiIiLCJpbWFnZV9hbGlnbm1lbnQiOiI1MCIsImltYWdlX3JhZGl1cyI6IiIsImhpZGVfaW1hZ2UiOiIiLCJ2aWRlb19pY29uIjoiIiwidmlkZW9fcG9wdXAiOiJ5ZXMiLCJ2aWRlb19yZWMiOiIiLCJzcG90X2hlYWRlciI6IiIsInZpZGVvX3JlY190aXRsZSI6Ii0gQWR2ZXJ0aXNlbWVudCAtIiwidmlkZW9fcmVjX2NvbG9yIjoiIiwidmlkZW9fcmVjX2Rpc2FibGUiOiIiLCJzaG93X3ZpZF90IjoiYmxvY2siLCJ2aWRfdF9tYXJnaW4iOiIiLCJ2aWRfdF9wYWRkaW5nIjoiIiwidmlkZW9fdGl0bGVfY29sb3IiOiIiLCJ2aWRlb190aXRsZV9jb2xvcl9oIjoiIiwidmlkZW9fYmciOiIiLCJ2aWRlb19vdmVybGF5IjoiIiwidmlkX3RfY29sb3IiOiIiLCJ2aWRfdF9iZ19jb2xvciI6IiIsImZfdmlkX3RpdGxlX2ZvbnRfaGVhZGVyIjoiIiwiZl92aWRfdGl0bGVfZm9udF90aXRsZSI6IlZpZGVvIHBvcC11cCBhcnRpY2xlIHRpdGxlIiwiZl92aWRfdGl0bGVfZm9udF9zZXR0aW5ncyI6IiIsImZfdmlkX3RpdGxlX2ZvbnRfZmFtaWx5IjoiIiwiZl92aWRfdGl0bGVfZm9udF9zaXplIjoiIiwiZl92aWRfdGl0bGVfZm9udF9saW5lX2hlaWdodCI6IiIsImZfdmlkX3RpdGxlX2ZvbnRfc3R5bGUiOiIiLCJmX3ZpZF90aXRsZV9mb250X3dlaWdodCI6IiIsImZfdmlkX3RpdGxlX2ZvbnRfdHJhbnNmb3JtIjoiIiwiZl92aWRfdGl0bGVfZm9udF9zcGFjaW5nIjoiIiwiZl92aWRfdGl0bGVfIjoiIiwiZl92aWRfdGltZV9mb250X3RpdGxlIjoiVmlkZW8gZHVyYXRpb24gdGV4dCIsImZfdmlkX3RpbWVfZm9udF9zZXR0aW5ncyI6IiIsImZfdmlkX3RpbWVfZm9udF9mYW1pbHkiOiIiLCJmX3ZpZF90aW1lX2ZvbnRfc2l6ZSI6IiIsImZfdmlkX3RpbWVfZm9udF9saW5lX2hlaWdodCI6IiIsImZfdmlkX3RpbWVfZm9udF9zdHlsZSI6IiIsImZfdmlkX3RpbWVfZm9udF93ZWlnaHQiOiIiLCJmX3ZpZF90aW1lX2ZvbnRfdHJhbnNmb3JtIjoiIiwiZl92aWRfdGltZV9mb250X3NwYWNpbmciOiIiLCJmX3ZpZF90aW1lXyI6IiIsIm1ldGFfaW5mb19hbGlnbiI6IiIsIm1ldGFfaW5mb19ob3JpeiI6ImNvbnRlbnQtaG9yaXotbGVmdCIsIm1ldGFfd2lkdGgiOiIiLCJtZXRhX21hcmdpbiI6IiIsImFydF9leGNlcnB0IjoiIiwiZXhjZXJwdF9jb2wiOiIxIiwiZXhjZXJwdF9nYXAiOiIiLCJhcnRfYXVkaW8iOiIiLCJhcnRfYXVkaW9fc2l6ZSI6IjEuNSIsImFydF9idG4iOiIiLCJtZXRhX2luZm9fYm9yZGVyX3NpemUiOiIiLCJtZXRhX2luZm9fYm9yZGVyX3N0eWxlIjoiIiwibWV0YV9pbmZvX2JvcmRlcl9jb2xvciI6IiNlYWVhZWEiLCJtb2R1bGVzX2NhdGVnb3J5X3NwYWNpbmciOiIiLCJtb2R1bGVzX2NhdF9ib3JkZXIiOiIiLCJtb2R1bGVzX2NhdGVnb3J5X3JhZGl1cyI6IjAiLCJhdXRob3JfcGhvdG8iOiIiLCJhdXRob3JfcGhvdG9fc2l6ZSI6IiIsImF1dGhvcl9waG90b19zcGFjZSI6IiIsImF1dGhvcl9waG90b19yYWRpdXMiOiIiLCJzaG93X21vZGlmaWVkX2RhdGUiOiIiLCJ0aW1lX2FnbyI6IiIsInRpbWVfYWdvX2FkZF90eHQiOiJhZ28iLCJ0aW1lX2Fnb190eHRfcG9zIjoiIiwiZXhjZXJwdF9taWRkbGUiOiIiLCJleGNlcnB0X2lubGluZSI6IiIsInNob3dfYXVkaW8iOiJibG9jayIsImhpZGVfYXVkaW8iOiIiLCJtZXRhX3NwYWNlIjoiIiwiYnRuX3RpdGxlIjoiIiwiYnRuX21hcmdpbiI6IiIsImJ0bl9wYWRkaW5nIjoiIiwiYnRuX2JvcmRlcl93aWR0aCI6IiIsImJ0bl9yYWRpdXMiOiIiLCJwYWdfYm9yZGVyX3JhZGl1cyI6IiIsImZfaGVhZGVyX2ZvbnRfaGVhZGVyIjoiIiwiZl9oZWFkZXJfZm9udF90aXRsZSI6IkJsb2NrIGhlYWRlciIsImZfaGVhZGVyX2ZvbnRfc2V0dGluZ3MiOiIiLCJmX2hlYWRlcl9mb250X2xpbmVfaGVpZ2h0IjoiIiwiZl9oZWFkZXJfZm9udF9zdHlsZSI6IiIsImZfaGVhZGVyX2ZvbnRfdHJhbnNmb3JtIjoiIiwiZl9oZWFkZXJfZm9udF9zcGFjaW5nIjoiIiwiZl9oZWFkZXJfIjoiIiwiZl9hamF4X2ZvbnRfdGl0bGUiOiJBamF4IGNhdGVnb3JpZXMiLCJmX2FqYXhfZm9udF9zZXR0aW5ncyI6IiIsImZfYWpheF9mb250X2ZhbWlseSI6IiIsImZfYWpheF9mb250X3NpemUiOiIiLCJmX2FqYXhfZm9udF9saW5lX2hlaWdodCI6IiIsImZfYWpheF9mb250X3N0eWxlIjoiIiwiZl9hamF4X2ZvbnRfd2VpZ2h0IjoiIiwiZl9hamF4X2ZvbnRfdHJhbnNmb3JtIjoiIiwiZl9hamF4X2ZvbnRfc3BhY2luZyI6IiIsImZfYWpheF8iOiIiLCJmX21vcmVfZm9udF90aXRsZSI6IkxvYWQgbW9yZSBidXR0b24iLCJmX21vcmVfZm9udF9zZXR0aW5ncyI6IiIsImZfbW9yZV9mb250X2ZhbWlseSI6IiIsImZfbW9yZV9mb250X3NpemUiOiIiLCJmX21vcmVfZm9udF9saW5lX2hlaWdodCI6IiIsImZfbW9yZV9mb250X3N0eWxlIjoiIiwiZl9tb3JlX2ZvbnRfd2VpZ2h0IjoiIiwiZl9tb3JlX2ZvbnRfdHJhbnNmb3JtIjoiIiwiZl9tb3JlX2ZvbnRfc3BhY2luZyI6IiIsImZfbW9yZV8iOiIiLCJmX3RpdGxlX2ZvbnRfaGVhZGVyIjoiIiwiZl90aXRsZV9mb250X3RpdGxlIjoiQXJ0aWNsZSB0aXRsZSIsImZfdGl0bGVfZm9udF9zZXR0aW5ncyI6IiIsImZfdGl0bGVfZm9udF9zdHlsZSI6IiIsImZfdGl0bGVfZm9udF90cmFuc2Zvcm0iOiIiLCJmX3RpdGxlX2ZvbnRfc3BhY2luZyI6IiIsImZfdGl0bGVfIjoiIiwiZl9jYXRfZm9udF90aXRsZSI6IkFydGljbGUgY2F0ZWdvcnkgdGFnIiwiZl9jYXRfZm9udF9zZXR0aW5ncyI6IiIsImZfY2F0X2ZvbnRfbGluZV9oZWlnaHQiOiIiLCJmX2NhdF9mb250X3N0eWxlIjoiIiwiZl9jYXRfZm9udF90cmFuc2Zvcm0iOiIiLCJmX2NhdF9mb250X3NwYWNpbmciOiIiLCJmX2NhdF8iOiIiLCJmX21ldGFfZm9udF90aXRsZSI6IkFydGljbGUgbWV0YSBpbmZvIiwiZl9tZXRhX2ZvbnRfc2V0dGluZ3MiOiIiLCJmX21ldGFfZm9udF9saW5lX2hlaWdodCI6IiIsImZfbWV0YV9mb250X3N0eWxlIjoiIiwiZl9tZXRhX2ZvbnRfdHJhbnNmb3JtIjoiIiwiZl9tZXRhX2ZvbnRfc3BhY2luZyI6IiIsImZfbWV0YV8iOiIiLCJmX2V4X2ZvbnRfdGl0bGUiOiJBcnRpY2xlIGV4Y2VycHQiLCJmX2V4X2ZvbnRfc2V0dGluZ3MiOiIiLCJmX2V4X2ZvbnRfc2l6ZSI6IiIsImZfZXhfZm9udF9saW5lX2hlaWdodCI6IiIsImZfZXhfZm9udF9zdHlsZSI6IiIsImZfZXhfZm9udF93ZWlnaHQiOiIiLCJmX2V4X2ZvbnRfdHJhbnNmb3JtIjoiIiwiZl9leF9mb250X3NwYWNpbmciOiIiLCJmX2V4XyI6IiIsImZfYnRuX2ZvbnRfdGl0bGUiOiJBcnRpY2xlIHJlYWQgbW9yZSBidXR0b24iLCJmX2J0bl9mb250X3NldHRpbmdzIjoiIiwiZl9idG5fZm9udF9mYW1pbHkiOiIiLCJmX2J0bl9mb250X3NpemUiOiIiLCJmX2J0bl9mb250X2xpbmVfaGVpZ2h0IjoiIiwiZl9idG5fZm9udF9zdHlsZSI6IiIsImZfYnRuX2ZvbnRfd2VpZ2h0IjoiIiwiZl9idG5fZm9udF90cmFuc2Zvcm0iOiIiLCJmX2J0bl9mb250X3NwYWNpbmciOiIiLCJmX2J0bl8iOiIiLCJtaXhfY29sb3IiOiIiLCJtaXhfdHlwZSI6IiIsImZlX2JyaWdodG5lc3MiOiIxIiwiZmVfY29udHJhc3QiOiIxIiwiZmVfc2F0dXJhdGUiOiIxIiwibWl4X2NvbG9yX2giOiIiLCJtaXhfdHlwZV9oIjoiIiwiZmVfYnJpZ2h0bmVzc19oIjoiMSIsImZlX2NvbnRyYXN0X2giOiIxIiwiZmVfc2F0dXJhdGVfaCI6IjEiLCJtX2JnIjoiIiwiY2F0X2JvcmRlciI6IiIsImNhdF9ib3JkZXJfaG92ZXIiOiIiLCJtZXRhX2JnIjoiIiwiZXhfdHh0IjoiIiwiY29tX2JnIjoiIiwiY29tX3R4dCI6IiIsInNoYWRvd19tX3NoYWRvd19oZWFkZXIiOiIiLCJzaGFkb3dfbV9zaGFkb3dfdGl0bGUiOiJNZXRhIGluZm8gc2hhZG93Iiwic2hhZG93X21fc2hhZG93X3NpemUiOiIiLCJzaGFkb3dfbV9zaGFkb3dfb2Zmc2V0X2hvcml6b250YWwiOiIiLCJzaGFkb3dfbV9zaGFkb3dfb2Zmc2V0X3ZlcnRpY2FsIjoiIiwic2hhZG93X21fc2hhZG93X3NwcmVhZCI6IiIsInNoYWRvd19tX3NoYWRvd19jb2xvciI6IiIsImF1ZGlvX2J0bl9jb2xvciI6IiIsImF1ZGlvX3RpbWVfY29sb3IiOiIiLCJhdWRpb19iYXJfY29sb3IiOiIiLCJhdWRpb19iYXJfY3Vycl9jb2xvciI6IiIsImJ0bl9iZyI6IiIsImJ0bl9iZ19ob3ZlciI6IiIsImJ0bl90eHQiOiIiLCJidG5fdHh0X2hvdmVyIjoiIiwiYnRuX2JvcmRlciI6IiIsImJ0bl9ib3JkZXJfaG92ZXIiOiIiLCJlbF9jbGFzcyI6IiIsImxpdmVfZmlsdGVyX2N1cl9wb3N0X2F1dGhvciI6Ijg4IiwidGRfY29sdW1uX251bWJlciI6MiwiYWpheF9wYWdpbmF0aW9uX2luZmluaXRlX3N0b3AiOiIiLCJ0ZF9hamF4X3ByZWxvYWRpbmciOiIiLCJ0ZF9maWx0ZXJfZGVmYXVsdF90eHQiOiIiLCJ0ZF9hamF4X2ZpbHRlcl9pZHMiOiIiLCJjb2xvcl9wcmVzZXQiOiIiLCJhamF4X3BhZ2luYXRpb25fbmV4dF9wcmV2X3N3aXBlIjoiIiwiYm9yZGVyX3RvcCI6IiIsImNzcyI6IiIsImNsYXNzIjoidGRpXzcwIiwidGRjX2Nzc19jbGFzcyI6InRkaV83MCIsInRkY19jc3NfY2xhc3Nfc3R5bGUiOiJ0ZGlfNzBfcmFuZF9zdHlsZSJ9JzsKYmxvY2tfdGRpXzcwLnRkX2NvbHVtbl9udW1iZXIgPSAiMiI7CmJsb2NrX3RkaV83MC5ibG9ja190eXBlID0gInRkYl9zaW5nbGVfcmVsYXRlZCI7CmJsb2NrX3RkaV83MC5wb3N0X2NvdW50ID0gIjMiOwpibG9ja190ZGlfNzAuZm91bmRfcG9zdHMgPSAiMTQ2NSI7CmJsb2NrX3RkaV83MC5oZWFkZXJfY29sb3IgPSAicmdiYSgyMTksMjE5LDIxOSwwKSI7CmJsb2NrX3RkaV83MC5hamF4X3BhZ2luYXRpb25faW5maW5pdGVfc3RvcCA9ICIiOwpibG9ja190ZGlfNzAubWF4X251bV9wYWdlcyA9ICI0ODkiOwp0ZEJsb2Nrc0FycmF5LnB1c2goYmxvY2tfdGRpXzcwKTsK" data-type="lazy"></script><div class="td-block-title-wrap"><h4 class="td-block-title"><span>News & Trends</span></h4></div><div id=tdi_70 class="td_block_inner tdb-block-inner td-fix-index"> <div class="tdb_module_related td_module_wrap td-animation-stack"> <div class="td-module-container td-category-pos-image"> <div class="td-image-container"> <a href="https://www.codeguru.com/dotnet/" class="td-post-category" >.NET</a> <div class="td-module-thumb"><a href="https://www.codeguru.com/dotnet/jit-compiler-dot-net/" rel="bookmark" class="td-image-wrap " title="Different Types of JIT Compilers in .NET" ><span data-bg="https://assets.codeguru.com/uploads/2022/05/c-sharp-tutorial-696x464.jpeg" class="entry-thumb td-thumb-css rocket-lazyload" style="" ></span></a></div> </div> <div class="td-module-meta-info"> <h3 class="entry-title td-module-title"><a href="https://www.codeguru.com/dotnet/jit-compiler-dot-net/" rel="bookmark" title="Different Types of JIT Compilers in .NET">Different Types of JIT Compilers in .NET</a></h3> <div class="td-editor-date"> <span class="td-author-date"> <span class="td-post-author-name"><a href="https://www.codeguru.com/author/tariqsiddiqui/">Tariq Siddiqui</a> <span>-</span> </span> <span class="td-post-date"><time class="entry-date updated td-module-date" datetime="2023-03-17T02:49:37+00:00" >March 17, 2023</time></span> </span> </div> </div> </div> </div> <div class="tdb_module_related td_module_wrap td-animation-stack"> <div class="td-module-container td-category-pos-image"> <div class="td-image-container"> <a href="https://www.codeguru.com/dotnet/" class="td-post-category" >.NET</a> <div class="td-module-thumb"><a href="https://www.codeguru.com/csharp/asp-net-middleware/" rel="bookmark" class="td-image-wrap " title="Middleware in ASP.NET Core" ><span data-bg="https://assets.codeguru.com/uploads/2022/01/c-sharp-tutorials-state-management-696x392.jpg" class="entry-thumb td-thumb-css rocket-lazyload" style="" ></span></a></div> </div> <div class="td-module-meta-info"> <h3 class="entry-title td-module-title"><a href="https://www.codeguru.com/csharp/asp-net-middleware/" rel="bookmark" title="Middleware in ASP.NET Core">Middleware in ASP.NET Core</a></h3> <div class="td-editor-date"> <span class="td-author-date"> <span class="td-post-author-name"><a href="https://www.codeguru.com/author/tariqsiddiqui/">Tariq Siddiqui</a> <span>-</span> </span> <span class="td-post-date"><time class="entry-date updated td-module-date" datetime="2023-03-16T01:54:15+00:00" >March 16, 2023</time></span> </span> </div> </div> </div> </div> <div class="tdb_module_related td_module_wrap td-animation-stack"> <div class="td-module-container td-category-pos-image"> <div class="td-image-container"> <a href="https://www.codeguru.com/dotnet/" class="td-post-category" >.NET</a> <div class="td-module-thumb"><a href="https://www.codeguru.com/dotnet/intel-onedal-ml-net/" rel="bookmark" class="td-image-wrap " title="Intro to Intel oneDAL and ML.NET" ><span data-bg="https://assets.codeguru.com/uploads/2023/01/ml-net-machine-learning-696x696.png" class="entry-thumb td-thumb-css rocket-lazyload" style="" ></span></a></div> </div> <div class="td-module-meta-info"> <h3 class="entry-title td-module-title"><a href="https://www.codeguru.com/dotnet/intel-onedal-ml-net/" rel="bookmark" title="Intro to Intel oneDAL and ML.NET">Intro to Intel oneDAL and ML.NET</a></h3> <div class="td-editor-date"> <span class="td-author-date"> <span class="td-post-author-name"><a href="https://www.codeguru.com/author/hannes-dupreez/">Hannes DuPreez</a> <span>-</span> </span> <span class="td-post-date"><time class="entry-date updated td-module-date" datetime="2023-01-16T22:03:18+00:00" >January 16, 2023</time></span> </span> </div> </div> </div> </div> </div><div class="td-next-prev-wrap"><a href="#" class="td-ajax-prev-page ajax-page-disabled" aria-label="prev-page" id="prev-page-tdi_70" data-td_block_id="tdi_70"><i class="td-next-prev-icon td-icon-linee"></i></a><a href="#" class="td-ajax-next-page" aria-label="next-page" id="next-page-tdi_70" data-td_block_id="tdi_70"><i class="td-next-prev-icon td-icon-pluss"></i></a></div></div></div></div><div class="vc_column tdi_72 wpb_column vc_column_container tdc-column td-pb-span4 td-is-sticky"> <style scoped>.tdi_72{vertical-align:baseline}.tdi_72>.wpb_wrapper,.tdi_72>.wpb_wrapper>.tdc-elements{display:block}.tdi_72>.wpb_wrapper>.tdc-elements{width:100%}.tdi_72>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_72>.wpb_wrapper{width:auto;height:auto}</style><div class="wpb_wrapper" data-sticky-enabled-on="W3RydWUsdHJ1ZSx0cnVlLHRydWVd" data-sticky-offset="20" data-sticky-is-width-auto="W2ZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlXQ=="><div class="wpb_wrapper td_block_wrap td_block_wrap tdb_single_current_post tdi_74 td-pb-border-top td_block_template_2"><div class="td-fix-index"><div class="fit-campaign-container"> <div style=" --ta-campaign-plugin-primary: #238fee; --ta-campaign-plugin-button-text: #fff; --ta-campaign-plugin-button-hover-background: #DBDBDB; --ta-campaign-plugin-button-hover-text: #fff; --ta-campaign-plugin-button-toggle-background: #238fee; --ta-campaign-plugin-button-toggle-text: #DBDBDB; " data-ajax-url="https://www.codeguru.com/wp/wp-admin/admin-ajax.php"> <div id="ta-campaign-widget-6747526b384f5" class="ta-campaign-widget ta-campaign-widget--sidebar" data-campaign-fields='{"properties":{"campaign_type":"sidebar","campaign_category":false,"sailthru_list":["developer-insider"],"appearance":{"colors":{"primary_color":"#238fee","button":{"button_text_color":"#fff","hover":{"button_hover_background_color":"#DBDBDB","button_hover_text_color":"#fff"},"toggle":{"button_toggle_background_color":"#238fee","button_toggle_text_color":"#DBDBDB"}}},"custom_scss":""},"behavior":{"opt_in_enabled":true},"language":{"tagline":"Get the Free Newsletter!","subtagline":"","content":"Subscribe to Developer Insider for top news, trends & analysis","email_placeholder":"Work Email Address","opt_in":"By signing up to receive our newsletter, you agree to our <a href=\"https:\/\/technologyadvice.com\/terms-conditions\/\">Terms of Use<\/a> and <a href=\"https:\/\/technologyadvice.com\/privacy-policy\/\">Privacy Policy<\/a>.","subscribe_button":"Subscribe"}},"identifier":"6747526b384f5","campaign_id":"19717","campaign_type":"sidebar","popup_type":null,"newsletters":["developer-insider"],"behavior":{"opt_in_enabled":true},"appearance":{"colors":{"primary":"#238fee","button":{"text":"#fff","hover":{"background":"#DBDBDB","text":"#fff"},"toggle":{"background":"#238fee","text":"#DBDBDB"}}},"custom_css":""},"language":{"tagline":"Get the Free Newsletter!","subtagline":"","content":"Subscribe to Developer Insider for top news, trends & analysis","email_placeholder":"Work Email Address","opt_in":"By signing up to receive our newsletter, you agree to our <a href=\"https:\/\/technologyadvice.com\/terms-conditions\/\">Terms of Use<\/a> and <a href=\"https:\/\/technologyadvice.com\/privacy-policy\/\">Privacy Policy<\/a>.","subscribe_button":"Subscribe"}}'> <div class="ta-campaign-widget__wrapper"> <div class="ta-campaign-widget__header mb-6"> <h3 class="ta-campaign-widget__tagline"> Get the Free Newsletter! </h3> <p class="ta-campaign-widget__content mt-6"> Subscribe to Developer Insider for top news, trends & analysis </p> </div> <form class="ta-campaign-widget__form"> <div class="ta-campaign-widget__input mb-4" data-field="email"> <label class="sr-only" for="email-6747526b384f5"> Email Address </label> <input class="ta-campaign-widget__input__text" placeholder="Work Email Address" id="email-6747526b384f5" name="email" type="email"> </div> <div class="ta-campaign-widget__checkbox mb-4" data-field="opt_in"> <div class="flex items-start"> <input id="opt-in-6747526b384f5" class="ta-campaign-widget__checkbox__input mr-2" name="opt-in" type="checkbox"/> <label class="ta-campaign-widget__checkbox__label" for="opt-in-6747526b384f5"> By signing up to receive our newsletter, you agree to our <a href="https://technologyadvice.com/terms-conditions/">Terms of Use</a> and <a href="https://technologyadvice.com/privacy-policy/">Privacy Policy</a>. </label> </div> </div> <button class="ta-campaign-widget__button" type="submit" > Subscribe </button> </form> </div> </div> </div> <style> </style></div></div></div><div class="td_block_wrap td_flex_block_1 tdi_75 td-pb-border-top native-rr td_block_template_2 td_flex_block" data-td-block-uid="tdi_75" > <style> .td-theme-wrap .tdi_75 .td-block-title > *, .td-theme-wrap .tdi_75 .td-pulldown-filter-link:hover, .td-theme-wrap .tdi_75 .td-subcat-item a:hover, .td-theme-wrap .tdi_75 .td-subcat-item .td-cur-simple-item, .td-theme-wrap .tdi_75 .td-subcat-dropdown:hover .td-subcat-more span, .td-theme-wrap .tdi_75 .td-subcat-dropdown:hover .td-subcat-more i { color: #151948; } .td-theme-wrap .tdi_75 .td-subcat-dropdown ul:after { background-color: #151948; } .td-theme-wrap .tdi_75 .td_module_wrap:hover .entry-title a, .td-theme-wrap .tdi_75 .td_quote_on_blocks, .td-theme-wrap .tdi_75 .td-opacity-cat .td-post-category:hover, .td-theme-wrap .tdi_75 .td-opacity-read .td-read-more a:hover, .td-theme-wrap .tdi_75 .td-opacity-author .td-post-author-name a:hover, .td-theme-wrap .tdi_75 .td-instagram-user a { color: #151948; } .td-theme-wrap .tdi_75 .td-next-prev-wrap a:hover, .td-theme-wrap .tdi_75 .td-load-more-wrap a:hover { background-color: #151948; border-color: #151948; } .td-theme-wrap .tdi_75 .td-read-more a, .td-theme-wrap .tdi_75 .td-weather-information:before, .td-theme-wrap .tdi_75 .td-weather-week:before, .td-theme-wrap .tdi_75 .td-exchange-header:before, .td-theme-wrap .td-footer-wrapper .tdi_75 .td-post-category, .td-theme-wrap .tdi_75 .td-post-category:hover { background-color: #151948; } </style> <style>.tdi_75 .td-image-wrap{padding-bottom:60%}.tdi_75 .entry-thumb{background-position:center 50%}.tdi_75 .td-image-container{flex:0 0 30%;width:30%;display:block;order:0}.ie10 .tdi_75 .td-image-container,.ie11 .tdi_75 .td-image-container{flex:0 0 auto}.tdi_75 .td-module-container{flex-direction:row;padding:10px 0;border-color:#eaeaea!important}.ie10 .tdi_75 .td-module-meta-info,.ie11 .tdi_75 .td-module-meta-info{flex:1}body .tdi_75 .td-favorite{font-size:36px;box-shadow:1px 1px 4px 0px rgba(0,0,0,0.2)}.tdi_75 .td-module-meta-info{padding:0 0 0 15px;border-color:#eaeaea}.tdi_75 .td_module_wrap{width:100%;float:left;padding-left:0px;padding-right:0px;padding-bottom:9px;margin-bottom:9px}.rtl .tdi_75 .td_module_wrap{float:right}.tdi_75 .td_block_inner{margin-left:-0px;margin-right:-0px}.tdi_75 .td-module-container:before{bottom:-9px;border-color:#eaeaea}.tdi_75 .td-post-vid-time{display:block}.tdi_75 .td-post-category{padding:6px 8px;background-color:#238fee;color:#ffffff;border-color:#ffffff;font-family:brother-xl!important;font-size:14px!important}.tdi_75 .td-author-photo .avatar{width:20px;height:20px;margin-right:6px;border-radius:50%}.tdi_75 .td-excerpt{display:none;margin:0px;column-count:1;column-gap:48px}.tdi_75 .td-audio-player{opacity:1;visibility:visible;height:auto;font-size:13px}.tdi_75 .td-read-more{display:none}.tdi_75 .td-author-date{display:inline}.tdi_75 .entry-review-stars{display:inline-block}.tdi_75 .td-icon-star,.tdi_75 .td-icon-star-empty,.tdi_75 .td-icon-star-half{font-size:15px}.tdi_75 .td-module-comments{display:none}.tdi_75 .td_module_wrap:nth-last-child(1){margin-bottom:0;padding-bottom:0}.tdi_75 .td_module_wrap:nth-last-child(1) .td-module-container:before{display:none}.tdi_75 .td-module-thumb a:after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:-webkit-linear-gradient(90deg,rgba(38,189,233,0.29),rgba(0,126,237,0.26));background:linear-gradient(90deg,rgba(38,189,233,0.29),rgba(0,126,237,0.26))}.tdi_75 .td-post-category:hover{background-color:#f2f2f2!important;color:#238fee;border-color:#ffffff}.tdi_75 .td-module-title a{color:#151948;box-shadow:inset 0 0 0 0 #238fee}.tdi_75 .td_module_wrap:hover .td-module-title a{color:#151948!important;box-shadow:inset 0 -2px 0 0 #238fee}.tdi_75 .td-post-author-name a{color:#238fee}.tdi_75 .td-post-author-name:hover a{color:#b361e0}.tdi_75 .td-post-date,.tdi_75 .td-post-author-name span{color:#a5a5a5}.tdi_75.td_with_ajax_pagination .td-next-prev-wrap a,.tdi_75 .td-load-more-wrap a{color:#a5a5a5;background-color:#ffffff;border-color:#dbdbdb;padding:5px 6px;border-width:2px}.tdi_75 .td-load-more-wrap a .td-load-more-icon-svg svg,.tdi_75 .td-load-more-wrap a .td-load-more-icon-svg svg *,.tdi_75.td_with_ajax_pagination .td-next-prev-wrap .td-next-prev-icon-svg svg,.tdi_75.td_with_ajax_pagination .td-next-prev-wrap .td-next-prev-icon-svg svg *{fill:#a5a5a5}.tdi_75.td_with_ajax_pagination .td-next-prev-wrap a:hover,.tdi_75 .td-load-more-wrap a:hover{color:#ffffff;background-color:#238fee!important;border-color:#238fee!important;border-color:#f2f2f2!important}.tdi_75 .td-load-more-wrap a:hover .td-load-more-icon-svg svg,.tdi_75 .td-load-more-wrap a:hover .td-load-more-icon-svg svg *,.tdi_75.td_with_ajax_pagination .td-next-prev-wrap a:hover .td-next-prev-icon-svg svg,.tdi_75.td_with_ajax_pagination .td-next-prev-wrap a:hover .td-next-prev-icon-svg svg *{fill:#ffffff}.tdi_75.td_with_ajax_pagination .td-next-prev-wrap,.tdi_75 .td-load-more-wrap{margin-top:35px}.tdi_75 .page-nav .pages{padding-right:0}.tdi_75.td_with_ajax_pagination .td-next-prev-wrap a,.tdi_75 .td-load-more-wrap a i{font-size:24px}.tdi_75 .td-load-more-wrap a .td-load-more-icon-svg svg,.tdi_75.td_with_ajax_pagination .td-next-prev-wrap .td-next-prev-icon-svg svg{width:24px;height:calc(24px + 1px)}.tdi_75 .td-block-title a,.tdi_75 .td-block-title span{font-family:brother-xl!important;font-size:30px!important;font-weight:700!important;text-transform:capitalize!important}.tdi_75 .td-subcat-list a,.tdi_75 .td-subcat-dropdown span,.tdi_75 .td-subcat-dropdown a{font-family:brother-xl!important}.tdi_75 .entry-title{font-family:brother-xl!important;font-size:17px!important;line-height:1.2!important;font-weight:700!important}.tdi_75 .td-editor-date,.tdi_75 .td-editor-date .td-post-author-name a,.tdi_75 .td-editor-date .entry-date,.tdi_75 .td-module-comments a{font-family:Rubik!important;font-size:14px!important;font-weight:400!important}.tdi_75 .td-load-more-wrap a{font-family:brother-xl!important}html:not([class*='ie']) .tdi_75 .td-module-container:hover .entry-thumb:before{opacity:0}html:not([class*='ie']) .tdi_75 .entry-thumb{filter:brightness(1) contrast(1) saturate(1);transition:all 1s ease;-webkit-transition:all 1s ease}@media (min-width:768px){.tdi_75 .td-module-title a{transition:all 0.2s ease;-webkit-transition:all 0.2s ease}}@media (min-width:1141px){html:not([class*='ie']) .tdi_75 .td-module-container:hover .entry-thumb{filter:brightness(0.7) contrast(0.7) saturate(1)}}@media (min-width:1019px) and (max-width:1140px){.tdi_75 .td_module_wrap{padding-bottom:9px;margin-bottom:9px;padding-bottom:9px!important;margin-bottom:9px!important}.tdi_75 .td-module-container:before{bottom:-9px}.tdi_75 .td-post-category:not(.td-post-extra-category){display:none}.tdi_75 .td_module_wrap:nth-last-child(1){margin-bottom:0!important;padding-bottom:0!important}.tdi_75 .td_module_wrap .td-module-container:before{display:block!important}.tdi_75 .td_module_wrap:nth-last-child(1) .td-module-container:before{display:none!important}.tdi_75 .td-module-title a{box-shadow:inset 0 0 0 0 #238fee}.tdi_75 .td_module_wrap:hover .td-module-title a{box-shadow:inset 0 -2px 0 0 #238fee}.tdi_75 .entry-title{font-size:14px!important}@media (min-width:768px){.tdi_75 .td-module-title a{transition:all 0.2s ease;-webkit-transition:all 0.2s ease}}}@media (min-width:768px) and (max-width:1018px){.tdi_75 .td-image-wrap{padding-bottom:90%}.tdi_75 .td-module-meta-info{padding:0 0 0 10px}.tdi_75 .td_module_wrap{padding-bottom:8px;margin-bottom:8px;padding-bottom:8px!important;margin-bottom:8px!important}.tdi_75 .td-module-container:before{bottom:-8px}.tdi_75 .td-post-category:not(.td-post-extra-category){display:none}.tdi_75 .td_module_wrap:nth-last-child(1){margin-bottom:0!important;padding-bottom:0!important}.tdi_75 .td_module_wrap .td-module-container:before{display:block!important}.tdi_75 .td_module_wrap:nth-last-child(1) .td-module-container:before{display:none!important}.tdi_75 .td-module-title a{box-shadow:inset 0 0 0 0 #238fee}.tdi_75 .td_module_wrap:hover .td-module-title a{box-shadow:inset 0 -2px 0 0 #238fee}.tdi_75 .entry-title{font-size:12px!important}@media (min-width:768px){.tdi_75 .td-module-title a{transition:all 0.2s ease;-webkit-transition:all 0.2s ease}}}@media (max-width:767px){.tdi_75 .td-module-meta-info{padding:0px 5px 5px 15px}.tdi_75 .td_module_wrap{padding-bottom:9px;margin-bottom:9px;padding-bottom:9px!important;margin-bottom:9px!important}.tdi_75 .td-module-container:before{bottom:-9px}.tdi_75 .td-post-category:not(.td-post-extra-category){display:none}.tdi_75 .td_module_wrap:nth-last-child(1){margin-bottom:0!important;padding-bottom:0!important}.tdi_75 .td_module_wrap .td-module-container:before{display:block!important}.tdi_75 .td_module_wrap:nth-last-child(1) .td-module-container:before{display:none!important}.tdi_75 .td-module-title a{box-shadow:inset 0 0 0 0 #238fee}.tdi_75 .td_module_wrap:hover .td-module-title a{box-shadow:inset 0 -2px 0 0 #238fee}.tdi_75 .entry-title{font-size:15px!important}@media (min-width:768px){.tdi_75 .td-module-title a{transition:all 0.2s ease;-webkit-transition:all 0.2s ease}}}</style><script data-src="data:text/javascript;base64,dmFyIGJsb2NrX3RkaV83NSA9IG5ldyB0ZEJsb2NrKCk7CmJsb2NrX3RkaV83NS5pZCA9ICJ0ZGlfNzUiOwpibG9ja190ZGlfNzUuYXR0cyA9ICd7ImN1c3RvbV90aXRsZSI6Ik11c3QgUmVhZCIsImZfaGVhZGVyX2ZvbnRfdHJhbnNmb3JtIjoiY2FwaXRhbGl6ZSIsImFqYXhfcGFnaW5hdGlvbiI6IiIsImNhdGVnb3J5X2lkIjoiX3JlbGF0ZWRfY2F0Iiwic29ydCI6IiIsImFsbF9tb2R1bGVzX3NwYWNlIjoiZXlKd2IzSjBjbUZwZENJNklqRTJJaXdpWVd4c0lqb2lNVGdpZlE9PSIsImltYWdlX2Zsb2F0ZWQiOiJmbG9hdF9sZWZ0IiwiaW1hZ2Vfd2lkdGgiOiIzMCIsImltYWdlX2hlaWdodCI6ImV5SmhiR3dpT2lJMk1DVWlMQ0p3YjNKMGNtRnBkQ0k2SWprd0luMD0iLCJtZXRhX3BhZGRpbmciOiJleUp3YjNKMGNtRnBkQ0k2SWpBZ01DQXdJREV3Y0hnaUxDSndhRzl1WlNJNklqQndlQ0ExY0hnZ05YQjRJREUxY0hnaUxDSmhiR3dpT2lJd0lEQWdNQ0F4TlhCNEluMD0iLCJzaG93X2V4Y2VycHQiOiJub25lIiwic2hvd19idG4iOiJub25lIiwic2hvd19jb20iOiJub25lIiwic2hvd19kYXRlIjoiIiwic2hvd19hdXRob3IiOiIiLCJibG9ja190ZW1wbGF0ZV9pZCI6InRkX2Jsb2NrX3RlbXBsYXRlXzIiLCJmX3RpdGxlX2ZvbnRfc2l6ZSI6ImV5SndiM0owY21GcGRDSTZJakV5SWl3aWJHRnVaSE5qWVhCbElqb2lNVFFpTENKd2FHOXVaU0k2SWpFMUlpd2lZV3hzSWpvaU1UY2lmUT09IiwiZl90aXRsZV9mb250X2xpbmVfaGVpZ2h0IjoiMS4yIiwiZl90aXRsZV9mb250X3dlaWdodCI6IjcwMCIsImZfaGVhZGVyX2ZvbnRfZmFtaWx5IjoidGtfMSIsImZfaGVhZGVyX2ZvbnRfd2VpZ2h0IjoiNzAwIiwiZl90aXRsZV9mb250X2ZhbWlseSI6InRrXzEiLCJzaG93X2NhdCI6ImV5SnNZVzVrYzJOaGNHVWlPaUp1YjI1bElpd2ljRzl5ZEhKaGFYUWlPaUp1YjI1bElpd2ljR2h2Ym1VaU9pSnViMjVsSW4wPSIsIm1jMV90bCI6IjExIiwibWMxX2VsIjoiMTAiLCJtb2R1bGVzX2dhcCI6IjAiLCJtX3BhZGRpbmciOiIxMHB4IDAiLCJtb2R1bGVzX2NhdGVnb3J5IjoiaW1hZ2UiLCJtb2R1bGVzX2NhdGVnb3J5X3BhZGRpbmciOiI2cHggOHB4IiwiYXJ0X2V4Y2VycHQiOiIwIiwicGFnX3NwYWNlIjoiMzUiLCJwYWdfcGFkZGluZyI6IjVweCA2cHgiLCJwYWdfYm9yZGVyX3dpZHRoIjoiMiIsInBhZ19pY29uc19zaXplIjoiMjQiLCJwcmV2X3RkaWNvbiI6InRkLWljb24tbGluZWUiLCJuZXh0X3RkaWNvbiI6InRkLWljb24tcGx1c3MiLCJmX2FqYXhfZm9udF9mYW1pbHkiOiJ0a18xIiwiZl9tb3JlX2ZvbnRfZmFtaWx5IjoidGtfMSIsImZfY2F0X2ZvbnRfZmFtaWx5IjoidGtfMSIsImZfbWV0YV9mb250X2ZhbWlseSI6IjcxMiIsImZfbWV0YV9mb250X3dlaWdodCI6IjQwMCIsImZfbWV0YV9mb250X3NpemUiOiIxNCIsImZfY2F0X2ZvbnRfc2l6ZSI6IjE0IiwiZmVfYnJpZ2h0bmVzc19oIjoiMC43IiwiZmVfY29udHJhc3RfaCI6IjAuNyIsImNvbG9yX292ZXJsYXkiOiJleUowZVhCbElqb2laM0poWkdsbGJuUWlMQ0pqYjJ4dmNqRWlPaUp5WjJKaEtEQXNNVEkyTERJek55d3dMakkyS1NJc0ltTnZiRzl5TWlJNkluSm5ZbUVvTXpnc01UZzVMREl6TXl3d0xqSTVLU0lzSW0xcGVHVmtRMjlzYjNKeklqcGJYU3dpWkdWbmNtVmxJam9pT1RBaUxDSmpjM01pT2lKaVlXTnJaM0p2ZFc1a09pQXRkMlZpYTJsMExXeHBibVZoY2kxbmNtRmthV1Z1ZENnNU1HUmxaeXh5WjJKaEtETTRMREU0T1N3eU16TXNNQzR5T1Nrc2NtZGlZU2d3TERFeU5pd3lNemNzTUM0eU5pa3BPMkpoWTJ0bmNtOTFibVE2SUd4cGJtVmhjaTFuY21Ga2FXVnVkQ2c1TUdSbFp5eHlaMkpoS0RNNExERTRPU3d5TXpNc01DNHlPU2tzY21kaVlTZ3dMREV5Tml3eU16Y3NNQzR5TmlrcE95SXNJbU56YzFCaGNtRnRjeUk2SWprd1pHVm5MSEpuWW1Fb016Z3NNVGc1TERJek15d3dMakk1S1N4eVoySmhLREFzTVRJMkxESXpOeXd3TGpJMktTSjkiLCJ0aXRsZV90eHQiOiIjMTUxOTQ4IiwidGl0bGVfdHh0X2hvdmVyIjoiIzE1MTk0OCIsImFsbF91bmRlcmxpbmVfaGVpZ2h0IjoiMiIsImFsbF91bmRlcmxpbmVfY29sb3IiOiIjMjM4ZmVlIiwiY2F0X2JnIjoiIzIzOGZlZSIsImNhdF9iZ19ob3ZlciI6IiNmMmYyZjIiLCJjYXRfdHh0X2hvdmVyIjoiIzIzOGZlZSIsImNhdF90eHQiOiIjZmZmZmZmIiwiY2F0X2JvcmRlciI6IiNmZmZmZmYiLCJjYXRfYm9yZGVyX2hvdmVyIjoiI2ZmZmZmZiIsImF1dGhvcl90eHQiOiIjMjM4ZmVlIiwiYXV0aG9yX3R4dF9ob3ZlciI6IiNiMzYxZTAiLCJkYXRlX3R4dCI6IiNhNWE1YTUiLCJwYWdfdGV4dCI6IiNhNWE1YTUiLCJwYWdfaF90ZXh0IjoiI2ZmZmZmZiIsInBhZ19iZyI6IiNmZmZmZmYiLCJwYWdfaF9iZyI6IiMyMzhmZWUiLCJwYWdfaF9ib3JkZXIiOiIjZjJmMmYyIiwicGFnX2JvcmRlciI6IiNkYmRiZGIiLCJoZWFkZXJfdGV4dF9jb2xvciI6IiMxNTE5NDgiLCJmX2hlYWRlcl9mb250X3NpemUiOiIzMCIsImxpbWl0IjoiNCIsImVsX2NsYXNzIjoibmF0aXZlLXJyIiwiYmxvY2tfdHlwZSI6InRkX2ZsZXhfYmxvY2tfMSIsInNlcGFyYXRvciI6IiIsImN1c3RvbV91cmwiOiIiLCJ0aXRsZV90YWciOiIiLCJtYzFfdGl0bGVfdGFnIjoiIiwicG9zdF9pZHMiOiItMTkzNDEiLCJ0YXhvbm9taWVzIjoiIiwiY2F0ZWdvcnlfaWRzIjoiIiwiaW5fYWxsX3Rlcm1zIjoiIiwidGFnX3NsdWciOiIiLCJhdXRvcnNfaWQiOiIiLCJpbnN0YWxsZWRfcG9zdF90eXBlcyI6IiIsImluY2x1ZGVfY2ZfcG9zdHMiOiIiLCJleGNsdWRlX2NmX3Bvc3RzIjoiIiwicG9wdWxhcl9ieV9kYXRlIjoiIiwibGlua2VkX3Bvc3RzIjoiIiwiZmF2b3VyaXRlX29ubHkiOiIiLCJvZmZzZXQiOiIiLCJvcGVuX2luX25ld193aW5kb3ciOiIiLCJzaG93X21vZGlmaWVkX2RhdGUiOiIiLCJ0aW1lX2FnbyI6IiIsInRpbWVfYWdvX2FkZF90eHQiOiJhZ28iLCJ0aW1lX2Fnb190eHRfcG9zIjoiIiwicmV2aWV3X3NvdXJjZSI6IiIsInRkX3F1ZXJ5X2NhY2hlIjoiIiwidGRfcXVlcnlfY2FjaGVfZXhwaXJhdGlvbiI6IiIsInRkX2FqYXhfZmlsdGVyX3R5cGUiOiIiLCJ0ZF9hamF4X2ZpbHRlcl9pZHMiOiIiLCJ0ZF9maWx0ZXJfZGVmYXVsdF90eHQiOiJBbGwiLCJ0ZF9hamF4X3ByZWxvYWRpbmciOiIiLCJjb250YWluZXJfd2lkdGgiOiIiLCJtb2R1bGVzX29uX3JvdyI6IjEwMCUiLCJtb2R1bGVzX2JvcmRlcl9zaXplIjoiIiwibW9kdWxlc19ib3JkZXJfc3R5bGUiOiIiLCJtb2R1bGVzX2JvcmRlcl9jb2xvciI6IiNlYWVhZWEiLCJtb2R1bGVzX2JvcmRlcl9yYWRpdXMiOiIiLCJtb2R1bGVzX2RpdmlkZXIiOiIiLCJtb2R1bGVzX2RpdmlkZXJfY29sb3IiOiIjZWFlYWVhIiwiaF9lZmZlY3QiOiIiLCJpbWFnZV9zaXplIjoiIiwiaW1hZ2VfYWxpZ25tZW50IjoiNTAiLCJpbWFnZV9yYWRpdXMiOiIiLCJoaWRlX2ltYWdlIjoiIiwic2hvd19mYXZvdXJpdGVzIjoiIiwiZmF2X3NpemUiOiIyIiwiZmF2X3NwYWNlIjoiIiwiZmF2X2ljb19jb2xvciI6IiIsImZhdl9pY29fY29sb3JfaCI6IiIsImZhdl9iZyI6IiIsImZhdl9iZ19oIjoiIiwiZmF2X3NoYWRvd19zaGFkb3dfaGVhZGVyIjoiIiwiZmF2X3NoYWRvd19zaGFkb3dfdGl0bGUiOiJTaGFkb3ciLCJmYXZfc2hhZG93X3NoYWRvd19zaXplIjoiIiwiZmF2X3NoYWRvd19zaGFkb3dfb2Zmc2V0X2hvcml6b250YWwiOiIiLCJmYXZfc2hhZG93X3NoYWRvd19vZmZzZXRfdmVydGljYWwiOiIiLCJmYXZfc2hhZG93X3NoYWRvd19zcHJlYWQiOiIiLCJmYXZfc2hhZG93X3NoYWRvd19jb2xvciI6IiIsInZpZGVvX2ljb24iOiIiLCJ2aWRlb19wb3B1cCI6InllcyIsInZpZGVvX3JlYyI6IiIsInNwb3RfaGVhZGVyIjoiIiwidmlkZW9fcmVjX3RpdGxlIjoiIiwidmlkZW9fcmVjX2NvbG9yIjoiIiwidmlkZW9fcmVjX2Rpc2FibGUiOiIiLCJhdXRvcGxheV92aWQiOiJ5ZXMiLCJzaG93X3ZpZF90IjoiYmxvY2siLCJ2aWRfdF9tYXJnaW4iOiIiLCJ2aWRfdF9wYWRkaW5nIjoiIiwidmlkZW9fdGl0bGVfY29sb3IiOiIiLCJ2aWRlb190aXRsZV9jb2xvcl9oIjoiIiwidmlkZW9fYmciOiIiLCJ2aWRlb19vdmVybGF5IjoiIiwidmlkX3RfY29sb3IiOiIiLCJ2aWRfdF9iZ19jb2xvciI6IiIsImZfdmlkX3RpdGxlX2ZvbnRfaGVhZGVyIjoiIiwiZl92aWRfdGl0bGVfZm9udF90aXRsZSI6IlZpZGVvIHBvcC11cCBhcnRpY2xlIHRpdGxlIiwiZl92aWRfdGl0bGVfZm9udF9zZXR0aW5ncyI6IiIsImZfdmlkX3RpdGxlX2ZvbnRfZmFtaWx5IjoiIiwiZl92aWRfdGl0bGVfZm9udF9zaXplIjoiIiwiZl92aWRfdGl0bGVfZm9udF9saW5lX2hlaWdodCI6IiIsImZfdmlkX3RpdGxlX2ZvbnRfc3R5bGUiOiIiLCJmX3ZpZF90aXRsZV9mb250X3dlaWdodCI6IiIsImZfdmlkX3RpdGxlX2ZvbnRfdHJhbnNmb3JtIjoiIiwiZl92aWRfdGl0bGVfZm9udF9zcGFjaW5nIjoiIiwiZl92aWRfdGl0bGVfIjoiIiwiZl92aWRfdGltZV9mb250X3RpdGxlIjoiVmlkZW8gZHVyYXRpb24gdGV4dCIsImZfdmlkX3RpbWVfZm9udF9zZXR0aW5ncyI6IiIsImZfdmlkX3RpbWVfZm9udF9mYW1pbHkiOiIiLCJmX3ZpZF90aW1lX2ZvbnRfc2l6ZSI6IiIsImZfdmlkX3RpbWVfZm9udF9saW5lX2hlaWdodCI6IiIsImZfdmlkX3RpbWVfZm9udF9zdHlsZSI6IiIsImZfdmlkX3RpbWVfZm9udF93ZWlnaHQiOiIiLCJmX3ZpZF90aW1lX2ZvbnRfdHJhbnNmb3JtIjoiIiwiZl92aWRfdGltZV9mb250X3NwYWNpbmciOiIiLCJmX3ZpZF90aW1lXyI6IiIsIm1ldGFfaW5mb19hbGlnbiI6IiIsIm1ldGFfaW5mb19ob3JpeiI6ImxheW91dC1kZWZhdWx0IiwibWV0YV93aWR0aCI6IiIsIm1ldGFfbWFyZ2luIjoiIiwibWV0YV9zcGFjZSI6IiIsImFydF90aXRsZSI6IiIsImFydF9idG4iOiIiLCJtZXRhX2luZm9fYm9yZGVyX3NpemUiOiIiLCJtZXRhX2luZm9fYm9yZGVyX3N0eWxlIjoiIiwibWV0YV9pbmZvX2JvcmRlcl9jb2xvciI6IiNlYWVhZWEiLCJtZXRhX2luZm9fYm9yZGVyX3JhZGl1cyI6IiIsIm1vZHVsZXNfY2F0ZWdvcnlfbWFyZ2luIjoiIiwibW9kdWxlc19jYXRfYm9yZGVyIjoiIiwibW9kdWxlc19jYXRlZ29yeV9yYWRpdXMiOiIwIiwibW9kdWxlc19leHRyYV9jYXQiOiIiLCJhdXRob3JfcGhvdG8iOiIiLCJhdXRob3JfcGhvdG9fc2l6ZSI6IiIsImF1dGhvcl9waG90b19zcGFjZSI6IiIsImF1dGhvcl9waG90b19yYWRpdXMiOiIiLCJzaG93X3JldmlldyI6ImlubGluZS1ibG9jayIsInJldmlld19zcGFjZSI6IiIsInJldmlld19zaXplIjoiMi41IiwicmV2aWV3X2Rpc3RhbmNlIjoiIiwiZXhjZXJwdF9jb2wiOiIxIiwiZXhjZXJwdF9nYXAiOiIiLCJleGNlcnB0X21pZGRsZSI6IiIsImV4Y2VycHRfaW5saW5lIjoiIiwic2hvd19hdWRpbyI6ImJsb2NrIiwiaGlkZV9hdWRpbyI6IiIsImFydF9hdWRpbyI6IiIsImFydF9hdWRpb19zaXplIjoiMS41IiwiYnRuX3RpdGxlIjoiIiwiYnRuX21hcmdpbiI6IiIsImJ0bl9wYWRkaW5nIjoiIiwiYnRuX2JvcmRlcl93aWR0aCI6IiIsImJ0bl9yYWRpdXMiOiIiLCJwYWdfYm9yZGVyX3JhZGl1cyI6IiIsImZfaGVhZGVyX2ZvbnRfaGVhZGVyIjoiIiwiZl9oZWFkZXJfZm9udF90aXRsZSI6IkJsb2NrIGhlYWRlciIsImZfaGVhZGVyX2ZvbnRfc2V0dGluZ3MiOiIiLCJmX2hlYWRlcl9mb250X2xpbmVfaGVpZ2h0IjoiIiwiZl9oZWFkZXJfZm9udF9zdHlsZSI6IiIsImZfaGVhZGVyX2ZvbnRfc3BhY2luZyI6IiIsImZfaGVhZGVyXyI6IiIsImZfYWpheF9mb250X3RpdGxlIjoiQWpheCBjYXRlZ29yaWVzIiwiZl9hamF4X2ZvbnRfc2V0dGluZ3MiOiIiLCJmX2FqYXhfZm9udF9zaXplIjoiIiwiZl9hamF4X2ZvbnRfbGluZV9oZWlnaHQiOiIiLCJmX2FqYXhfZm9udF9zdHlsZSI6IiIsImZfYWpheF9mb250X3dlaWdodCI6IiIsImZfYWpheF9mb250X3RyYW5zZm9ybSI6IiIsImZfYWpheF9mb250X3NwYWNpbmciOiIiLCJmX2FqYXhfIjoiIiwiZl9tb3JlX2ZvbnRfdGl0bGUiOiJMb2FkIG1vcmUgYnV0dG9uIiwiZl9tb3JlX2ZvbnRfc2V0dGluZ3MiOiIiLCJmX21vcmVfZm9udF9zaXplIjoiIiwiZl9tb3JlX2ZvbnRfbGluZV9oZWlnaHQiOiIiLCJmX21vcmVfZm9udF9zdHlsZSI6IiIsImZfbW9yZV9mb250X3dlaWdodCI6IiIsImZfbW9yZV9mb250X3RyYW5zZm9ybSI6IiIsImZfbW9yZV9mb250X3NwYWNpbmciOiIiLCJmX21vcmVfIjoiIiwiZl90aXRsZV9mb250X2hlYWRlciI6IiIsImZfdGl0bGVfZm9udF90aXRsZSI6IkFydGljbGUgdGl0bGUiLCJmX3RpdGxlX2ZvbnRfc2V0dGluZ3MiOiIiLCJmX3RpdGxlX2ZvbnRfc3R5bGUiOiIiLCJmX3RpdGxlX2ZvbnRfdHJhbnNmb3JtIjoiIiwiZl90aXRsZV9mb250X3NwYWNpbmciOiIiLCJmX3RpdGxlXyI6IiIsImZfY2F0X2ZvbnRfdGl0bGUiOiJBcnRpY2xlIGNhdGVnb3J5IHRhZyIsImZfY2F0X2ZvbnRfc2V0dGluZ3MiOiIiLCJmX2NhdF9mb250X2xpbmVfaGVpZ2h0IjoiIiwiZl9jYXRfZm9udF9zdHlsZSI6IiIsImZfY2F0X2ZvbnRfd2VpZ2h0IjoiIiwiZl9jYXRfZm9udF90cmFuc2Zvcm0iOiIiLCJmX2NhdF9mb250X3NwYWNpbmciOiIiLCJmX2NhdF8iOiIiLCJmX21ldGFfZm9udF90aXRsZSI6IkFydGljbGUgbWV0YSBpbmZvIiwiZl9tZXRhX2ZvbnRfc2V0dGluZ3MiOiIiLCJmX21ldGFfZm9udF9saW5lX2hlaWdodCI6IiIsImZfbWV0YV9mb250X3N0eWxlIjoiIiwiZl9tZXRhX2ZvbnRfdHJhbnNmb3JtIjoiIiwiZl9tZXRhX2ZvbnRfc3BhY2luZyI6IiIsImZfbWV0YV8iOiIiLCJmX2V4X2ZvbnRfdGl0bGUiOiJBcnRpY2xlIGV4Y2VycHQiLCJmX2V4X2ZvbnRfc2V0dGluZ3MiOiIiLCJmX2V4X2ZvbnRfZmFtaWx5IjoiIiwiZl9leF9mb250X3NpemUiOiIiLCJmX2V4X2ZvbnRfbGluZV9oZWlnaHQiOiIiLCJmX2V4X2ZvbnRfc3R5bGUiOiIiLCJmX2V4X2ZvbnRfd2VpZ2h0IjoiIiwiZl9leF9mb250X3RyYW5zZm9ybSI6IiIsImZfZXhfZm9udF9zcGFjaW5nIjoiIiwiZl9leF8iOiIiLCJmX2J0bl9mb250X3RpdGxlIjoiQXJ0aWNsZSByZWFkIG1vcmUgYnV0dG9uIiwiZl9idG5fZm9udF9zZXR0aW5ncyI6IiIsImZfYnRuX2ZvbnRfZmFtaWx5IjoiIiwiZl9idG5fZm9udF9zaXplIjoiIiwiZl9idG5fZm9udF9saW5lX2hlaWdodCI6IiIsImZfYnRuX2ZvbnRfc3R5bGUiOiIiLCJmX2J0bl9mb250X3dlaWdodCI6IiIsImZfYnRuX2ZvbnRfdHJhbnNmb3JtIjoiIiwiZl9idG5fZm9udF9zcGFjaW5nIjoiIiwiZl9idG5fIjoiIiwibWl4X2NvbG9yIjoiIiwibWl4X3R5cGUiOiIiLCJmZV9icmlnaHRuZXNzIjoiMSIsImZlX2NvbnRyYXN0IjoiMSIsImZlX3NhdHVyYXRlIjoiMSIsIm1peF9jb2xvcl9oIjoiIiwibWl4X3R5cGVfaCI6IiIsImZlX3NhdHVyYXRlX2giOiIxIiwibV9iZyI6IiIsInNoYWRvd19zaGFkb3dfaGVhZGVyIjoiIiwic2hhZG93X3NoYWRvd190aXRsZSI6Ik1vZHVsZSBTaGFkb3ciLCJzaGFkb3dfc2hhZG93X3NpemUiOiIiLCJzaGFkb3dfc2hhZG93X29mZnNldF9ob3Jpem9udGFsIjoiIiwic2hhZG93X3NoYWRvd19vZmZzZXRfdmVydGljYWwiOiIiLCJzaGFkb3dfc2hhZG93X3NwcmVhZCI6IiIsInNoYWRvd19zaGFkb3dfY29sb3IiOiIiLCJjYXRfc3R5bGUiOiIiLCJtZXRhX2JnIjoiIiwiZXhfdHh0IjoiIiwiY29tX2JnIjoiIiwiY29tX3R4dCI6IiIsInJldl90eHQiOiIiLCJhdWRpb19idG5fY29sb3IiOiIiLCJhdWRpb190aW1lX2NvbG9yIjoiIiwiYXVkaW9fYmFyX2NvbG9yIjoiIiwiYXVkaW9fYmFyX2N1cnJfY29sb3IiOiIiLCJzaGFkb3dfbV9zaGFkb3dfaGVhZGVyIjoiIiwic2hhZG93X21fc2hhZG93X3RpdGxlIjoiTWV0YSBpbmZvIHNoYWRvdyIsInNoYWRvd19tX3NoYWRvd19zaXplIjoiIiwic2hhZG93X21fc2hhZG93X29mZnNldF9ob3Jpem9udGFsIjoiIiwic2hhZG93X21fc2hhZG93X29mZnNldF92ZXJ0aWNhbCI6IiIsInNoYWRvd19tX3NoYWRvd19zcHJlYWQiOiIiLCJzaGFkb3dfbV9zaGFkb3dfY29sb3IiOiIiLCJidG5fYmciOiIiLCJidG5fYmdfaG92ZXIiOiIiLCJidG5fdHh0IjoiIiwiYnRuX3R4dF9ob3ZlciI6IiIsImJ0bl9ib3JkZXIiOiIiLCJidG5fYm9yZGVyX2hvdmVyIjoiIiwiYWpheF9wYWdpbmF0aW9uX25leHRfcHJldl9zd2lwZSI6IiIsImFqYXhfcGFnaW5hdGlvbl9pbmZpbml0ZV9zdG9wIjoiIiwiY3NzIjoiIiwidGRjX2NzcyI6IiIsInRkX2NvbHVtbl9udW1iZXIiOjEsImhlYWRlcl9jb2xvciI6IiIsImNvbG9yX3ByZXNldCI6IiIsImJvcmRlcl90b3AiOiIiLCJjbGFzcyI6InRkaV83NSIsInRkY19jc3NfY2xhc3MiOiJ0ZGlfNzUiLCJ0ZGNfY3NzX2NsYXNzX3N0eWxlIjoidGRpXzc1X3JhbmRfc3R5bGUiLCJsaXZlX2ZpbHRlciI6ImN1cl9wb3N0X3NhbWVfY2F0ZWdvcmllcyIsImxpdmVfZmlsdGVyX2N1cl9wb3N0X2lkIjoxOTM0MSwibGl2ZV9maWx0ZXJfY3VyX3Bvc3RfcGFyZW50X2lkIjowfSc7CmJsb2NrX3RkaV83NS50ZF9jb2x1bW5fbnVtYmVyID0gIjEiOwpibG9ja190ZGlfNzUuYmxvY2tfdHlwZSA9ICJ0ZF9mbGV4X2Jsb2NrXzEiOwpibG9ja190ZGlfNzUucG9zdF9jb3VudCA9ICI0IjsKYmxvY2tfdGRpXzc1LmZvdW5kX3Bvc3RzID0gIjE0NjUiOwpibG9ja190ZGlfNzUuaGVhZGVyX2NvbG9yID0gIiI7CmJsb2NrX3RkaV83NS5hamF4X3BhZ2luYXRpb25faW5maW5pdGVfc3RvcCA9ICIiOwpibG9ja190ZGlfNzUubWF4X251bV9wYWdlcyA9ICIzNjciOwp0ZEJsb2Nrc0FycmF5LnB1c2goYmxvY2tfdGRpXzc1KTsK" data-type="lazy"></script><div class="td-block-title-wrap"><h4 class="td-block-title"><span class="td-pulldown-size">Must Read</span></h4></div><div id=tdi_75 class="td_block_inner td-mc1-wrap"> <div class="td_module_flex td_module_flex_1 td_module_wrap td-animation-stack td-cpt-post"> <div class="td-module-container td-category-pos-image"> <div class="td-image-container"> <a href="https://www.codeguru.com/dotnet/" class="td-post-category" >.NET</a> <div class="td-module-thumb"><a href="https://www.codeguru.com/dotnet/jit-compiler-dot-net/" rel="bookmark" class="td-image-wrap " title="Different Types of JIT Compilers in .NET" ><span data-bg="https://assets.codeguru.com/uploads/2022/05/c-sharp-tutorial-696x464.jpeg" class="entry-thumb td-thumb-css rocket-lazyload" style="" ></span></a></div> </div> <div class="td-module-meta-info"> <h3 class="entry-title td-module-title"><a href="https://www.codeguru.com/dotnet/jit-compiler-dot-net/" rel="bookmark" title="Different Types of JIT Compilers in .NET">Different Types of JIT Compilers in .NET</a></h3> <div class="td-editor-date"> <span class="td-author-date"> <span class="td-post-author-name"><a href="https://www.codeguru.com/author/tariqsiddiqui/">Tariq Siddiqui</a> <span>-</span> </span> <span class="td-post-date"><time class="entry-date updated td-module-date" datetime="2023-03-17T02:49:37+00:00" >March 17, 2023</time></span> </span> </div> </div> </div> </div> <div class="td_module_flex td_module_flex_1 td_module_wrap td-animation-stack td-cpt-post"> <div class="td-module-container td-category-pos-image"> <div class="td-image-container"> <a href="https://www.codeguru.com/dotnet/" class="td-post-category" >.NET</a> <div class="td-module-thumb"><a href="https://www.codeguru.com/csharp/asp-net-middleware/" rel="bookmark" class="td-image-wrap " title="Middleware in ASP.NET Core" ><span data-bg="https://assets.codeguru.com/uploads/2022/01/c-sharp-tutorials-state-management-696x392.jpg" class="entry-thumb td-thumb-css rocket-lazyload" style="" ></span></a></div> </div> <div class="td-module-meta-info"> <h3 class="entry-title td-module-title"><a href="https://www.codeguru.com/csharp/asp-net-middleware/" rel="bookmark" title="Middleware in ASP.NET Core">Middleware in ASP.NET Core</a></h3> <div class="td-editor-date"> <span class="td-author-date"> <span class="td-post-author-name"><a href="https://www.codeguru.com/author/tariqsiddiqui/">Tariq Siddiqui</a> <span>-</span> </span> <span class="td-post-date"><time class="entry-date updated td-module-date" datetime="2023-03-16T01:54:15+00:00" >March 16, 2023</time></span> </span> </div> </div> </div> </div> <div class="td_module_flex td_module_flex_1 td_module_wrap td-animation-stack td-cpt-post"> <div class="td-module-container td-category-pos-image"> <div class="td-image-container"> <a href="https://www.codeguru.com/dotnet/" class="td-post-category" >.NET</a> <div class="td-module-thumb"><a href="https://www.codeguru.com/dotnet/intel-onedal-ml-net/" rel="bookmark" class="td-image-wrap " title="Intro to Intel oneDAL and ML.NET" ><span data-bg="https://assets.codeguru.com/uploads/2023/01/ml-net-machine-learning-696x696.png" class="entry-thumb td-thumb-css rocket-lazyload" style="" ></span></a></div> </div> <div class="td-module-meta-info"> <h3 class="entry-title td-module-title"><a href="https://www.codeguru.com/dotnet/intel-onedal-ml-net/" rel="bookmark" title="Intro to Intel oneDAL and ML.NET">Intro to Intel oneDAL and ML.NET</a></h3> <div class="td-editor-date"> <span class="td-author-date"> <span class="td-post-author-name"><a href="https://www.codeguru.com/author/hannes-dupreez/">Hannes DuPreez</a> <span>-</span> </span> <span class="td-post-date"><time class="entry-date updated td-module-date" datetime="2023-01-16T22:03:18+00:00" >January 16, 2023</time></span> </span> </div> </div> </div> </div> <div class="td_module_flex td_module_flex_1 td_module_wrap td-animation-stack td-cpt-post"> <div class="td-module-container td-category-pos-image"> <div class="td-image-container"> <a href="https://www.codeguru.com/dotnet/" class="td-post-category" >.NET</a> <div class="td-module-thumb"><a href="https://www.codeguru.com/dotnet/linq-query-execution/" rel="bookmark" class="td-image-wrap " title="Types of Query Execution in LINQ" ><span data-bg="https://assets.codeguru.com/uploads/2021/11/dot-net-6-696x696.png" class="entry-thumb td-thumb-css rocket-lazyload" style="" ></span></a></div> </div> <div class="td-module-meta-info"> <h3 class="entry-title td-module-title"><a href="https://www.codeguru.com/dotnet/linq-query-execution/" rel="bookmark" title="Types of Query Execution in LINQ">Types of Query Execution in LINQ</a></h3> <div class="td-editor-date"> <span class="td-author-date"> <span class="td-post-author-name"><a href="https://www.codeguru.com/author/tariqsiddiqui/">Tariq Siddiqui</a> <span>-</span> </span> <span class="td-post-date"><time class="entry-date updated td-module-date" datetime="2022-12-15T15:14:26+00:00" >December 15, 2022</time></span> </span> </div> </div> </div> </div> </div></div><div class="td-block td-a-rec td-a-rec-id-custom-spot tdi_76 td_block_template_2"> <style>.tdi_76.td-a-rec{text-align:center}.tdi_76.td-a-rec:not(.td-a-rec-no-translate){transform:translateZ(0)}.tdi_76 .td-element-style{z-index:-1}.tdi_76.td-a-rec-img{text-align:left}.tdi_76.td-a-rec-img img{margin:0 auto 0 0}@media (max-width:767px){.tdi_76.td-a-rec-img{text-align:center}}</style><div class="wp-ads-sticky-rail" id="wp-ads-1558141798"><!-- Start: GAM Ad Slot Render | Codeguru Sticky Rail --> <div id="sticky-rail" style="max-width: 300px; min-width: 160px; width: auto; text-align:center; min-height: 250px; max-height: 600px; height: auto; background-color: #ffffff; border:0px solid #efefef;"> <script nowprocket> window.googletag = window.googletag || { cmd: [] }; window.googletag.cmd.push(function() { googletag.display("sticky-rail"); }); </script> </div> <!-- End: GAM Ad Slot Render | Codeguru Sticky Rail --></div></div><div class="wpb_wrapper td_block_empty_space td_block_wrap vc_empty_space tdi_78 " style="height: 42px"></div></div></div></div></div></div></div> <span class="td-page-meta" itemprop="author" itemscope itemtype="https://schema.org/Person"><meta itemprop="name" content="Tariq Siddiqui"><meta itemprop="url" content="https://www.codeguru.com/author/tariqsiddiqui/"></span><meta itemprop="datePublished" content="2022-07-13T19:07:29+00:00"><meta itemprop="dateModified" content="2022-07-13T19:07:29+00:00"><meta itemscope itemprop="mainEntityOfPage" itemType="https://schema.org/WebPage" itemid="https://www.codeguru.com/soap/web-components-api/"/><span class="td-page-meta" itemprop="publisher" itemscope itemtype="https://schema.org/Organization"><span class="td-page-meta" itemprop="logo" itemscope itemtype="https://schema.org/ImageObject"><meta itemprop="url" content="https://www.codeguru.com/soap/web-components-api/"></span><meta itemprop="name" content="CodeGuru"></span><meta itemprop="headline" content="Introduction to Web Components API"><span class="td-page-meta" itemprop="image" itemscope itemtype="https://schema.org/ImageObject"><meta itemprop="url" content="https://assets.codeguru.com/uploads/2022/06/API-Testing-Tutorial-scaled.jpeg"><meta itemprop="width" content="2560"><meta itemprop="height" content="1707"></span> </article> </div> </div> </div> <!-- #tdb-autoload-article --> <div class="td-footer-template-wrap" style="position: relative"> <div class="td-footer-wrap "> <div id="tdi_79" class="tdc-zone"><div class="tdc_zone tdi_80 wpb_row td-pb-row tdc-element-style" > <style scoped>.tdi_80{min-height:0}.tdi_80>.td-element-style:after{content:''!important;width:100%!important;height:100%!important;position:absolute!important;top:0!important;left:0!important;z-index:0!important;display:block!important;background-color:#080a19!important}</style> <div class="tdi_79_rand_style td-element-style" ></div><div id="tdi_81" class="tdc-row stretch_row_1400 td-stretch-content"><div class="vc_row tdi_82 _ntv_footer wpb_row td-pb-row" > <style scoped>.tdi_82,.tdi_82 .tdc-columns{min-height:0}.tdi_82,.tdi_82 .tdc-columns{display:block}.tdi_82 .tdc-columns{width:100%}.tdi_82:before,.tdi_82:after{display:table}@media (min-width:768px){.tdi_82{margin-left:-15px;margin-right:-15px}.tdi_82 .tdc-row-video-background-error,.tdi_82>.vc_column,.tdi_82>.tdc-columns>.vc_column{padding-left:15px;padding-right:15px}}@media (min-width:1019px) and (max-width:1140px){@media (min-width:768px){.tdi_82{margin-left:-10px;margin-right:-10px}.tdi_82 .tdc-row-video-background-error,.tdi_82>.vc_column,.tdi_82>.tdc-columns>.vc_column{padding-left:10px;padding-right:10px}}}@media (min-width:768px) and (max-width:1018px){@media (min-width:768px){.tdi_82{margin-left:-10px;margin-right:-10px}.tdi_82 .tdc-row-video-background-error,.tdi_82>.vc_column,.tdi_82>.tdc-columns>.vc_column{padding-left:10px;padding-right:10px}}}.tdi_82{padding-top:60px!important}.tdi_82 .td_block_wrap{text-align:left}@media (min-width:768px) and (max-width:1018px){.tdi_82{padding-top:30px!important;padding-bottom:10px!important}}@media (max-width:767px){.tdi_82{padding-top:60px!important}}</style><div class="vc_column tdi_84 wpb_column vc_column_container tdc-column td-pb-span6"> <style scoped>.tdi_84{vertical-align:baseline}.tdi_84>.wpb_wrapper,.tdi_84>.wpb_wrapper>.tdc-elements{display:flex;flex-direction:column;flex-wrap:nowrap;justify-content:flex-start;align-items:flex-start}.tdi_84>.wpb_wrapper>.tdc-elements{width:100%}.tdi_84>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_84>.wpb_wrapper{width:100%;height:100%}@media (max-width:767px){.tdi_84{justify-content:center!important;text-align:center!important}}</style><div class="wpb_wrapper" ><div class="td_block_wrap tdb_header_logo tdi_85 td-pb-border-top td_block_template_2 tdb-header-align" data-td-block-uid="tdi_85" > <style>.tdi_85{margin-top:10px!important;margin-bottom:10px!important}@media (max-width:767px){.tdi_85{margin-left:50px!important;display:inline-block!important}}</style> <style>.tdi_85 .tdb-logo-a,.tdi_85 h1{flex-direction:row;align-items:center;justify-content:flex-start}.tdi_85 .tdb-logo-svg-wrap{display:block}.tdi_85 .tdb-logo-svg-wrap+.tdb-logo-img-wrap{display:none}.tdi_85 .tdb-logo-img{max-width:47%}.tdi_85 .tdb-logo-img-wrap{display:block}.tdi_85 .tdb-logo-text-tagline{margin-top:2px;margin-left:0;display:block;font-family:brother-xl!important;}.tdi_85 .tdb-logo-text-title{display:block;color:#ffffff;font-family:brother-xl!important;font-size:34px!important;font-weight:500!important;text-transform:uppercase!important;}.tdi_85 .tdb-logo-text-wrap{flex-direction:column;align-items:center}.tdi_85 .tdb-logo-icon{top:0px;display:block}@media (min-width:1019px) and (max-width:1140px){.tdi_85 .tdb-logo-text-title{font-size:32px!important;}}@media (min-width:768px) and (max-width:1018px){.tdi_85 .tdb-logo-text-title{font-size:22px!important;}}@media (max-width:767px){.tdi_85 .tdb-logo-img{max-width:80%}}</style><div class="tdb-block-inner td-fix-index"><a class="tdb-logo-a" href="https://www.codeguru.com/"><span class="tdb-logo-img-wrap"><img class="tdb-logo-img td-retina-data" data-retina="https://assets.codeguru.com/uploads/2021/08/CG_MobileLogo_White.png" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%202267%20352'%3E%3C/svg%3E" alt="Logo" title="" width="2267" height="352" data-lazy-src="https://assets.codeguru.com/uploads/2021/08/CG_RetinaLogo-copy-white-2.png" /><noscript><img class="tdb-logo-img td-retina-data" data-retina="https://assets.codeguru.com/uploads/2021/08/CG_MobileLogo_White.png" src="https://assets.codeguru.com/uploads/2021/08/CG_RetinaLogo-copy-white-2.png" alt="Logo" title="" width="2267" height="352" /></noscript></span></a></div></div> <!-- ./block --><div class="tdm_block td_block_wrap tdm_block_inline_text tdi_86 tdm-inline-block td-pb-border-top td_block_template_2" data-td-block-uid="tdi_86" > <style>.tdi_86{width:90%!important}@media (max-width:767px){.tdi_86{width:100%!important;justify-content:center!important;text-align:center!important}}</style> <style>.tdm_block.tdm_block_inline_text{margin-bottom:0;vertical-align:top}.tdm_block.tdm_block_inline_text .tdm-descr{margin-bottom:0;-webkit-transform:translateZ(0);transform:translateZ(0)}.tdc-row-content-vert-center .tdm-inline-text-yes{vertical-align:middle}.tdc-row-content-vert-bottom .tdm-inline-text-yes{vertical-align:bottom}.tdi_86{text-align:left!important}.tdi_86 .tdm-descr{color:#ffffff;font-family:Rubik!important;font-size:16px!important;line-height:1.4!important}@media (min-width:768px) and (max-width:1018px){.tdi_86 .tdm-descr{font-size:12px!important}}@media (max-width:767px){.tdi_86{text-align:center!important;margin-right:auto;margin-left:auto}}</style><p class="tdm-descr">CodeGuru covers topics related to Microsoft-related software development, mobile development, database management, and web application programming. In addition to tutorials and how-tos that teach programmers how to code in Microsoft-related languages and frameworks like C# and .Net, we also publish articles on software development tools, the latest in developer news, and advice for project managers. Cloud services such as Microsoft Azure and database options including SQL Server and MSSQL are also frequently covered.</p></div><div class="tdm_block td_block_wrap tdm_block_socials tdi_87 tdm-inline-block tdm-content-horiz-left td-pb-border-top td_block_template_2" data-td-block-uid="tdi_87" > <style>.tdi_87{margin-top:10px!important;margin-bottom:20px!important;width:100%!important}@media (max-width:767px){.tdi_87{margin-right:auto!important;margin-left:auto!important;width:auto!important}}</style> <style>.tdi_88 .tdm-social-item i{font-size:20px;vertical-align:middle;line-height:36px}.tdi_88 .tdm-social-item i.td-icon-linkedin,.tdi_88 .tdm-social-item i.td-icon-pinterest,.tdi_88 .tdm-social-item i.td-icon-blogger,.tdi_88 .tdm-social-item i.td-icon-vimeo{font-size:16px}.tdi_88 .tdm-social-item{width:36px;height:36px;margin:5px 10px 5px 0}.tdi_88 .tdm-social-item-wrap:last-child .tdm-social-item{margin-right:0!important}.tdi_88 .tdm-social-item i,.tds-team-member2 .tdi_88.tds-social1 .tdm-social-item i{color:#ffffff}.tdi_88 .tdm-social-item-wrap:hover i,.tds-team-member2 .tdi_88.tds-social1 .tdm-social-item:hover i{color:#b361e0}.tdi_88 .tdm-social-text{display:none;margin-left:2px;margin-right:18px}@media (min-width:768px) and (max-width:1018px){.tdi_88 .tdm-social-item i{font-size:12px;vertical-align:middle;line-height:21.6px}.tdi_88 .tdm-social-item i.td-icon-linkedin,.tdi_88 .tdm-social-item i.td-icon-pinterest,.tdi_88 .tdm-social-item i.td-icon-blogger,.tdi_88 .tdm-social-item i.td-icon-vimeo{font-size:9.6px}.tdi_88 .tdm-social-item{width:21.6px;height:21.6px}}</style><div class="tdm-social-wrapper tds-social1 tdi_88"><div class="tdm-social-item-wrap"><a href="https://www.facebook.com/CodeGuru-108048391032729" title="Facebook" class="tdm-social-item"><i class="td-icon-font td-icon-facebook"></i><span style="display: none">Facebook</span></a></div><div class="tdm-social-item-wrap"><a href="https://www.linkedin.com/company/codegurutoday/?viewAsMember=true" title="Linkedin" class="tdm-social-item"><i class="td-icon-font td-icon-linkedin"></i><span style="display: none">Linkedin</span></a></div><div class="tdm-social-item-wrap"><a href="https://twitter.com/CodeGuruToday" title="Twitter" class="tdm-social-item"><i class="td-icon-font td-icon-twitter"></i><span style="display: none">Twitter</span></a></div></div></div></div></div><div class="vc_column tdi_90 wpb_column vc_column_container tdc-column td-pb-span6"> <style scoped>.tdi_90{vertical-align:baseline}.tdi_90>.wpb_wrapper,.tdi_90>.wpb_wrapper>.tdc-elements{display:block}.tdi_90>.wpb_wrapper>.tdc-elements{width:100%}.tdi_90>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_90>.wpb_wrapper{width:auto;height:auto}</style><div class="wpb_wrapper" ><div class="vc_row_inner tdi_92 vc_row vc_inner wpb_row td-pb-row" > <style scoped>.tdi_92{position:relative!important;top:0;transform:none;-webkit-transform:none}.tdi_92,.tdi_92 .tdc-inner-columns{display:block}.tdi_92 .tdc-inner-columns{width:100%}</style><div class="vc_column_inner tdi_94 wpb_column vc_column_container tdc-inner-column td-pb-span8"> <style scoped>.tdi_94{vertical-align:baseline}.tdi_94 .vc_column-inner>.wpb_wrapper,.tdi_94 .vc_column-inner>.wpb_wrapper .tdc-elements{display:block}.tdi_94 .vc_column-inner>.wpb_wrapper .tdc-elements{width:100%}@media (max-width:767px){div.tdi_94{width:100%!important}}@media (max-width:767px){.tdi_94{margin-bottom:0px!important;padding-bottom:0px!important}}</style><div class="vc_column-inner"><div class="wpb_wrapper" ><div class="td_block_wrap td_block_title tdi_95 td-pb-border-top td_block_template_2 td-fix-index" data-td-block-uid="tdi_95" > <style>.td-theme-wrap .tdi_95 .td-block-title>*,.td-theme-wrap .tdi_95 .td-pulldown-filter-link:hover,.td-theme-wrap .tdi_95 .td-subcat-item a:hover,.td-theme-wrap .tdi_95 .td-subcat-item .td-cur-simple-item,.td-theme-wrap .tdi_95 .td-subcat-dropdown:hover .td-subcat-more span,.td-theme-wrap .tdi_95 .td-subcat-dropdown:hover .td-subcat-more i{color:#238fee}.td-theme-wrap .tdi_95 .td-subcat-dropdown ul:after{background-color:#238fee}.td-theme-wrap .tdi_95 .td_module_wrap:hover .entry-title a,.td-theme-wrap .tdi_95 .td_quote_on_blocks,.td-theme-wrap .tdi_95 .td-opacity-cat .td-post-category:hover,.td-theme-wrap .tdi_95 .td-opacity-read .td-read-more a:hover,.td-theme-wrap .tdi_95 .td-opacity-author .td-post-author-name a:hover,.td-theme-wrap .tdi_95 .td-instagram-user a{color:#238fee}.td-theme-wrap .tdi_95 .td-next-prev-wrap a:hover,.td-theme-wrap .tdi_95 .td-load-more-wrap a:hover{background-color:#238fee;border-color:#238fee}.td-theme-wrap .tdi_95 .td-read-more a,.td-theme-wrap .tdi_95 .td-weather-information:before,.td-theme-wrap .tdi_95 .td-weather-week:before,.td-theme-wrap .tdi_95 .td-exchange-header:before,.td-theme-wrap .td-footer-wrapper .tdi_95 .td-post-category,.td-theme-wrap .tdi_95 .td-post-category:hover{background-color:#238fee}.tdi_95{margin-bottom:-5px!important}@media (min-width:768px) and (max-width:1018px){.tdi_95{margin-bottom:-15px!important}}@media (max-width:767px){.tdi_95{width:100%!important;display:inline-block!important}}</style> <style>body .tdi_95 .td-block-title a,body .tdi_95 .td-block-title span{font-family:brother-xl!important;font-size:24px!important;font-weight:700!important;letter-spacing:1px!important}@media (min-width:1019px) and (max-width:1140px){body .tdi_95 .td-block-title a,body .tdi_95 .td-block-title span{font-size:19px!important}}@media (min-width:768px) and (max-width:1018px){body .tdi_95 .td-block-title a,body .tdi_95 .td-block-title span{font-size:18px!important}}@media (max-width:767px){body .tdi_95 .td-block-title{text-align:center}body .tdi_95.td_block_template_4 .td-block-title>*:before,body .tdi_95.td_block_template_17 .td-block-title:after,body .tdi_95.td_block_template_13 .td-block-subtitle,body .tdi_95.td_block_template_9 .td-block-title:after{right:0;left:0}body .tdi_95.td_block_template_5 .td-block-title>*{border-width:0 0 0 4px}body .tdi_95.td_block_template_8 .td-block-title>*{padding-left:20px;padding-right:20px}body .tdi_95.td_block_template_12 .td-block-title{justify-content:center}}</style><div class="td-block-title-wrap"><h4 class="td-block-title"><span class="td-pulldown-size">Advertisers</span></h4></div></div><div class="tdm_block td_block_wrap tdm_block_inline_text tdi_96 tdm-inline-block td-pb-border-top td_block_template_2" data-td-block-uid="tdi_96" > <style>.tdi_96{margin-bottom:30px!important;width:90%!important}@media (max-width:767px){.tdi_96{width:100%!important;justify-content:center!important;text-align:center!important}}@media (min-width:1019px) and (max-width:1140px){.tdi_96{width:100%!important}}@media (min-width:768px) and (max-width:1018px){.tdi_96{width:100%!important}}</style> <style>.tdi_96{text-align:left!important}.tdi_96 .tdm-descr{color:#ffffff;font-family:Rubik!important;font-size:16px!important;line-height:1.4!important}@media (min-width:768px) and (max-width:1018px){.tdi_96 .tdm-descr{font-size:12px!important}}@media (max-width:767px){.tdi_96{text-align:center!important;margin-right:auto;margin-left:auto}}</style><p class="tdm-descr">Advertise with TechnologyAdvice on CodeGuru and our other developer-focused platforms.</p></div><div class="tdm_block td_block_wrap tdm_block_button tdi_97 tdm-block-button-inline tdm-content-horiz-center td-pb-border-top td_block_template_2" data-td-block-uid="tdi_97" > <style>.tdi_97{border-color:#238fee!important;border-style:solid!important;border-width:0!important}@media (max-width:767px){.tdi_97{width:100%!important}}</style> <style>.tdm_block.tdm_block_button{margin-bottom:0}.tdm_block.tdm_block_button .tds-button{line-height:0}.tdm_block.tdm_block_button.tdm-block-button-inline{display:inline-block}.tdm_block.tdm_block_button.tdm-block-button-full,.tdm_block.tdm_block_button.tdm-block-button-full .tdm-btn{display:block}.tdi_97 .tdm-btn{height:auto;padding:10px}@media (max-width:767px){.tdi_97 .tdm-btn{height:auto;padding:15px 30px}}</style> <style>body .tdi_98{background-color:#238fee}body .tdi_98:before{background-color:#767676}.tdi_98 .tdm-btn-text,.tdi_98 i{color:#ffffff}.tdi_98 svg{fill:#ffffff}.tdi_98 svg *{fill:inherit}.tdi_98{padding:10px;height:auto;line-height:1;font-weight:500!important}.tdi_98 .tdm-btn-icon:last-child{margin-left:10px}.tdi_98,.tdi_98:before{border-radius:15px}@media (max-width:767px){.tdi_98{padding:15px 30px;height:auto;line-height:1}.tdi_98,.tdi_98:before{border-radius:25px}}</style><div class="tds-button td-fix-index"><a href="https://solutions.technologyadvice.com/advertise-on-codeguru/?utm_source=codeguru&utm_medium=portfolio_footer&utm_campaign=advertise_button" title="Advertise with Us" class="tds-button1 tdm-btn tdm-btn-lg tdi_98 " ><span class="tdm-btn-text">Advertise with Us</span><i class="tdm-btn-icon tdc-font-fa tdc-font-fa-angle-right"></i></a></div></div></div></div></div><div class="vc_column_inner tdi_100 wpb_column vc_column_container tdc-inner-column td-pb-span4"> <style scoped>.tdi_100{vertical-align:baseline}.tdi_100 .vc_column-inner>.wpb_wrapper,.tdi_100 .vc_column-inner>.wpb_wrapper .tdc-elements{display:block}.tdi_100 .vc_column-inner>.wpb_wrapper .tdc-elements{width:100%}@media (max-width:767px){.tdi_100{display:none!important}}</style><div class="vc_column-inner"><div class="wpb_wrapper" ><div class="td_block_wrap td_block_title tdi_101 td-pb-border-top td_block_template_2 td-fix-index" data-td-block-uid="tdi_101" > <style>.td-theme-wrap .tdi_101 .td-block-title>*,.td-theme-wrap .tdi_101 .td-pulldown-filter-link:hover,.td-theme-wrap .tdi_101 .td-subcat-item a:hover,.td-theme-wrap .tdi_101 .td-subcat-item .td-cur-simple-item,.td-theme-wrap .tdi_101 .td-subcat-dropdown:hover .td-subcat-more span,.td-theme-wrap .tdi_101 .td-subcat-dropdown:hover .td-subcat-more i{color:#238fee}.td-theme-wrap .tdi_101 .td-subcat-dropdown ul:after{background-color:#238fee}.td-theme-wrap .tdi_101 .td_module_wrap:hover .entry-title a,.td-theme-wrap .tdi_101 .td_quote_on_blocks,.td-theme-wrap .tdi_101 .td-opacity-cat .td-post-category:hover,.td-theme-wrap .tdi_101 .td-opacity-read .td-read-more a:hover,.td-theme-wrap .tdi_101 .td-opacity-author .td-post-author-name a:hover,.td-theme-wrap .tdi_101 .td-instagram-user a{color:#238fee}.td-theme-wrap .tdi_101 .td-next-prev-wrap a:hover,.td-theme-wrap .tdi_101 .td-load-more-wrap a:hover{background-color:#238fee;border-color:#238fee}.td-theme-wrap .tdi_101 .td-read-more a,.td-theme-wrap .tdi_101 .td-weather-information:before,.td-theme-wrap .tdi_101 .td-weather-week:before,.td-theme-wrap .tdi_101 .td-exchange-header:before,.td-theme-wrap .td-footer-wrapper .tdi_101 .td-post-category,.td-theme-wrap .tdi_101 .td-post-category:hover{background-color:#238fee}.tdi_101{margin-bottom:-5px!important}@media (min-width:768px) and (max-width:1018px){.tdi_101{margin-bottom:-15px!important}}@media (max-width:767px){.tdi_101{display:inline-block!important}}</style> <style>body .tdi_101 .td-block-title a,body .tdi_101 .td-block-title span{font-family:brother-xl!important;font-size:24px!important;font-weight:700!important;letter-spacing:1px!important}@media (min-width:1019px) and (max-width:1140px){body .tdi_101 .td-block-title a,body .tdi_101 .td-block-title span{font-size:19px!important}}@media (min-width:768px) and (max-width:1018px){body .tdi_101 .td-block-title a,body .tdi_101 .td-block-title span{font-size:18px!important}}</style><div class="td-block-title-wrap"><h4 class="td-block-title"><span class="td-pulldown-size">Menu</span></h4></div></div><div class="td_block_wrap td_block_list_menu tdi_102 td-blm-display-vertical td-pb-border-top td_block_template_2 widget" data-td-block-uid="tdi_102" > <style>@media (max-width:767px){.tdi_102{justify-content:center!important;text-align:center!important}}</style> <style>.td_block_list_menu ul{flex-wrap:wrap;margin-left:12px}.td_block_list_menu ul li{margin-left:0}.td_block_list_menu ul li a{display:flex;margin-left:0}.td_block_list_menu .td-blm-menu-item-txt{display:flex;align-items:center;flex-grow:1}.td_block_list_menu .sub-menu{padding-left:22px}.td_block_list_menu .sub-menu li{font-size:13px}.td_block_list_menu li.current-menu-item>a,.td_block_list_menu li.current-menu-ancestor>a,.td_block_list_menu li.current-category-ancestor>a,.td_block_list_menu li.current-page-ancestor>a{color:var(--td_theme_color,#4db2ec)}.td_block_list_menu .td-blm-sub-icon{display:flex;align-items:center;justify-content:center;margin-left:.6em;padding:0 .6em;transition:transform .2s ease-in-out}.td_block_list_menu .td-blm-sub-icon svg{display:block;width:1em;height:auto}.td_block_list_menu .td-blm-sub-icon svg,.td_block_list_menu .td-blm-sub-icon svg *{fill:currentColor}.td_block_list_menu.td-blm-display-accordion .menu-item-has-children ul{display:none}.td_block_list_menu.td-blm-display-accordion .menu-item-has-children-open>a>.td-blm-sub-icon{transform:rotate(180deg)}.td_block_list_menu.td-blm-display-horizontal ul{display:flex}body .tdi_102 ul{text-align:left;justify-content:flex-start;margin:0px}body .tdi_102 ul li a{justify-content:flex-start}body .tdi_102 .td-blm-menu-item-txt{flex-grow:1}body .tdi_102 a,body .tdi_102 .td-blm-sub-icon{color:#ffffff}body .tdi_102 li.current-menu-item>a,body .tdi_102 li.current-menu-ancestor>a,body .tdi_102 li.current-category-ancestor>a,body .tdi_102 li.current-page-ancestor>a,body .tdi_102 a:hover,body .tdi_102 li.current-menu-item>a>.td-blm-sub-icon,body .tdi_102 li.current-menu-ancestor>a>.td-blm-sub-icon,body .tdi_102 li.current-category-ancestor>a>.td-blm-sub-icon,body .tdi_102 li.current-page-ancestor>a>.td-blm-sub-icon,body .tdi_102 a:hover>.td-blm-sub-icon{color:#238fee}body .tdi_102 .td-block-title a,body .tdi_102 .td-block-title span{font-family:brother-xl!important;font-size:14px!important;font-weight:500!important}body .tdi_102 li{font-family:brother-xl!important;font-size:14px!important;line-height:24px!important;font-weight:700!important;letter-spacing:1px!important}@media (min-width:768px) and (max-width:1018px){body .tdi_102 li{line-height:20px!important}}</style><div class="td-block-title-wrap"></div><div id=tdi_102 class="td_block_inner td-fix-index"><div class="menu-footer-menu-container"><ul id="menu-footer-menu-1" class="menu"><li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-privacy-policy menu-item-107"><a href="https://www.codeguru.com/privacy-policy/"><span class="td-blm-menu-item-txt">Privacy Policy</span></a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-108"><a href="https://technologyadvice.com/terms-conditions/"><span class="td-blm-menu-item-txt">Terms</span></a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-109"><a href="https://technologyadvice.com/about-us/"><span class="td-blm-menu-item-txt">About</span></a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-110"><a href="https://technologyadvice.com/contact-us/"><span class="td-blm-menu-item-txt">Contact</span></a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-111"><a href="https://solutions.technologyadvice.com/advertise-on-codeguru/?utm_source=codeguru&utm_medium=portfolio_footer&utm_campaign=advertise_contact-us"><span class="td-blm-menu-item-txt">Advertise</span></a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom menu-item-112"><a href="https://technologyadvice.com/privacy-policy/ccpa-opt-out-form/"><span class="td-blm-menu-item-txt">California – Do Not Sell My Information</span></a></li> </ul></div></div></div></div></div></div></div></div></div></div></div><div id="tdi_103" class="tdc-row stretch_row_1400 td-stretch-content"><div class="vc_row tdi_104 wpb_row td-pb-row" > <style scoped>.tdi_104,.tdi_104 .tdc-columns{min-height:0}.tdi_104,.tdi_104 .tdc-columns{display:block}.tdi_104 .tdc-columns{width:100%}.tdi_104:before,.tdi_104:after{display:table}</style><div class="vc_column tdi_106 wpb_column vc_column_container tdc-column td-pb-span12"> <style scoped>.tdi_106{vertical-align:baseline}.tdi_106>.wpb_wrapper,.tdi_106>.wpb_wrapper>.tdc-elements{display:block}.tdi_106>.wpb_wrapper>.tdc-elements{width:100%}.tdi_106>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_106>.wpb_wrapper{width:auto;height:auto}</style><div class="wpb_wrapper" ><div class="wpb_wrapper td_block_separator td_block_wrap vc_separator tdi_108 td_separator_solid td_separator_center"><span style="border-color:#EBEBEB;border-width:1px;width:100%;"></span> <style scoped>.td_block_separator{width:100%;align-items:center;margin-bottom:38px;padding-bottom:10px}.td_block_separator span{position:relative;display:block;margin:0 auto;width:100%;height:1px;border-top:1px solid #EBEBEB}.td_separator_align_left span{margin-left:0}.td_separator_align_right span{margin-right:0}.td_separator_dashed span{border-top-style:dashed}.td_separator_dotted span{border-top-style:dotted}.td_separator_double span{height:3px;border-bottom:1px solid #EBEBEB}.td_separator_shadow>span{position:relative;height:20px;overflow:hidden;border:0;color:#EBEBEB}.td_separator_shadow>span>span{position:absolute;top:-30px;left:0;right:0;margin:0 auto;height:13px;width:98%;border-radius:100%}html :where([style*='border-width']){border-style:none}.tdi_108{margin-top:15px!important}@media (max-width:767px){.tdi_108{margin-top:50px!important}}</style></div><div class="tdm_block td_block_wrap tdm_block_column_title tdi_109 tdm-content-horiz-center td-pb-border-top td_block_template_2" data-td-block-uid="tdi_109" > <style>.tdm_block_column_title{margin-bottom:0;display:inline-block;width:100%}</style><div class="td-block-row"><div class="td-block-span12 tdm-col"> <style>body .tdi_110 .tdm-title{color:#ffffff}body .tdi_110:hover .tdm-title,body .tds_icon_box5_wrap:hover .tdi_110 .tdm-title{color:#ffffff;-webkit-text-fill-color:unset;background:transparent;transition:none}.tdi_110:hover .tdm-title{cursor:default}.tdi_110 .tdm-title{font-family:brother-xl!important;font-weight:700!important}</style><div class="tds-title tds-title1 td-fix-index tdi_110 "><h3 class="tdm-title tdm-title-md">Our Brands</h3></div></div></div></div></div></div></div></div><div id="tdi_111" class="tdc-row stretch_row_1400 td-stretch-content"><div class="vc_row tdi_112 wpb_row td-pb-row tdc-row-content-vert-center" > <style scoped>.tdi_112,.tdi_112 .tdc-columns{min-height:0}.tdi_112,.tdi_112 .tdc-columns{display:block}.tdi_112 .tdc-columns{width:100%}.tdi_112:before,.tdi_112:after{display:table}@media (min-width:768px){.tdi_112{margin-left:-2px;margin-right:-2px}.tdi_112 .tdc-row-video-background-error,.tdi_112>.vc_column,.tdi_112>.tdc-columns>.vc_column{padding-left:2px;padding-right:2px}}@media (min-width:767px){.tdi_112.tdc-row-content-vert-center,.tdi_112.tdc-row-content-vert-center .tdc-columns{display:flex;align-items:center;flex:1}.tdi_112.tdc-row-content-vert-bottom,.tdi_112.tdc-row-content-vert-bottom .tdc-columns{display:flex;align-items:flex-end;flex:1}.tdi_112.tdc-row-content-vert-center .td_block_wrap{vertical-align:middle}.tdi_112.tdc-row-content-vert-bottom .td_block_wrap{vertical-align:bottom}}</style><div class="vc_column tdi_114 wpb_column vc_column_container tdc-column td-pb-span3"> <style scoped>.tdi_114{vertical-align:baseline}.tdi_114>.wpb_wrapper,.tdi_114>.wpb_wrapper>.tdc-elements{display:block}.tdi_114>.wpb_wrapper>.tdc-elements{width:100%}.tdi_114>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_114>.wpb_wrapper{width:auto;height:auto}</style><div class="wpb_wrapper" ><div class="wpb_wrapper td_block_single_image td_block_wrap td_block_wrap vc_single_image tdi_115 td-single-image- td-pb-border-top td_block_template_2 " data-td-block-uid="tdi_115"><a data-bg="https://assets.codeguru.com/uploads/2021/01/TAwhitefooter.png" class="td_single_image_bg rocket-lazyload" style="" href="https://technologyadvice.com/" target="_blank" ></a> <style>@media (max-width:767px){.tdi_115{margin-right:auto!important;margin-left:auto!important}}</style> <style>.td_block_single_image.td-image-video-modal{cursor:pointer}.td_block_single_image.td-no-img-custom-url .td_single_image_bg{pointer-events:none;cursor:default}.vc_single_image a{position:relative}.td-single-image-style-rounded .td_single_image_bg,.td-single-image-style-rounded .td_single_image_bg:before,.td-single-image-style-rounded .td_single_image_bg:after{border-radius:4px}.td-single-image-style-border,.td-single-image-style-round-border,.td-single-image-style-circle-border,.td-single-image-style-outline,.td-single-image-style-bordered-shadow,.td-single-image-style-round-outline,.td-single-image-style-round-border-shadow,.td-single-image-style-circle-outline,.td-single-image-style-circle-border-shadow{margin-bottom:22px;background-color:#EBEBEB}.td-single-image-style-border,.td-single-image-style-round-border,.td-single-image-style-circle-border{padding:6px}.td-single-image-style-outline,.td-single-image-style-bordered-shadow,.td-single-image-style-round-outline,.td-single-image-style-round-border-shadow,.td-single-image-style-circle-outline,.td-single-image-style-circle-border-shadow{padding:1px}.td-single-image-style-outline .td_single_image_bg:before,.td-single-image-style-bordered-shadow .td_single_image_bg:before,.td-single-image-style-round-outline .td_single_image_bg:before,.td-single-image-style-round-border-shadow .td_single_image_bg:before,.td-single-image-style-circle-outline .td_single_image_bg:before,.td-single-image-style-circle-border-shadow .td_single_image_bg:before,.td-single-image-style-outline a:after,.td-single-image-style-bordered-shadow .td_single_image_bg:after,.td-single-image-style-round-outline .td_single_image_bg:after,.td-single-image-style-round-border-shadow .td_single_image_bg:after,.td-single-image-style-circle-outline .td_single_image_bg:after,.td-single-image-style-circle-border-shadow .td_single_image_bg:after{content:'';position:absolute;top:0;left:0;width:100%;height:100%}.td-single-image-style-outline .td_single_image_bg:after,.td-single-image-style-bordered-shadow .td_single_image_bg:after,.td-single-image-style-round-outline .td_single_image_bg:after,.td-single-image-style-round-border-shadow .td_single_image_bg:after,.td-single-image-style-circle-outline .td_single_image_bg:after,.td-single-image-style-circle-border-shadow .td_single_image_bg:after{color:#fff;-webkit-box-shadow:inset 0px 0px 0px 6px;box-shadow:inset 0px 0px 0px 6px}.td-single-image-style-outline .td_single_image_bg:before,.td-single-image-style-bordered-shadow .td_single_image_bg:before,.td-single-image-style-round-outline .td_single_image_bg:before,.td-single-image-style-round-border-shadow .td_single_image_bg:before,.td-single-image-style-circle-outline .td_single_image_bg:before,.td-single-image-style-circle-border-shadow .td_single_image_bg:before{color:#EBEBEB;-webkit-box-shadow:inset 0px 0px 0px 7px;box-shadow:inset 0px 0px 0px 7px}.td-single-image-style-shadow .td_single_image_bg,.td-single-image-style-bordered-shadow .td_single_image_bg,.td-single-image-style-round-shadow .td_single_image_bg,.td-single-image-style-round-border-shadow .td_single_image_bg,.td-single-image-style-circle-shadow .td_single_image_bg,.td-single-image-style-circle-border-shadow .td_single_image_bg{-webkit-box-shadow:0 0 6px rgba(0,0,0,0.1);box-shadow:0 0 6px rgba(0,0,0,0.1)}.td-single-image-style-3d-shadow{position:relative}.td-single-image-style-3d-shadow:before,.td-single-image-style-3d-shadow:after{content:'';position:absolute;bottom:0;height:30%;-webkit-box-shadow:0 15px 10px rgba(0,0,0,0.6);box-shadow:0 15px 10px rgba(0,0,0,0.6);z-index:0}.td-single-image-style-3d-shadow:before{left:5px;right:50%;-webkit-transform:skewY(-6deg);transform:skewY(-6deg);-webkit-transform-origin:0 0;transform-origin:0 0}.td-single-image-style-3d-shadow:after{left:50%;right:5px;-webkit-transform:skewY(6deg);transform:skewY(6deg);-webkit-transform-origin:100% 0;transform-origin:100% 0}.td-single-image-style-3d-shadow .td_single_image_bg{z-index:1}.td-single-image-style-round,.td-single-image-style-round-border,.td-single-image-style-round-outline,.td-single-image-style-round-shadow,.td-single-image-style-round-border-shadow,.td-single-image-style-circle,.td-single-image-style-circle-border,.td-single-image-style-circle-outline,.td-single-image-style-circle-shadow,.td-single-image-style-circle-border-shadow{border-radius:50%}.td-single-image-style-round .td_single_image_bg,.td-single-image-style-round-border .td_single_image_bg,.td-single-image-style-round-outline .td_single_image_bg,.td-single-image-style-round-shadow .td_single_image_bg,.td-single-image-style-round-border-shadow .td_single_image_bg,.td-single-image-style-circle .td_single_image_bg,.td-single-image-style-circle-border .td_single_image_bg,.td-single-image-style-circle-outline .td_single_image_bg,.td-single-image-style-circle-shadow .td_single_image_bg,.td-single-image-style-circle-border-shadow .td_single_image_bg,.td-single-image-style-round .td_single_image_bg:before,.td-single-image-style-round-border .td_single_image_bg:before,.td-single-image-style-round-outline .td_single_image_bg:before,.td-single-image-style-round-shadow .td_single_image_bg:before,.td-single-image-style-round-border-shadow .td_single_image_bg:before,.td-single-image-style-circle .td_single_image_bg:before,.td-single-image-style-circle-border .td_single_image_bg:before,.td-single-image-style-circle-outline .td_single_image_bg:before,.td-single-image-style-circle-shadow .td_single_image_bg:before,.td-single-image-style-circle-border-shadow .td_single_image_bg:before,.td-single-image-style-round .td_single_image_bg:after,.td-single-image-style-round-border .td_single_image_bg:after,.td-single-image-style-round-outline .td_single_image_bg:after,.td-single-image-style-round-shadow .td_single_image_bg:after,.td-single-image-style-round-border-shadow .td_single_image_bg:after,.td-single-image-style-circle .td_single_image_bg:after,.td-single-image-style-circle-border .td_single_image_bg:after,.td-single-image-style-circle-outline .td_single_image_bg:after,.td-single-image-style-circle-shadow .td_single_image_bg:after,.td-single-image-style-circle-border-shadow .td_single_image_bg:after{border-radius:50%}.td-single-image-style-round-outline .td_single_image_bg:before,.td-single-image-style-round-border-shadow .td_single_image_bg:before,.td-single-image-style-circle-outline .td_single_image_bg:before,.td-single-image-style-circle-border-shadow .td_single_image_bg:before,.td-single-image-style-round-outline .td_single_image_bg:before:before,.td-single-image-style-round-border-shadow .td_single_image_bg:before:before,.td-single-image-style-circle-outline .td_single_image_bg:before:before,.td-single-image-style-circle-border-shadow .td_single_image_bg:before:before,.td-single-image-style-round-outline .td_single_image_bg:after:before,.td-single-image-style-round-border-shadow .td_single_image_bg:after:before,.td-single-image-style-circle-outline .td_single_image_bg:after:before,.td-single-image-style-circle-border-shadow .td_single_image_bg:after:before,.td-single-image-style-round-outline .td_single_image_bg:after,.td-single-image-style-round-border-shadow .td_single_image_bg:after,.td-single-image-style-circle-outline .td_single_image_bg:after,.td-single-image-style-circle-border-shadow .td_single_image_bg:after,.td-single-image-style-round-outline .td_single_image_bg:before:after,.td-single-image-style-round-border-shadow .td_single_image_bg:before:after,.td-single-image-style-circle-outline .td_single_image_bg:before:after,.td-single-image-style-circle-border-shadow .td_single_image_bg:before:after,.td-single-image-style-round-outline .td_single_image_bg:after:after,.td-single-image-style-round-border-shadow .td_single_image_bg:after:after,.td-single-image-style-circle-outline .td_single_image_bg:after:after,.td-single-image-style-circle-border-shadow .td_single_image_bg:after:after{border-radius:50%}.td-single-image-style-circle .td_single_image_bg,.td-single-image-style-circle-border .td_single_image_bg,.td-single-image-style-circle-outline .td_single_image_bg,.td-single-image-style-circle-shadow .td_single_image_bg,.td-single-image-style-circle-border-shadow .td_single_image_bg{height:0;padding-bottom:100%}.vc_single_image .td_single_image_bg{width:100%;display:block;background-size:cover}.tdi_115 .td_single_image_bg{height:40px;padding-bottom:0;background-repeat:no-repeat;background-position:center top}body .tdi_115{width:100%}body .tdi_115 .td_single_image_bg{background-size:contain}.tdi_115:hover .td_single_image_bg:before{opacity:0}@media (max-width:767px){.td-stretch-content .td_block_single_image{margin-right:-20px;margin-left:-20px}}@media (max-width:767px){.td-single-image-style-border,.td-single-image-style-round-border,.td-single-image-style-circle-border,.td-single-image-style-outline,.td-single-image-style-bordered-shadow,.td-single-image-style-round-outline,.td-single-image-style-round-border-shadow,.td-single-image-style-circle-outline,.td-single-image-style-circle-border-shadow{margin-bottom:32px}}</style></div><div class="wpb_wrapper td_block_single_image td_block_wrap td_block_wrap vc_single_image tdi_116 td-single-image- td-pb-border-top td_block_template_2 " data-td-block-uid="tdi_116"><a data-bg="https://assets.codeguru.com/uploads/2021/01/eweekfooter.png" class="td_single_image_bg rocket-lazyload" style="" href="https://www.eweek.com/" target="_blank" ></a> <style>@media (max-width:767px){.tdi_116{margin-right:auto!important;margin-left:auto!important}}</style> <style>.tdi_116 .td_single_image_bg{height:40px;padding-bottom:0;background-repeat:no-repeat;background-position:center top}body .tdi_116{width:100%}body .tdi_116 .td_single_image_bg{background-size:contain}.tdi_116:hover .td_single_image_bg:before{opacity:0}</style></div></div></div><div class="vc_column tdi_118 wpb_column vc_column_container tdc-column td-pb-span3"> <style scoped>.tdi_118{vertical-align:baseline}.tdi_118>.wpb_wrapper,.tdi_118>.wpb_wrapper>.tdc-elements{display:block}.tdi_118>.wpb_wrapper>.tdc-elements{width:100%}.tdi_118>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_118>.wpb_wrapper{width:auto;height:auto}</style><div class="wpb_wrapper" ><div class="wpb_wrapper td_block_single_image td_block_wrap td_block_wrap vc_single_image tdi_119 td-single-image- td-pb-border-top td_block_template_2 " data-td-block-uid="tdi_119"><a data-bg="https://assets.codeguru.com/uploads/2021/01/datamationwhitefooter.png" class="td_single_image_bg rocket-lazyload" style="" href="https://www.datamation.com/" target="_blank" ></a> <style>@media (max-width:767px){.tdi_119{margin-right:auto!important;margin-left:auto!important}}</style> <style>.tdi_119 .td_single_image_bg{height:40px;padding-bottom:0;background-repeat:no-repeat;background-position:center top}body .tdi_119{width:100%}body .tdi_119 .td_single_image_bg{background-size:contain}.tdi_119:hover .td_single_image_bg:before{opacity:0}</style></div><div class="wpb_wrapper td_block_single_image td_block_wrap td_block_wrap vc_single_image tdi_120 td-single-image- td-pb-border-top td_block_template_2 " data-td-block-uid="tdi_120"><a data-bg="https://assets.codeguru.com/uploads/2021/01/PMcomwhitefooter-09.png" class="td_single_image_bg rocket-lazyload" style="" href="https://project-management.com/" target="_blank" ></a> <style>@media (max-width:767px){.tdi_120{margin-right:auto!important;margin-left:auto!important}}</style> <style>.tdi_120 .td_single_image_bg{height:45px;padding-bottom:0;background-repeat:no-repeat;background-position:center top}body .tdi_120{width:100%}body .tdi_120 .td_single_image_bg{background-size:contain}.tdi_120:hover .td_single_image_bg:before{opacity:0}</style></div></div></div><div class="vc_column tdi_122 wpb_column vc_column_container tdc-column td-pb-span3"> <style scoped>.tdi_122{vertical-align:baseline}.tdi_122>.wpb_wrapper,.tdi_122>.wpb_wrapper>.tdc-elements{display:block}.tdi_122>.wpb_wrapper>.tdc-elements{width:100%}.tdi_122>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_122>.wpb_wrapper{width:auto;height:auto}</style><div class="wpb_wrapper" ><div class="wpb_wrapper td_block_single_image td_block_wrap td_block_wrap vc_single_image tdi_123 td-single-image- td-pb-border-top td_block_template_2 " data-td-block-uid="tdi_123"><a data-bg="https://assets.codeguru.com/uploads/2021/01/webowhitefooter.png" class="td_single_image_bg rocket-lazyload" style="" href="https://www.webopedia.com/" target="_blank" ></a> <style>@media (max-width:767px){.tdi_123{margin-right:auto!important;margin-left:auto!important}}</style> <style>.tdi_123 .td_single_image_bg{height:35px;padding-bottom:0;background-repeat:no-repeat;background-position:center top}body .tdi_123{width:100%}body .tdi_123 .td_single_image_bg{background-size:contain}.tdi_123:hover .td_single_image_bg:before{opacity:0}</style></div><div class="wpb_wrapper td_block_single_image td_block_wrap td_block_wrap vc_single_image tdi_124 td-single-image- td-pb-border-top td_block_template_2 " data-td-block-uid="tdi_124"><a data-bg="https://assets.codeguru.com/uploads/2021/01/esecuritywhitefooter.png" class="td_single_image_bg rocket-lazyload" style="" href="https://www.esecurityplanet.com/" target="_blank" ></a> <style>@media (max-width:767px){.tdi_124{margin-right:auto!important;margin-left:auto!important}}</style> <style>.tdi_124 .td_single_image_bg{height:45px;padding-bottom:0;background-repeat:no-repeat;background-position:center top}body .tdi_124{width:100%}body .tdi_124 .td_single_image_bg{background-size:contain}.tdi_124:hover .td_single_image_bg:before{opacity:0}</style></div></div></div><div class="vc_column tdi_126 wpb_column vc_column_container tdc-column td-pb-span3"> <style scoped>.tdi_126{vertical-align:baseline}.tdi_126>.wpb_wrapper,.tdi_126>.wpb_wrapper>.tdc-elements{display:block}.tdi_126>.wpb_wrapper>.tdc-elements{width:100%}.tdi_126>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_126>.wpb_wrapper{width:auto;height:auto}</style><div class="wpb_wrapper" ><div class="wpb_wrapper td_block_single_image td_block_wrap td_block_wrap vc_single_image tdi_127 td-single-image- td-pb-border-top td_block_template_2 " data-td-block-uid="tdi_127"><a data-bg="https://assets.codeguru.com/uploads/2021/01/serverwatchwhitefooter-10.png" class="td_single_image_bg rocket-lazyload" style="" href="https://www.serverwatch.com/" target="_blank" ></a> <style>@media (max-width:767px){.tdi_127{margin-right:auto!important;margin-left:auto!important}}</style> <style>.tdi_127 .td_single_image_bg{height:50px;padding-bottom:0;background-repeat:no-repeat;background-position:center top}body .tdi_127{width:100%}body .tdi_127 .td_single_image_bg{background-size:contain}.tdi_127:hover .td_single_image_bg:before{opacity:0}</style></div><div class="wpb_wrapper td_block_single_image td_block_wrap td_block_wrap vc_single_image tdi_128 td-single-image- td-pb-border-top td_block_template_2 " data-td-block-uid="tdi_128"><a data-bg="https://assets.codeguru.com/uploads/2021/01/ITBEwhitefooter-copy.png" class="td_single_image_bg rocket-lazyload" style="" href="https://www.itbusinessedge.com/" target="_blank" ></a> <style>@media (max-width:767px){.tdi_128{margin-right:auto!important;margin-left:auto!important}}</style> <style>.tdi_128 .td_single_image_bg{height:45px;padding-bottom:0;background-repeat:no-repeat;background-position:center top}body .tdi_128{width:100%}body .tdi_128 .td_single_image_bg{background-size:contain}.tdi_128:hover .td_single_image_bg:before{opacity:0}</style></div></div></div></div></div><div id="tdi_129" class="tdc-row stretch_row_1400 td-stretch-content"><div class="vc_row tdi_130 wpb_row td-pb-row" > <style scoped>.tdi_130,.tdi_130 .tdc-columns{min-height:0}.tdi_130,.tdi_130 .tdc-columns{display:block}.tdi_130 .tdc-columns{width:100%}.tdi_130:before,.tdi_130:after{display:table}</style><div class="vc_column tdi_132 wpb_column vc_column_container tdc-column td-pb-span12"> <style scoped>.tdi_132{vertical-align:baseline}.tdi_132>.wpb_wrapper,.tdi_132>.wpb_wrapper>.tdc-elements{display:block}.tdi_132>.wpb_wrapper>.tdc-elements{width:100%}.tdi_132>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_132>.wpb_wrapper{width:auto;height:auto}</style><div class="wpb_wrapper" ><div class="wpb_wrapper td_block_separator td_block_wrap vc_separator tdi_134 td_separator_solid td_separator_center"><span style="border-color:#EBEBEB;border-width:1px;width:100%;"></span> <style scoped>.tdi_134{margin-top:15px!important}</style></div><div class="vc_row_inner tdi_136 vc_row vc_inner wpb_row td-pb-row" > <style scoped>.tdi_136{position:relative!important;top:0;transform:none;-webkit-transform:none}.tdi_136,.tdi_136 .tdc-inner-columns{display:block}.tdi_136 .tdc-inner-columns{width:100%}</style><div class="vc_column_inner tdi_138 wpb_column vc_column_container tdc-inner-column td-pb-span12"> <style scoped>.tdi_138{vertical-align:baseline}.tdi_138 .vc_column-inner>.wpb_wrapper,.tdi_138 .vc_column-inner>.wpb_wrapper .tdc-elements{display:block}.tdi_138 .vc_column-inner>.wpb_wrapper .tdc-elements{width:100%}</style><div class="vc_column-inner"><div class="wpb_wrapper" ><div class="td_block_wrap tdb_header_menu tdi_139 tds_menu_active1 tds_menu_sub_active1 td-pb-border-top td_block_template_2 tdb-header-align" data-td-block-uid="tdi_139" style=" z-index: 999;"> <style>.tdi_139 .td_block_inner{text-align:center}.tdi_139 .tdb-menu>li .tdb-menu-sep,.tdi_139 .tdb-menu-items-dropdown .tdb-menu-sep{top:-1px}.tdi_139 .tdb-menu>li>a .tdb-sub-menu-icon,.tdi_139 .td-subcat-more .tdb-menu-more-subicon{top:-1px}.tdi_139 .td-subcat-more .tdb-menu-more-icon{top:0px}.tdi_139 .tdb-menu>li>a,.tdi_139 .td-subcat-more{color:#ffffff}.tdi_139 .tdb-menu>li>a .tdb-sub-menu-icon-svg svg,.tdi_139 .tdb-menu>li>a .tdb-sub-menu-icon-svg svg *,.tdi_139 .td-subcat-more .tdb-menu-more-subicon-svg svg,.tdi_139 .td-subcat-more .tdb-menu-more-subicon-svg svg *,.tdi_139 .td-subcat-more .tdb-menu-more-icon-svg,.tdi_139 .td-subcat-more .tdb-menu-more-icon-svg *{fill:#ffffff}.tdi_139 .tdb-menu>li>a,.tdi_139 .td-subcat-more,.tdi_139 .td-subcat-more>.tdb-menu-item-text{font-family:Montserrat!important;font-size:14px!important;font-weight:600!important}.tdi_139 .tdb-normal-menu ul .tdb-menu-item>a .tdb-sub-menu-icon,.tdi_139 .td-pulldown-filter-list .tdb-menu-item>a .tdb-sub-menu-icon{right:0;margin-top:1px}.tdi_139 .tdb-menu .tdb-normal-menu ul,.tdi_139 .td-pulldown-filter-list,.tdi_139 .td-pulldown-filter-list .sub-menu{box-shadow:1px 1px 4px 0px rgba(0,0,0,0.15)}.tdi_139 .tdb-menu .tdb-mega-menu .sub-menu>li{box-shadow:0px 2px 6px 0px rgba(0,0,0,0.1)}@media (max-width:767px){.tdi_139 .tdb-menu>li>a,.tdi_139 .td-subcat-more,.tdi_139 .td-subcat-more>.tdb-menu-item-text{font-size:10px!important}}</style> <style>.tdi_139 .tdb-menu>li>a:after,.tdi_139 .tdb-menu-items-dropdown .td-subcat-more:after{background-color:#238fee;bottom:0px}</style><div id=tdi_139 class="td_block_inner td-fix-index"><div class="tdb-main-sub-icon-fake"><i class="tdb-sub-menu-icon td-icon-down tdb-main-sub-menu-icon"></i></div><div class="tdb-sub-icon-fake"><i class="tdb-sub-menu-icon td-icon-right-arrow"></i></div><ul id="menu-footer-menu-2" class="tdb-block-menu tdb-menu tdb-menu-items-visible"><li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-privacy-policy tdb-cur-menu-item menu-item-first tdb-menu-item-button tdb-menu-item tdb-normal-menu menu-item-107"><a href="https://www.codeguru.com/privacy-policy/"><div class="tdb-menu-item-text">Privacy Policy</div></a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom tdb-menu-item-button tdb-menu-item tdb-normal-menu menu-item-108"><a href="https://technologyadvice.com/terms-conditions/"><div class="tdb-menu-item-text">Terms</div></a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom tdb-menu-item-button tdb-menu-item tdb-normal-menu menu-item-109"><a href="https://technologyadvice.com/about-us/"><div class="tdb-menu-item-text">About</div></a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom tdb-menu-item-button tdb-menu-item tdb-normal-menu menu-item-110"><a href="https://technologyadvice.com/contact-us/"><div class="tdb-menu-item-text">Contact</div></a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom tdb-menu-item-button tdb-menu-item tdb-normal-menu menu-item-111"><a href="https://solutions.technologyadvice.com/advertise-on-codeguru/?utm_source=codeguru&utm_medium=portfolio_footer&utm_campaign=advertise_contact-us"><div class="tdb-menu-item-text">Advertise</div></a></li> <li class="menu-item menu-item-type-custom menu-item-object-custom tdb-menu-item-button tdb-menu-item tdb-normal-menu menu-item-112"><a href="https://technologyadvice.com/privacy-policy/ccpa-opt-out-form/"><div class="tdb-menu-item-text">California – Do Not Sell My Information</div></a></li> </ul></div></div></div></div></div></div><div class="tdm_block td_block_wrap tdm_block_column_content tdi_142 tdm-content-horiz-center td-pb-border-top td_block_template_2" data-td-block-uid="tdi_142" > <style>.tdi_142{margin-top:20px!important;margin-bottom:20px!important}</style> <style>.tdm_block_column_content .tdm-image-holder{position:relative;display:block;height:0;margin-bottom:24px;padding-bottom:70%}.tdm_block_column_content .tdm-image-holder:hover .tdm-hover-img{opacity:1}.tdm_block_column_content .tdm-image-holder>div{position:absolute;top:0;left:0;width:100%;height:100%;background-repeat:no-repeat;background-position:center center;background-size:cover}.tdm_block_column_content .tdm-hover-img{opacity:0;-webkit-transition:all 0.4s ease-in-out;transition:all 0.4s ease-in-out}.tdm_block_column_content:hover .tdm-col-content-title-url .tdm-title{color:var(--td_theme_color,#4db2ec)}.tdm_block_column_content .tdm-title-xxsm,.tdm_block_column_content .tdm-title-xsm{margin-bottom:20px}.tdm_block_column_content .tdm-title-md{margin-bottom:14px}.tdm_block_column_content .tdm-title-bg{margin-bottom:16px}.tdm_block_column_content .tdm-descr{margin-bottom:0}.tdm_block_column_content .tds-button{margin-top:25px}.tdi_142 .tdm-descr{color:#ffffff;font-size:11px!important;line-height:1.2!important}@media (max-width:767px){.tdm_block_column_content .tdm-image-holder{margin-bottom:14px}}</style><div class="tdm-col-content-info"><a href="#" target="_blank" class="tdm-col-content-title-url"></a><p class="tdm-descr td-fix-index">Property of TechnologyAdvice.<br> © 2023 TechnologyAdvice. All Rights Reserved<br><br> Advertiser Disclosure: Some of the products that appear on this site are from companies from which TechnologyAdvice receives compensation. This compensation may impact how and where products appear on this site including, for example, the order in which they appear. TechnologyAdvice does not include all companies or all types of products available in the marketplace.</p></div></div><div class="wpb_wrapper td_block_wrap vc_raw_html tdi_144 choice-footer-msg"> <style scoped>.tdi_144{margin-top:0px!important;margin-bottom:10px!important;padding-top:0px!important;border-style:solid!important;border-color:#888888!important;border-width:0px 0px 0px 0px!important}</style><div class="td-fix-index"><div id="choice-footer-msg" style="color:#ffffff;text-align:center;"> </div></div></div><div class="wpb_wrapper td_block_empty_space td_block_wrap vc_empty_space tdi_146 " style="height: 120px"></div></div></div></div></div><div id="tdi_147" class="tdc-row"><div class="vc_row tdi_148 wpb_row td-pb-row" > <style scoped>.tdi_148,.tdi_148 .tdc-columns{min-height:0}.tdi_148,.tdi_148 .tdc-columns{display:block}.tdi_148 .tdc-columns{width:100%}.tdi_148:before,.tdi_148:after{display:table}</style><div class="vc_column tdi_150 wpb_column vc_column_container tdc-column td-pb-span12"> <style scoped>.tdi_150{vertical-align:baseline}.tdi_150>.wpb_wrapper,.tdi_150>.wpb_wrapper>.tdc-elements{display:block}.tdi_150>.wpb_wrapper>.tdc-elements{width:100%}.tdi_150>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_150>.wpb_wrapper{width:auto;height:auto}</style><div class="wpb_wrapper" ></div></div></div></div></div></div> </div> </div> </div><!--close td-outer-wrap--> <!-- Google Tag Manager (noscript) --> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-NR3XXWX8" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <!-- End Google Tag Manager (noscript) --> <!-- Start: GAM Ad Slot Render | CodeGuru Native Right Rail Ads --> <div id="native-rr-article" style="height: 0; width: 0;"> <script nowprocket> window.googletag = window.googletag || { cmd: [] }; window.googletag.cmd.push(function() { googletag.display("native-rr-article"); }); (function() { var rightRailReplacedPost = document.querySelector('.native-rr .td_block_inner .td_module_flex:nth-child(3) .td-module-container'); var rightRailContent = document.getElementById('native-rr-article'); rightRailReplacedPost.parentNode.replaceChild(rightRailContent, rightRailReplacedPost); rightRailContent.style.height = 'auto'; rightRailContent.style.width = '100%'; })(); </script> </div> <!-- End: GAM Ad Slot Render | CodeGuru Native Right Rail Ads --><!-- Start: GAM Ad Slot Render | CodeGuru Native BOAP Ads --> <div id="native-boap" style="width: 0; height: 0;"> <script nowprocket> window.googletag = window.googletag || { cmd: [] }; window.googletag.cmd.push(function() { googletag.display("native-boap"); }); (function() { var boapAfterContent = document.querySelector(".native-boap-before"); var boapContent = document.getElementById('native-boap'); boapAfterContent.appendChild(boapContent); boapContent.style.height = 'auto'; boapContent.style.width = '100%'; })(); </script> </div> <!-- End: GAM Ad Slot Render | CodeGuru Native BOAP Ads --> <!-- Theme: Newspaper by tagDiv.com 2024 Version: 12.6.8 (rara) Deploy mode: deploy uid: 6747526b5baad --> <!-- Custom css from theme panel --> <style type="text/css" media="screen">.td-aj-search-results>.td_module_wrap>.td-module-container>.td-image-container{display:none!important}</style> <link rel='preload' as='style' onload="this.onload=null;this.rel='stylesheet'" id='ta-campaign-plugin' href='https://www.codeguru.com/wp-content/plugins/ta-campaign-plugin/assets/css/dist/styles.css?ver=2.1.14' type='text/css' media='all' /> <noscript><link rel='stylesheet' id='ta-campaign-plugin' href='https://www.codeguru.com/wp-content/plugins/ta-campaign-plugin/assets/css/dist/styles.css?ver=2.1.14' type='text/css' media='all'></noscript><script data-src="data:text/javascript;base64,Ci8qIDwhW0NEQVRBWyAqLwp2YXIgaW50ZW50Y2xpY2tzX2FqYXggPSB7InVybCI6Imh0dHBzOlwvXC93d3cuY29kZWd1cnUuY29tXC93cFwvd3AtYWRtaW5cL2FkbWluLWFqYXgucGhwIn07Ci8qIF1dPiAqLwo=" data-type="lazy" type="text/javascript" id="icp_js-js-extra"></script> <script data-src="https://www.codeguru.com/wp-content/plugins/ta-intentclicks/includes/js/scripts.js?ver=1.20.2" data-type="lazy" type="text/javascript" id="icp_js-js"></script> <script type="text/javascript" src="https://www.codeguru.com/wp-content/plugins/td-composer/legacy/Newspaper/js/tagdiv_theme.min.js?ver=12.6.8" id="td-site-min-js"></script> <script data-src="https://www.codeguru.com/wp-content/plugins/td-composer/legacy/Newspaper/js/tdPostImages.js?ver=12.6.8" data-type="lazy" type="text/javascript" id="tdPostImages-js"></script> <script data-src="https://www.codeguru.com/wp-content/plugins/td-composer/legacy/Newspaper/js/tdSocialSharing.js?ver=12.6.8" data-type="lazy" type="text/javascript" id="tdSocialSharing-js"></script> <script data-src="https://www.codeguru.com/wp-content/plugins/td-composer/legacy/Newspaper/js/tdModalPostImages.js?ver=12.6.8" data-type="lazy" type="text/javascript" id="tdModalPostImages-js"></script> <script data-src="https://www.codeguru.com/wp/wp-includes/js/comment-reply.min.js?ver=6.6.2" data-type="lazy" type="text/javascript" id="comment-reply-js" async="async" data-wp-strategy="async"></script> <script data-src="https://www.codeguru.com/wp-content/plugins/td-cloud-library/assets/js/js_files_for_front.min.js?ver=b33652f2535d2f3812f59e306e26300d" data-type="lazy" type="text/javascript" id="tdb_js_files_for_front-js"></script> <script data-src="https://www.codeguru.com/wp-content/plugins/ta-campaign-plugin/assets/js/dist/ouibounce.js?ver=2.1.14" data-type="lazy" type="text/javascript" id="ta-campaign-ouibounce-js"></script> <script data-src="https://www.codeguru.com/wp-content/plugins/ta-campaign-plugin/assets/js/dist/ta-campaign-public.js?ver=2.1.14" data-type="lazy" type="text/javascript" id="ta-campaign-script-js"></script> <script type="text/javascript" id="ta-delay-scripts">(function(){try{window.setTimeout(function(){function t(){n||(n=!0,e(),o.forEach(function(e){window.removeEventListener(e,t,{once:!0,passive:!0})}))}function e(){document.querySelectorAll("script[data-type='lazy']").forEach(function(t){t.setAttribute("src",t.getAttribute("data-src"))})}var o=["mouseover","keydown","touchmove","touchstart","scroll"];o.forEach(function(e){window.addEventListener(e,t,{once:!0,passive:!0})});var n=!1},1e3)}catch(t){}})();</script> <div class="wp-ads-sticky-footer" id="wp-ads-616445861"><div id="bottom-footer-fixed-slot"> <script data-src="data:text/javascript;base64,DQogICAgZnVuY3Rpb24gY2xvc2VTdGlja3lGb290ZXIoKSB7DQogICAgICB2YXIgc3RpY2t5Qm90dG9tQ2xvc2UgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCdld2Vlay1jbG9zZS1idXR0b24nKTsNCiAgICAgIHN0aWNreUJvdHRvbUNsb3NlWzBdLnBhcmVudE5vZGUucmVtb3ZlKCk7DQogICAgfQ0KICA=" data-type="lazy"></script> <span class="eweek-close-button" onclick="closeStickyFooter()" title="close" style="width: 15px; height: 15px; background: #fff; position: relative; line-height: 15px; text-align: center; cursor: pointer; z-index: 10000;right:-15px;float: right; margin-left: -15px;">×</span> <!-- Start: GAM Ad Slot Render | Codeguru Sticky Bottom --> <div id="sticky-bottom" style="max-width: 1020px; min-width: 300px; width: auto; text-align:center; min-height: 50px; max-height: 90px; height: auto; background-color: #ffffff; border:1px solid #efefef;"> <script nowprocket> window.googletag = window.googletag || { cmd: [] }; window.googletag.cmd.push(function() { googletag.display("sticky-bottom"); }); </script> </div> <!-- End: GAM Ad Slot Render | Codeguru Sticky Bottom --> </div></div><script data-src="data:text/javascript;base64,d2luZG93LmFkdmFkc19hZG1pbl9iYXJfaXRlbXMgPSBbeyJ0aXRsZSI6IkRhdGFsYXllciAmYW1wOyBHQU0gQ29yZSIsInR5cGUiOiJhZCJ9LHsidGl0bGUiOiJCZWZvcmUgQ2xvc2luZyBIZWFkIFRhZyIsInR5cGUiOiJwbGFjZW1lbnQifSx7InRpdGxlIjoiQ29kZWd1cnUgfCBTT0FQIENhdGVnb3J5IFx1MjAxMyBBZCBTbG90IERlZmluaXRpb25zIiwidHlwZSI6ImFkIn0seyJ0aXRsZSI6IlNPQVAgQ2F0ZWdvcnkgfCBBZCBTbG90IERlZmluaXRpb25zIFBsYWNlbWVudCIsInR5cGUiOiJwbGFjZW1lbnQifSx7InRpdGxlIjoiQ29kZWd1cnUgfCBUZXN0IER5bmFtaWMgU2xvdCBcdTIwMTMgQWQgU2xvdCBEZWZpbml0aW9ucyIsInR5cGUiOiJhZCJ9LHsidGl0bGUiOiJDb2RlZ3VydSB8IElubGluZSBUb3AgUmVuZGVyIiwidHlwZSI6ImFkIn0seyJ0aXRsZSI6IklubGluZSBUb3AiLCJ0eXBlIjoicGxhY2VtZW50In0seyJ0aXRsZSI6IkNvZGVndXJ1IHwgU3RpY2t5IFJhaWwgUmVuZGVyIiwidHlwZSI6ImFkIn0seyJ0aXRsZSI6IlN0aWNreSBSYWlsIiwidHlwZSI6InBsYWNlbWVudCJ9LHsidGl0bGUiOiJDb2RlR3VydSB8IE5hdGl2ZSBSUiAtIFJlbmRlciIsInR5cGUiOiJhZCJ9LHsidGl0bGUiOiJDb2RlR3VydSB8IE5hdGl2ZSBCT0FQIC0gUmVuZGVyIiwidHlwZSI6ImFkIn0seyJ0aXRsZSI6IkNvZGVndXJ1IHwgU3RpY2t5IEJvdHRvbSBSZW5kZXIiLCJ0eXBlIjoiYWQifSx7InRpdGxlIjoiU3RpY2t5IEZvb3RlciIsInR5cGUiOiJwbGFjZW1lbnQifV07" data-type="lazy"></script><script data-src="data:text/javascript;base64,IWZ1bmN0aW9uKCl7d2luZG93LmFkdmFuY2VkX2Fkc19yZWFkeV9xdWV1ZT13aW5kb3cuYWR2YW5jZWRfYWRzX3JlYWR5X3F1ZXVlfHxbXSxhZHZhbmNlZF9hZHNfcmVhZHlfcXVldWUucHVzaD13aW5kb3cuYWR2YW5jZWRfYWRzX3JlYWR5O2Zvcih2YXIgZD0wLGE9YWR2YW5jZWRfYWRzX3JlYWR5X3F1ZXVlLmxlbmd0aDtkPGE7ZCsrKWFkdmFuY2VkX2Fkc19yZWFkeShhZHZhbmNlZF9hZHNfcmVhZHlfcXVldWVbZF0pfSgpOw==" data-type="lazy"></script><!-- typekit fonts --><link rel='preload' as='style' onload="this.onload=null;this.rel='stylesheet'" href="https://use.typekit.net/qur0lux.css"> <script data-src="https://www.codeguru.com/wp-content/plugins/td-composer/legacy/Newspaper/js/tdToTop.js?ver=12.6.8" data-type="lazy" type="text/javascript" id="tdToTop-js"></script> <script type="text/javascript" src="https://www.codeguru.com/wp-content/plugins/td-composer/legacy/Newspaper/js/tdAjaxSearch.js?ver=12.6.8" id="tdDatei18n-js"></script> <script type="text/javascript" src="https://www.codeguru.com/wp-content/plugins/td-composer/legacy/Newspaper/js/tdStickyRow.js?ver=12.6.8" id="tdStickyRow-js"></script> <script type="text/javascript" src="https://www.codeguru.com/wp-content/plugins/td-composer/legacy/Newspaper/js/tdSmartSidebar.js?ver=12.6.8" id="tdSmartSidebar-js"></script> <script type="text/javascript" src="https://www.codeguru.com/wp-content/plugins/td-cloud-library/assets/js/tdbMenu.js?ver=b33652f2535d2f3812f59e306e26300d" id="tdbMenu-js"></script> <script data-src="https://www.codeguru.com/wp-content/plugins/td-composer/legacy/Newspaper/js/tdLoadingBox.js?ver=12.6.8" data-type="lazy" type="text/javascript" id="tdLoadingBox-js"></script> <!-- JS generated by theme --> <script type="text/javascript" id="td-generated-footer-js"> /* global jQuery:{} */ jQuery().ready( function () { tdAjaxSearch._is_mob_live_search_active = false; }); /* global jQuery:{} */ jQuery(document).ready( function () { var tdbMenuItem = new tdbMenu.item(); tdbMenuItem.blockUid = 'tdi_21'; tdbMenuItem.jqueryObj = jQuery('.tdi_21'); tdbMenuItem.blockAtts = '{"main_sub_tdicon":"td-icon-down","sub_tdicon":"td-icon-right-arrow","mm_align_horiz":"content-horiz-center","modules_on_row_regular":"20%","modules_on_row_cats":"25%","image_size":"td_324x400","modules_category":"image","show_excerpt":"none","show_com":"none","show_date":"none","show_author":"none","mm_sub_align_horiz":"content-horiz-right","mm_elem_align_horiz":"content-horiz-right","inline":"yes","mm_align_screen":"yes","f_elem_font_size":"eyJwb3J0cmFpdCI6IjExIiwiYWxsIjoiMTMifQ==","elem_padd":"eyJwb3J0cmFpdCI6IjAgOXB4In0=","menu_id":"30626","text_color":"#ffffff","tds_menu_active":"tds_menu_active3","f_elem_font_line_height":"eyJwb3J0cmFpdCI6IjQ4cHgifQ==","sub_align_horiz":"content-horiz-left","tdc_css":"eyJhbGwiOnsiZGlzcGxheSI6IiJ9fQ==","align_horiz":"content-horiz-left","all_underline_color":"","float_right":"yes","tds_menu_active1-line_color":"eyJ0eXBlIjoiZ3JhZGllbnQiLCJjb2xvcjEiOiIjMjM4ZmVlIiwiY29sb3IyIjoiIzI2YmRlOSIsIm1peGVkQ29sb3JzIjpbXSwiZGVncmVlIjoiMTIwIiwiY3NzIjoiYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoMTIwZGVnLCMyNmJkZTksIzIzOGZlZSk7YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEyMGRlZywjMjZiZGU5LCMyMzhmZWUpOyIsImNzc1BhcmFtcyI6IjEyMGRlZywjMjZiZGU5LCMyMzhmZWUifQ==","f_elem_font_family":"tk_1","f_elem_font_transform":"capitalize","tds_menu_sub_active":"tds_menu_sub_active1","tds_menu_active3-bg_color":"#238fee","tds_menu_active3-text_color_h":"#ffffff","f_sub_elem_font_family":"tk_1","f_sub_elem_font_size":"15","f_sub_elem_font_transform":"capitalize","f_sub_elem_font_weight":"700","f_sub_elem_font_spacing":"0","tds_menu_sub_active1-sub_text_color_h":"#ffffff","sub_text_color":"#151948","tds_menu_sub_active1-sub_elem_bg_color_h":"#b361e0","sub_bg_color":"#ffffff","width":"100%","block_type":"tdb_header_menu","show_subcat":"","show_mega":"","show_mega_cats":"","mob_load":"","separator":"","more":"","elem_space":"","main_sub_icon_size":"","main_sub_icon_space":"","main_sub_icon_align":"-1","sep_tdicon":"","sep_icon_size":"","sep_icon_space":"","sep_icon_align":"-1","more_txt":"","more_tdicon":"","more_icon_size":"","more_icon_align":"0","sub_width":"","sub_first_left":"","sub_rest_top":"","sub_padd":"","sub_elem_inline":"","sub_elem_space":"","sub_elem_padd":"","sub_elem_radius":"0","sub_icon_size":"","sub_icon_space":"","sub_icon_pos":"","sub_icon_align":"1","mm_width":"","mm_content_width":"","mm_height":"","mm_padd":"","mm_radius":"","mm_offset":"","mm_posts_limit":"5","mm_subcats_posts_limit":"4","mm_child_cats":"","open_in_new_window":"","mm_ajax_preloading":"","mm_hide_all_item":"","mm_sub_width":"","mm_sub_padd":"","mm_sub_border":"","mm_sub_inline":"","mm_elem_order":"name","mm_elem_space":"","mm_elem_padd":"","mm_elem_border":"","mm_elem_border_a":"","mm_elem_border_rad":"","mc1_tl":"","mc1_title_tag":"","mc1_el":"","modules_gap":"","m_padding":"","all_modules_space":"36","modules_border_size":"","modules_border_style":"","modules_border_color":"#eaeaea","modules_divider":"","modules_divider_color":"#eaeaea","h_effect":"","image_alignment":"50","image_height":"","image_width":"","image_floated":"no_float","image_radius":"","hide_image":"","video_icon":"","show_vid_t":"block","vid_t_margin":"","vid_t_padding":"","vid_t_color":"","vid_t_bg_color":"","f_vid_time_font_header":"","f_vid_time_font_title":"Video duration text","f_vid_time_font_settings":"","f_vid_time_font_family":"","f_vid_time_font_size":"","f_vid_time_font_line_height":"","f_vid_time_font_style":"","f_vid_time_font_weight":"","f_vid_time_font_transform":"","f_vid_time_font_spacing":"","f_vid_time_":"","show_audio":"block","hide_audio":"","art_audio":"","art_audio_size":"1","meta_info_align":"","meta_info_horiz":"content-horiz-left","meta_width":"","meta_margin":"","meta_padding":"","art_title":"","meta_info_border_size":"","meta_info_border_style":"","meta_info_border_color":"#eaeaea","modules_category_margin":"","modules_category_padding":"","modules_cat_border":"","modules_category_radius":"0","show_cat":"inline-block","modules_extra_cat":"","author_photo":"","author_photo_size":"","author_photo_space":"","author_photo_radius":"","show_modified_date":"","time_ago":"","time_ago_add_txt":"ago","time_ago_txt_pos":"","art_excerpt":"","excerpt_col":"1","excerpt_gap":"","excerpt_middle":"","show_review":"inline-block","review_space":"","review_size":"2.5","review_distance":"","show_pagination":"","pag_space":"","pag_padding":"","pag_border_width":"","pag_border_radius":"","prev_tdicon":"","next_tdicon":"","pag_icons_size":"","main_sub_color":"","sep_color":"","more_icon_color":"","hover_opacity":"","f_elem_font_header":"","f_elem_font_title":"Elements text","f_elem_font_settings":"","f_elem_font_style":"","f_elem_font_weight":"","f_elem_font_spacing":"","f_elem_":"","sub_border_size":"","sub_border_color":"","sub_border_radius":"","sub_elem_bg_color":"","sub_color":"","sub_shadow_shadow_header":"","sub_shadow_shadow_title":"Shadow","sub_shadow_shadow_size":"","sub_shadow_shadow_offset_horizontal":"","sub_shadow_shadow_offset_vertical":"","sub_shadow_shadow_spread":"","sub_shadow_shadow_color":"","f_sub_elem_font_header":"","f_sub_elem_font_title":"Elements text","f_sub_elem_font_settings":"","f_sub_elem_font_line_height":"","f_sub_elem_font_style":"","f_sub_elem_":"","mm_bg":"","mm_content_bg":"","mm_border_size":"","mm_border_color":"","mm_shadow_shadow_header":"","mm_shadow_shadow_title":"Shadow","mm_shadow_shadow_size":"","mm_shadow_shadow_offset_horizontal":"","mm_shadow_shadow_offset_vertical":"","mm_shadow_shadow_spread":"","mm_shadow_shadow_color":"","mm_subcats_bg":"","mm_subcats_border_color":"","mm_elem_color":"","mm_elem_color_a":"","mm_elem_bg":"","mm_elem_bg_a":"","mm_elem_border_color":"","mm_elem_border_color_a":"","mm_elem_shadow_shadow_header":"","mm_elem_shadow_shadow_title":"Elements shadow","mm_elem_shadow_shadow_size":"","mm_elem_shadow_shadow_offset_horizontal":"","mm_elem_shadow_shadow_offset_vertical":"","mm_elem_shadow_shadow_spread":"","mm_elem_shadow_shadow_color":"","f_mm_sub_font_header":"","f_mm_sub_font_title":"Sub categories elements","f_mm_sub_font_settings":"","f_mm_sub_font_family":"","f_mm_sub_font_size":"","f_mm_sub_font_line_height":"","f_mm_sub_font_style":"","f_mm_sub_font_weight":"","f_mm_sub_font_transform":"","f_mm_sub_font_spacing":"","f_mm_sub_":"","m_bg":"","color_overlay":"","shadow_shadow_header":"","shadow_shadow_title":"Module Shadow","shadow_shadow_size":"","shadow_shadow_offset_horizontal":"","shadow_shadow_offset_vertical":"","shadow_shadow_spread":"","shadow_shadow_color":"","title_txt":"","title_txt_hover":"","all_underline_height":"","cat_bg":"","cat_bg_hover":"","cat_txt":"","cat_txt_hover":"","cat_border":"","cat_border_hover":"","meta_bg":"","author_txt":"","author_txt_hover":"","date_txt":"","ex_txt":"","com_bg":"","com_txt":"","rev_txt":"","shadow_m_shadow_header":"","shadow_m_shadow_title":"Meta info shadow","shadow_m_shadow_size":"","shadow_m_shadow_offset_horizontal":"","shadow_m_shadow_offset_vertical":"","shadow_m_shadow_spread":"","shadow_m_shadow_color":"","audio_btn_color":"","audio_time_color":"","audio_bar_color":"","audio_bar_curr_color":"","pag_text":"","pag_h_text":"","pag_bg":"","pag_h_bg":"","pag_border":"","pag_h_border":"","f_title_font_header":"","f_title_font_title":"Article title","f_title_font_settings":"","f_title_font_family":"","f_title_font_size":"","f_title_font_line_height":"","f_title_font_style":"","f_title_font_weight":"","f_title_font_transform":"","f_title_font_spacing":"","f_title_":"","f_cat_font_title":"Article category tag","f_cat_font_settings":"","f_cat_font_family":"","f_cat_font_size":"","f_cat_font_line_height":"","f_cat_font_style":"","f_cat_font_weight":"","f_cat_font_transform":"","f_cat_font_spacing":"","f_cat_":"","f_meta_font_title":"Article meta info","f_meta_font_settings":"","f_meta_font_family":"","f_meta_font_size":"","f_meta_font_line_height":"","f_meta_font_style":"","f_meta_font_weight":"","f_meta_font_transform":"","f_meta_font_spacing":"","f_meta_":"","f_ex_font_title":"Article excerpt","f_ex_font_settings":"","f_ex_font_family":"","f_ex_font_size":"","f_ex_font_line_height":"","f_ex_font_style":"","f_ex_font_weight":"","f_ex_font_transform":"","f_ex_font_spacing":"","f_ex_":"","mix_color":"","mix_type":"","fe_brightness":"1","fe_contrast":"1","fe_saturate":"1","mix_color_h":"","mix_type_h":"","fe_brightness_h":"1","fe_contrast_h":"1","fe_saturate_h":"1","el_class":"","block_template_id":"","td_column_number":3,"header_color":"","ajax_pagination_infinite_stop":"","offset":"","limit":"5","td_ajax_preloading":"","td_ajax_filter_type":"","td_filter_default_txt":"","td_ajax_filter_ids":"","color_preset":"","ajax_pagination":"","ajax_pagination_next_prev_swipe":"","border_top":"","css":"","class":"tdi_21","tdc_css_class":"tdi_21","tdc_css_class_style":"tdi_21_rand_style","context":""}'; tdbMenuItem.isMegaMenuFull = true; tdbMenuItem.megaMenuLoadType = ''; tdbMenu.addItem(tdbMenuItem); }); /* global jQuery:{} */ jQuery(document).ready( function () { var tdbMenuItem = new tdbMenu.item(); tdbMenuItem.blockUid = 'tdi_139'; tdbMenuItem.jqueryObj = jQuery('.tdi_139'); tdbMenuItem.blockAtts = '{"main_sub_tdicon":"td-icon-down","sub_tdicon":"td-icon-right-arrow","mm_align_horiz":"content-horiz-center","modules_on_row_regular":"20%","modules_on_row_cats":"25%","image_size":"td_324x400","modules_category":"image","show_excerpt":"none","show_com":"none","show_date":"none","show_author":"none","mm_sub_align_horiz":"content-horiz-right","mm_elem_align_horiz":"content-horiz-right","menu_id":"526","text_color":"#ffffff","align_horiz":"content-horiz-center","f_elem_font_size":"eyJwaG9uZSI6IjEwIiwiYWxsIjoiMTQifQ==","tds_menu_active1-line_color":"#238fee","f_elem_font_family":"394","all_underline_color":"#238fee","all_underline_height":"3","f_elem_font_weight":"600","block_type":"tdb_header_menu","show_subcat":"","show_mega":"","show_mega_cats":"","mob_load":"","separator":"","width":"","inline":"","more":"","float_right":"","elem_space":"","elem_padd":"","main_sub_icon_size":"","main_sub_icon_space":"","main_sub_icon_align":"-1","sep_tdicon":"","sep_icon_size":"","sep_icon_space":"","sep_icon_align":"-1","more_txt":"","more_tdicon":"","more_icon_size":"","more_icon_align":"0","sub_width":"","sub_first_left":"","sub_rest_top":"","sub_padd":"","sub_align_horiz":"content-horiz-left","sub_elem_inline":"","sub_elem_space":"","sub_elem_padd":"","sub_elem_radius":"0","sub_icon_size":"","sub_icon_space":"","sub_icon_pos":"","sub_icon_align":"1","mm_width":"","mm_content_width":"","mm_height":"","mm_padd":"","mm_radius":"","mm_offset":"","mm_align_screen":"","mm_posts_limit":"5","mm_subcats_posts_limit":"4","mm_child_cats":"","open_in_new_window":"","mm_ajax_preloading":"","mm_hide_all_item":"","mm_sub_width":"","mm_sub_padd":"","mm_sub_border":"","mm_sub_inline":"","mm_elem_order":"name","mm_elem_space":"","mm_elem_padd":"","mm_elem_border":"","mm_elem_border_a":"","mm_elem_border_rad":"","mc1_tl":"","mc1_title_tag":"","mc1_el":"","modules_gap":"","m_padding":"","all_modules_space":"36","modules_border_size":"","modules_border_style":"","modules_border_color":"#eaeaea","modules_divider":"","modules_divider_color":"#eaeaea","h_effect":"","image_alignment":"50","image_height":"","image_width":"","image_floated":"no_float","image_radius":"","hide_image":"","video_icon":"","show_vid_t":"block","vid_t_margin":"","vid_t_padding":"","vid_t_color":"","vid_t_bg_color":"","f_vid_time_font_header":"","f_vid_time_font_title":"Video duration text","f_vid_time_font_settings":"","f_vid_time_font_family":"","f_vid_time_font_size":"","f_vid_time_font_line_height":"","f_vid_time_font_style":"","f_vid_time_font_weight":"","f_vid_time_font_transform":"","f_vid_time_font_spacing":"","f_vid_time_":"","show_audio":"block","hide_audio":"","art_audio":"","art_audio_size":"1","meta_info_align":"","meta_info_horiz":"content-horiz-left","meta_width":"","meta_margin":"","meta_padding":"","art_title":"","meta_info_border_size":"","meta_info_border_style":"","meta_info_border_color":"#eaeaea","modules_category_margin":"","modules_category_padding":"","modules_cat_border":"","modules_category_radius":"0","show_cat":"inline-block","modules_extra_cat":"","author_photo":"","author_photo_size":"","author_photo_space":"","author_photo_radius":"","show_modified_date":"","time_ago":"","time_ago_add_txt":"ago","time_ago_txt_pos":"","art_excerpt":"","excerpt_col":"1","excerpt_gap":"","excerpt_middle":"","show_review":"inline-block","review_space":"","review_size":"2.5","review_distance":"","show_pagination":"","pag_space":"","pag_padding":"","pag_border_width":"","pag_border_radius":"","prev_tdicon":"","next_tdicon":"","pag_icons_size":"","main_sub_color":"","sep_color":"","more_icon_color":"","tds_menu_active":"tds_menu_active1","hover_opacity":"","f_elem_font_header":"","f_elem_font_title":"Elements text","f_elem_font_settings":"","f_elem_font_line_height":"","f_elem_font_style":"","f_elem_font_transform":"","f_elem_font_spacing":"","f_elem_":"","sub_bg_color":"","sub_border_size":"","sub_border_color":"","sub_border_radius":"","sub_text_color":"","sub_elem_bg_color":"","sub_color":"","sub_shadow_shadow_header":"","sub_shadow_shadow_title":"Shadow","sub_shadow_shadow_size":"","sub_shadow_shadow_offset_horizontal":"","sub_shadow_shadow_offset_vertical":"","sub_shadow_shadow_spread":"","sub_shadow_shadow_color":"","tds_menu_sub_active":"tds_menu_sub_active1","f_sub_elem_font_header":"","f_sub_elem_font_title":"Elements text","f_sub_elem_font_settings":"","f_sub_elem_font_family":"","f_sub_elem_font_size":"","f_sub_elem_font_line_height":"","f_sub_elem_font_style":"","f_sub_elem_font_weight":"","f_sub_elem_font_transform":"","f_sub_elem_font_spacing":"","f_sub_elem_":"","mm_bg":"","mm_content_bg":"","mm_border_size":"","mm_border_color":"","mm_shadow_shadow_header":"","mm_shadow_shadow_title":"Shadow","mm_shadow_shadow_size":"","mm_shadow_shadow_offset_horizontal":"","mm_shadow_shadow_offset_vertical":"","mm_shadow_shadow_spread":"","mm_shadow_shadow_color":"","mm_subcats_bg":"","mm_subcats_border_color":"","mm_elem_color":"","mm_elem_color_a":"","mm_elem_bg":"","mm_elem_bg_a":"","mm_elem_border_color":"","mm_elem_border_color_a":"","mm_elem_shadow_shadow_header":"","mm_elem_shadow_shadow_title":"Elements shadow","mm_elem_shadow_shadow_size":"","mm_elem_shadow_shadow_offset_horizontal":"","mm_elem_shadow_shadow_offset_vertical":"","mm_elem_shadow_shadow_spread":"","mm_elem_shadow_shadow_color":"","f_mm_sub_font_header":"","f_mm_sub_font_title":"Sub categories elements","f_mm_sub_font_settings":"","f_mm_sub_font_family":"","f_mm_sub_font_size":"","f_mm_sub_font_line_height":"","f_mm_sub_font_style":"","f_mm_sub_font_weight":"","f_mm_sub_font_transform":"","f_mm_sub_font_spacing":"","f_mm_sub_":"","m_bg":"","color_overlay":"","shadow_shadow_header":"","shadow_shadow_title":"Module Shadow","shadow_shadow_size":"","shadow_shadow_offset_horizontal":"","shadow_shadow_offset_vertical":"","shadow_shadow_spread":"","shadow_shadow_color":"","title_txt":"","title_txt_hover":"","cat_bg":"","cat_bg_hover":"","cat_txt":"","cat_txt_hover":"","cat_border":"","cat_border_hover":"","meta_bg":"","author_txt":"","author_txt_hover":"","date_txt":"","ex_txt":"","com_bg":"","com_txt":"","rev_txt":"","shadow_m_shadow_header":"","shadow_m_shadow_title":"Meta info shadow","shadow_m_shadow_size":"","shadow_m_shadow_offset_horizontal":"","shadow_m_shadow_offset_vertical":"","shadow_m_shadow_spread":"","shadow_m_shadow_color":"","audio_btn_color":"","audio_time_color":"","audio_bar_color":"","audio_bar_curr_color":"","pag_text":"","pag_h_text":"","pag_bg":"","pag_h_bg":"","pag_border":"","pag_h_border":"","f_title_font_header":"","f_title_font_title":"Article title","f_title_font_settings":"","f_title_font_family":"","f_title_font_size":"","f_title_font_line_height":"","f_title_font_style":"","f_title_font_weight":"","f_title_font_transform":"","f_title_font_spacing":"","f_title_":"","f_cat_font_title":"Article category tag","f_cat_font_settings":"","f_cat_font_family":"","f_cat_font_size":"","f_cat_font_line_height":"","f_cat_font_style":"","f_cat_font_weight":"","f_cat_font_transform":"","f_cat_font_spacing":"","f_cat_":"","f_meta_font_title":"Article meta info","f_meta_font_settings":"","f_meta_font_family":"","f_meta_font_size":"","f_meta_font_line_height":"","f_meta_font_style":"","f_meta_font_weight":"","f_meta_font_transform":"","f_meta_font_spacing":"","f_meta_":"","f_ex_font_title":"Article excerpt","f_ex_font_settings":"","f_ex_font_family":"","f_ex_font_size":"","f_ex_font_line_height":"","f_ex_font_style":"","f_ex_font_weight":"","f_ex_font_transform":"","f_ex_font_spacing":"","f_ex_":"","mix_color":"","mix_type":"","fe_brightness":"1","fe_contrast":"1","fe_saturate":"1","mix_color_h":"","mix_type_h":"","fe_brightness_h":"1","fe_contrast_h":"1","fe_saturate_h":"1","el_class":"","tdc_css":"","block_template_id":"","td_column_number":3,"header_color":"","ajax_pagination_infinite_stop":"","offset":"","limit":"5","td_ajax_preloading":"","td_ajax_filter_type":"","td_filter_default_txt":"","td_ajax_filter_ids":"","color_preset":"","ajax_pagination":"","ajax_pagination_next_prev_swipe":"","border_top":"","css":"","class":"tdi_139","tdc_css_class":"tdi_139","tdc_css_class_style":"tdi_139_rand_style","context":""}'; tdbMenuItem.isMegaMenuParentPos = true; tdbMenuItem.megaMenuLoadType = ''; tdbMenu.addItem(tdbMenuItem); }); </script> <script data-src="data:text/javascript;base64,dmFyIHRkX3Jlc19jb250ZXh0X3JlZ2lzdGVyZWRfYXR0cz1bInN0eWxlX2dlbmVyYWxfbW9iaWxlX21lbnUiLCJzdHlsZV9nZW5lcmFsX2hlYWRlcl9hbGlnbiIsInN0eWxlX2dlbmVyYWxfaGVhZGVyX2xvZ28iLCJzdHlsZV9nZW5lcmFsX21vYmlsZV9zZWFyY2giLCJzdHlsZV9nZW5lcmFsX2lzX3N0aWNreSIsInN0eWxlX2dlbmVyYWxfaGVhZGVyX21lbnUiLCJzdHlsZV9nZW5lcmFsX21lbnVfYWN0aXZlMyIsInN0eWxlX2dlbmVyYWxfc29jaWFscyIsInN0eWxlX2dlbmVyYWxfc29jaWFsMyIsInN0eWxlX2dlbmVyYWxfc2VhcmNoX2Zvcm0iLCJzdHlsZV9nZW5lcmFsX2JyZWFkY3J1bWJzIiwic3R5bGVfZ2VuZXJhbF9zaW5nbGVfdGl0bGUiLCJzdHlsZV9nZW5lcmFsX3RpdGxlX3NpbmdsZSIsInN0eWxlX2JnX3NwYWNlIiwic3R5bGVfZ2VuZXJhbF9wb3N0X21ldGEiLCJzdHlsZV9nZW5lcmFsX3NpbmdsZV9hdXRob3IiLCJzdHlsZV9nZW5lcmFsX3NpbmdsZV9kYXRlIiwic3R5bGVfZ2VuZXJhbF9zaW5nbGVfcG9zdF9zaGFyZSIsInN0eWxlX2dlbmVyYWxfc2luZ2xlX2NvbnRlbnQiLCJzdHlsZV9nZW5lcmFsX2F1dGhvcl9ib3giLCJzdHlsZV9nZW5lcmFsX3JlbGF0ZWRfcG9zdCIsInN0eWxlX2dlbmVyYWxfaW5saW5lX3RleHQiLCJzdHlsZV9nZW5lcmFsX2J1dHRvbiIsInN0eWxlX2dlbmVyYWxfbGlzdF9tZW51Iiwic3R5bGVfc3BlY2lmaWNfbGlzdF9tZW51X3ZlcnRpY2FsIiwic3R5bGVfc3BlY2lmaWNfbGlzdF9tZW51X2FjY29yZGlvbiIsInN0eWxlX3NwZWNpZmljX2xpc3RfbWVudV9ob3Jpem9udGFsIiwic3R5bGVfZ2VuZXJhbF9zZXBhcmF0b3IiLCJzdHlsZV9nZW5lcmFsX2NvbHVtbl90aXRsZSIsInN0eWxlX2dlbmVyYWxfc2luZ2xlX2ltYWdlIiwic3R5bGVfZ2VuZXJhbF9jb2x1bW5fY29udGVudCJdOw==" data-type="lazy"></script> <script>window.lazyLoadOptions = [{ elements_selector: "img[data-lazy-src],.rocket-lazyload", data_src: "lazy-src", data_srcset: "lazy-srcset", data_sizes: "lazy-sizes", class_loading: "lazyloading", class_loaded: "lazyloaded", threshold: 300, callback_loaded: function(element) { if ( element.tagName === "IFRAME" && element.dataset.rocketLazyload == "fitvidscompatible" ) { if (element.classList.contains("lazyloaded") ) { if (typeof window.jQuery != "undefined") { if (jQuery.fn.fitVids) { jQuery(element).parent().fitVids(); } } } } }},{ elements_selector: ".rocket-lazyload", data_src: "lazy-src", data_srcset: "lazy-srcset", data_sizes: "lazy-sizes", class_loading: "lazyloading", class_loaded: "lazyloaded", threshold: 300, }]; window.addEventListener('LazyLoad::Initialized', function (e) { var lazyLoadInstance = e.detail.instance; if (window.MutationObserver) { var observer = new MutationObserver(function(mutations) { var image_count = 0; var iframe_count = 0; var rocketlazy_count = 0; mutations.forEach(function(mutation) { for (var i = 0; i < mutation.addedNodes.length; i++) { if (typeof mutation.addedNodes[i].getElementsByTagName !== 'function') { continue; } if (typeof mutation.addedNodes[i].getElementsByClassName !== 'function') { continue; } images = mutation.addedNodes[i].getElementsByTagName('img'); is_image = mutation.addedNodes[i].tagName == "IMG"; iframes = mutation.addedNodes[i].getElementsByTagName('iframe'); is_iframe = mutation.addedNodes[i].tagName == "IFRAME"; rocket_lazy = mutation.addedNodes[i].getElementsByClassName('rocket-lazyload'); image_count += images.length; iframe_count += iframes.length; rocketlazy_count += rocket_lazy.length; if(is_image){ image_count += 1; } if(is_iframe){ iframe_count += 1; } } } ); if(image_count > 0 || iframe_count > 0 || rocketlazy_count > 0){ lazyLoadInstance.update(); } } ); var b = document.getElementsByTagName("body")[0]; var config = { childList: true, subtree: true }; observer.observe(b, config); } }, false);</script><script data-no-minify="1" async src="https://www.codeguru.com/wp-content/plugins/rocket-lazy-load/assets/js/16.1/lazyload.min.js"></script> </body> </html>