CINXE.COM
Tokei: Quickly Count Different Metrics in Your Codebase | Linux Today
<!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>Tokei: Quickly Count Different Metrics in Your Codebase | Linux Today</title> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <link rel="pingback" href="https://www.linuxtoday.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.dev.linuxtoday.com/uploads/2021/06/Linux_logos_Favicon.png"> <!-- This site is optimized with the Yoast SEO plugin v23.8 - https://yoast.com/wordpress/plugins/seo/ --> <meta name="description" content="In this article we discuss the benefits of Tokei - a cross-platform tool, making it easy to install on Linux, Windows, and macOS." /> <link rel="canonical" href="https://www.linuxtoday.com/developer/tokei-quickly-count-different-metrics-in-your-codebase/" /> <meta property="og:locale" content="en_US" /> <meta property="og:type" content="article" /> <meta property="og:title" content="Tokei: Quickly Count Different Metrics in Your Codebase | Linux Today" /> <meta property="og:description" content="In this article we discuss the benefits of Tokei - a cross-platform tool, making it easy to install on Linux, Windows, and macOS." /> <meta property="og:url" content="https://www.linuxtoday.com/developer/tokei-quickly-count-different-metrics-in-your-codebase/" /> <meta property="og:site_name" content="Linux Today" /> <meta property="article:publisher" content="https://www.facebook.com/LinuxToday-635265507098561/" /> <meta property="article:modified_time" content="2024-11-04T18:53:11+00:00" /> <meta property="og:image" content="https://assets.linuxtoday.com/uploads/2021/07/Linux_opengraph_square2-01.png" /> <meta property="og:image:width" content="1201" /> <meta property="og:image:height" content="1200" /> <meta property="og:image:type" content="image/png" /> <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:site" content="@linuxtoday" /> <script type="application/ld+json" class="yoast-schema-graph">{"@context":"https://schema.org","@graph":[{"@type":"WebPage","@id":"https://www.linuxtoday.com/developer/tokei-quickly-count-different-metrics-in-your-codebase/","url":"https://www.linuxtoday.com/developer/tokei-quickly-count-different-metrics-in-your-codebase/","name":"Tokei: Quickly Count Different Metrics in Your Codebase | Linux Today","isPartOf":{"@id":"https://www.linuxtoday.com/#website"},"datePublished":"2024-11-04T20:00:25+00:00","dateModified":"2024-11-04T18:53:11+00:00","description":"In this article we discuss the benefits of Tokei - a cross-platform tool, making it easy to install on Linux, Windows, and macOS.","breadcrumb":{"@id":"https://www.linuxtoday.com/developer/tokei-quickly-count-different-metrics-in-your-codebase/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https://www.linuxtoday.com/developer/tokei-quickly-count-different-metrics-in-your-codebase/"]}]},{"@type":"BreadcrumbList","@id":"https://www.linuxtoday.com/developer/tokei-quickly-count-different-metrics-in-your-codebase/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://www.linuxtoday.com/"},{"@type":"ListItem","position":2,"name":"User Posts","item":"https://www.linuxtoday.com/%category%/"},{"@type":"ListItem","position":3,"name":"Tokei: Quickly Count Different Metrics in Your Codebase"}]},{"@type":"WebSite","@id":"https://www.linuxtoday.com/#website","url":"https://www.linuxtoday.com/","name":"Linux Today","description":"","publisher":{"@id":"https://www.linuxtoday.com/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://www.linuxtoday.com/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https://www.linuxtoday.com/#organization","name":"LinuxToday","url":"https://www.linuxtoday.com/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https://www.linuxtoday.com/#/schema/logo/image/","url":"https://assets.linuxtoday.com/uploads/2021/07/Linux_opengraph_square2-01.png","contentUrl":"https://assets.linuxtoday.com/uploads/2021/07/Linux_opengraph_square2-01.png","width":1201,"height":1200,"caption":"LinuxToday"},"image":{"@id":"https://www.linuxtoday.com/#/schema/logo/image/"},"sameAs":["https://www.facebook.com/LinuxToday-635265507098561/","https://x.com/linuxtoday","https://www.linkedin.com/company/linuxtoday/"]}]}</script> <!-- / Yoast SEO plugin. --> <link rel='dns-prefetch' href='//www.linuxtoday.com' /> <link rel='dns-prefetch' href='//fonts.googleapis.com' /> <link rel='dns-prefetch' href='//assets.linuxtoday.com' /> <link rel="alternate" type="application/rss+xml" title="Linux Today » Feed" href="https://www.linuxtoday.com/feed/" /> <!-- linuxtoday.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.linuxtoday.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.linuxtoday.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='stylesheet' id='parent-style-css' href='https://www.linuxtoday.com/wp-content/themes/newspaper/style.css?ver=6.6.2' 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.linuxtoday.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.linuxtoday.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='google-fonts-style' href='https://fonts.googleapis.com/css?family=Fira+Sans%3A400%7CRaleway%3A400%7COpen+Sans%3A400%2C600%2C700%7CRoboto%3A400%2C600%2C700%7CRaleway%3A400%2C600%7CFira+Sans%3A400&display=swap&ver=12.6.8' type='text/css' media='all' /> <noscript><link rel='stylesheet' id='google-fonts-style' href='https://fonts.googleapis.com/css?family=Fira+Sans%3A400%7CRaleway%3A400%7COpen+Sans%3A400%2C600%2C700%7CRoboto%3A400%2C600%2C700%7CRaleway%3A400%2C600%7CFira+Sans%3A400&display=swap&ver=12.6.8' type='text/css' media='all'></noscript><link rel='preload' as='style' onload="this.onload=null;this.rel='stylesheet'" id='td-theme' href='https://www.linuxtoday.com/wp-content/themes/Newspaper-child-linuxtoday/style.css?ver=1732637279' type='text/css' media='all' /> <noscript><link rel='stylesheet' id='td-theme' href='https://www.linuxtoday.com/wp-content/themes/Newspaper-child-linuxtoday/style.css?ver=1732637279' 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.linuxtoday.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.linuxtoday.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.linuxtoday.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.linuxtoday.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.linuxtoday.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.linuxtoday.com/wp/wp-includes/js/jquery/jquery.min.js?ver=3.7.1" id="jquery-core-js"></script> <script nodelay> //InMobi Choice. Consent Manager Tag v3.0 (for TCF 2.2) (function() { var host = 'www.linuxtoday.com'; var element = document.createElement('script'); var firstScript = document.getElementsByTagName('script')[0]; var url = 'https://cmp.inmobi.com' .concat('/choice/', 'vPn77x7pBG57Y', '/', host, '/choice.js?tag_version=V3'); var uspTries = 0; var uspTriesLimit = 3; element.async = true; element.type = 'text/javascript'; element.src = url; firstScript.parentNode.insertBefore(element, firstScript); function makeStub() { var TCF_LOCATOR_NAME = '__tcfapiLocator'; var queue = []; var win = window; var cmpFrame; function addFrame() { var doc = win.document; var otherCMP = !!(win.frames[TCF_LOCATOR_NAME]); if (!otherCMP) { if (doc.body) { var iframe = doc.createElement('iframe'); iframe.style.cssText = 'display:none'; iframe.name = TCF_LOCATOR_NAME; doc.body.appendChild(iframe); } else { setTimeout(addFrame, 5); } } return !otherCMP; } function tcfAPIHandler() { var gdprApplies; var args = arguments; if (!args.length) { return queue; } else if (args[0] === 'setGdprApplies') { if ( args.length > 3 && args[2] === 2 && typeof args[3] === 'boolean' ) { gdprApplies = args[3]; if (typeof args[2] === 'function') { args[2]('set', true); } } } else if (args[0] === 'ping') { var retr = { gdprApplies: gdprApplies, cmpLoaded: false, cmpStatus: 'stub' }; if (typeof args[2] === 'function') { args[2](retr); } } else { if(args[0] === 'init' && typeof args[3] === 'object') { args[3] = Object.assign(args[3], { tag_version: 'V3' }); } queue.push(args); } } function postMessageEventHandler(event) { var msgIsString = typeof event.data === 'string'; var json = {}; try { if (msgIsString) { json = JSON.parse(event.data); } else { json = event.data; } } catch (ignore) {} var payload = json.__tcfapiCall; if (payload) { window.__tcfapi( payload.command, payload.version, function(retValue, success) { var returnMsg = { __tcfapiReturn: { returnValue: retValue, success: success, callId: payload.callId } }; if (msgIsString) { returnMsg = JSON.stringify(returnMsg); } if (event && event.source && event.source.postMessage) { event.source.postMessage(returnMsg, '*'); } }, payload.parameter ); } } while (win) { try { if (win.frames[TCF_LOCATOR_NAME]) { cmpFrame = win; break; } } catch (ignore) {} if (win === window.top) { break; } win = win.parent; } if (!cmpFrame) { addFrame(); win.__tcfapi = tcfAPIHandler; win.addEventListener('message', postMessageEventHandler, false); } }; makeStub(); function makeGppStub() { var CMP_ID = 10; var SUPPORTED_APIS = [ '2:tcfeuv2', '6:uspv1', '7:usnatv1', '8:usca', '9:usvav1', '10:uscov1', '11:usutv1', '12:usctv1' ]; window.__gpp_addFrame = function (n) { if (!window.frames[n]) { if (document.body) { var i = document.createElement("iframe"); i.style.cssText = "display:none"; i.name = n; document.body.appendChild(i); } else { window.setTimeout(window.__gpp_addFrame, 10, n); } } }; window.__gpp_stub = function () { var b = arguments; __gpp.queue = __gpp.queue || []; __gpp.events = __gpp.events || []; if (!b.length || (b.length == 1 && b[0] == "queue")) { return __gpp.queue; } if (b.length == 1 && b[0] == "events") { return __gpp.events; } var cmd = b[0]; var clb = b.length > 1 ? b[1] : null; var par = b.length > 2 ? b[2] : null; if (cmd === "ping") { clb( { gppVersion: "1.1", // must be “Version.Subversion”, current: “1.1” cmpStatus: "stub", // possible values: stub, loading, loaded, error cmpDisplayStatus: "hidden", // possible values: hidden, visible, disabled signalStatus: "not ready", // possible values: not ready, ready supportedAPIs: SUPPORTED_APIS, // list of supported APIs cmpId: CMP_ID, // IAB assigned CMP ID, may be 0 during stub/loading sectionList: [], applicableSections: [-1], gppString: "", parsedSections: {}, }, true ); } else if (cmd === "addEventListener") { if (!("lastId" in __gpp)) { __gpp.lastId = 0; } __gpp.lastId++; var lnr = __gpp.lastId; __gpp.events.push({ id: lnr, callback: clb, parameter: par, }); clb( { eventName: "listenerRegistered", listenerId: lnr, // Registered ID of the listener data: true, // positive signal pingData: { gppVersion: "1.1", // must be “Version.Subversion”, current: “1.1” cmpStatus: "stub", // possible values: stub, loading, loaded, error cmpDisplayStatus: "hidden", // possible values: hidden, visible, disabled signalStatus: "not ready", // possible values: not ready, ready supportedAPIs: SUPPORTED_APIS, // list of supported APIs cmpId: CMP_ID, // list of supported APIs sectionList: [], applicableSections: [-1], gppString: "", parsedSections: {}, }, }, true ); } else if (cmd === "removeEventListener") { var success = false; for (var i = 0; i < __gpp.events.length; i++) { if (__gpp.events[i].id == par) { __gpp.events.splice(i, 1); success = true; break; } } clb( { eventName: "listenerRemoved", listenerId: par, // Registered ID of the listener data: success, // status info pingData: { gppVersion: "1.1", // must be “Version.Subversion”, current: “1.1” cmpStatus: "stub", // possible values: stub, loading, loaded, error cmpDisplayStatus: "hidden", // possible values: hidden, visible, disabled signalStatus: "not ready", // possible values: not ready, ready supportedAPIs: SUPPORTED_APIS, // list of supported APIs cmpId: CMP_ID, // CMP ID sectionList: [], applicableSections: [-1], gppString: "", parsedSections: {}, }, }, true ); } else if (cmd === "hasSection") { clb(false, true); } else if (cmd === "getSection" || cmd === "getField") { clb(null, true); } //queue all other commands else { __gpp.queue.push([].slice.apply(b)); } }; window.__gpp_msghandler = function (event) { var msgIsString = typeof event.data === "string"; try { var json = msgIsString ? JSON.parse(event.data) : event.data; } catch (e) { var json = null; } if (typeof json === "object" && json !== null && "__gppCall" in json) { var i = json.__gppCall; window.__gpp( i.command, function (retValue, success) { var returnMsg = { __gppReturn: { returnValue: retValue, success: success, callId: i.callId, }, }; event.source.postMessage(msgIsString ? JSON.stringify(returnMsg) : returnMsg, "*"); }, "parameter" in i ? i.parameter : null, "version" in i ? i.version : "1.1" ); } }; if (!("__gpp" in window) || typeof window.__gpp !== "function") { window.__gpp = window.__gpp_stub; window.addEventListener("message", window.__gpp_msghandler, false); window.__gpp_addFrame("__gppLocator"); } }; makeGppStub(); var uspStubFunction = function() { var arg = arguments; if (typeof window.__uspapi !== uspStubFunction) { setTimeout(function() { if (typeof window.__uspapi !== 'undefined') { window.__uspapi.apply(window.__uspapi, arg); } }, 500); } }; var checkIfUspIsReady = function() { uspTries++; if (window.__uspapi === uspStubFunction && uspTries < uspTriesLimit) { console.warn('USP is not accessible'); } else { clearInterval(uspInterval); } }; if (typeof window.__uspapi === 'undefined') { window.__uspapi = uspStubFunction; var uspInterval = setInterval(checkIfUspIsReady, 6000); } })(); // End InMobi Choice. Consent Manager Tag v3.0 (for TCF 2.2) /** * DataLayer Push & CCPA Support * * Version 2.0.7 */ (function() { //URLs need to be externalized based on environments, during build update. var get_iab_vendors_url = 'https://cmp.inmobi.com/GVL-v3/vendor-list.json'; var get_google_atp_url = "https://cmp.inmobi.com/tcfv2/google-atp-list.json"; var iab_vendors, iab_vendor_ids, iab_vendor_names; var google_vendors, google_vendor_ids, google_vendor_names; var google_vendors_arr = [], google_vendor_ids_arr = [], google_vendor_names_arr = []; var iab_vendors_arr = [], iab_vendor_ids_arr = [], iab_vendor_names_arr = []; var non_iab_vendors, non_iab_vendor_ids, non_iab_vendor_names; var non_iab_vendors_arr = [], non_iab_vendor_ids_arr = [], non_iab_vendor_names_arr = []; var publisher_consents, publisher_legitimate_interests; var purpose_consents, purpose_legitimate_interests; function resultToList(a) {b = ','; for (var i in a){if (a[i]){b+=i+','}} return b;} /** * Get a full list of Non-IAB Vendors, specific to the Quantcast Universal Tag ID, using tcfapi */ function vendors_getNonIABVendorList() { window.__tcfapi('getConfig', 2, function(retObj) { if(retObj.hasOwnProperty('nonIabVendorsInfo')){ if(retObj.nonIabVendorsInfo.hasOwnProperty('nonIabVendorList')) { non_iab_vendors = retObj.nonIabVendorsInfo.nonIabVendorList; // Dont assume array key = vendor id, set key as vendor id with iab_vendors[i].id Object.keys(non_iab_vendors).forEach(function (i) { non_iab_vendors_arr[non_iab_vendors[i].vendorId] = non_iab_vendors[i].name; }); } } }); } /** * Get a full list of IAB Vendors. */ function vendors_getIABVendorList() { var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { var res = JSON.parse(this.responseText); if(res.hasOwnProperty('vendors')) { iab_vendors = res.vendors; // Dont assume array key = vendor id, set key as vendor id with iab_vendors[i].id Object.keys(iab_vendors).forEach(function (i) { iab_vendors_arr[iab_vendors[i].id] = iab_vendors[i].name; }); } } }; xhttp.open("GET", get_iab_vendors_url, true); xhttp.send(); } /** * Get a full list of google atp list */ function vendors_getGoogleVendorList() { var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { google_vendors = JSON.parse(this.responseText); google_vendors.forEach(function (vendor) { google_vendors_arr[vendor.provider_id] = vendor.provider_name; }); } }; xhttp.open("GET", get_google_atp_url, true); xhttp.send(); } /** * CMP Loaded. * * Push __cmpLoaded event to the data layer. */ function dlSend_tcLoaded(tcData) { window.dataLayer = window.dataLayer || []; window.dataLayer.push({ 'event': '__cmpLoaded', '__cmpLoaded': true, 'gdpr': tcData.gdprApplies, }); } /** * IAB Vendors. * * Push __cmpIABConsents event to the datalayer, along with iab vendor consent ids. */ function dlSend_consentData(tcData) { window.dataLayer = window.dataLayer || []; iab_vendor_names_arr = []; iab_vendor_ids_arr = []; non_iab_vendor_names_arr = []; non_iab_vendor_ids_arr = []; google_vendor_names_arr = []; google_vendor_ids_arr = []; if(tcData.hasOwnProperty('publisher')) { if(tcData.publisher.hasOwnProperty('consents')) { publisher_consents = resultToList(tcData.publisher.consents); } publisher_legitimate_interests = resultToList(tcData.publisher.legitimateInterests); } if(tcData.hasOwnProperty('purpose')) { if(tcData.purpose.hasOwnProperty('consents')) { purpose_consents = resultToList(tcData.purpose.consents); } purpose_legitimate_interests = resultToList(tcData.purpose.legitimateInterests); } // Run this in an interval (every 0.1s) just in case we are still waiting // on the return with our iab_vendors list calls, bail after 10 seconds var cnt = 0; var interval = setInterval(function(){ cnt += 1; if(cnt === 100){ clearInterval(interval); } if(iab_vendors) { clearInterval(interval); if(tcData.gdprApplies) { // Create name & id arrays of iab vendors with consent. if(tcData.hasOwnProperty('vendor')) { Object.keys(tcData.vendor.consents).forEach(function(vendorId) { if(tcData.vendor.consents[vendorId] || ! tcData.gdprApplies) { iab_vendor_names_arr[vendorId] = iab_vendors_arr[vendorId]; iab_vendor_ids_arr[vendorId] = vendorId; } }); } } else { // GDPR does not apply, add all vendor names/ids iab_vendor_names_arr = iab_vendors_arr; iab_vendors_arr.forEach(function(vendorName, vendorId) { iab_vendor_ids_arr[vendorId] = vendorId; }); } if(tcData.addtlConsent && google_vendors_arr) { // Create name and id arrays of google vendors with consent. // addtlConsent: "1~39.43.46.55.61. // 1~ is the version and the rest are the decoded ids google_vendor_ids_arr = tcData.addtlConsent.split('1~')[1].split('.'); google_vendor_ids_arr && google_vendor_ids_arr.forEach(function(google_id) { google_vendor_names_arr.push(google_vendors_arr[google_id]); }); } // Non IAB Vendors window.__tcfapi('getNonIABVendorConsents',2, function(nonIabConsent, nonIabSuccess) { if (nonIabSuccess) { if(nonIabConsent.gdprApplies) { // Create name & id arrays of non iab vendors with consent. nonIabConsent.nonIabVendorConsents && Object.keys(nonIabConsent.nonIabVendorConsents).forEach(function(vendorId) { if(nonIabConsent.nonIabVendorConsents[vendorId] || ! nonIabConsent.gdprApplies) { non_iab_vendor_names_arr[vendorId] = non_iab_vendors_arr[vendorId]; non_iab_vendor_ids_arr[vendorId] = vendorId; } }); } else { // GDPR does not apply, add all non iab vendor names/ids non_iab_vendor_names_arr = non_iab_vendors_arr; non_iab_vendors_arr.forEach(function(vendorName, vendorId) { non_iab_vendor_ids_arr[vendorId] = vendorId; }); } } // Join our array values, skipping empty items and joing them with a delimiter iab_vendor_names = iab_vendor_names_arr.filter(Boolean).join('|'); iab_vendor_ids = iab_vendor_ids_arr.filter(Boolean).join(','); google_vendor_names = google_vendor_names_arr.filter(Boolean).join('|'); google_vendor_ids = google_vendor_ids_arr.filter(Boolean).join('|'); non_iab_vendor_names = non_iab_vendor_names_arr.filter(Boolean).join('|'); non_iab_vendor_ids = non_iab_vendor_ids_arr.filter(Boolean).join(','); // Push __cmpIABConsents signals to the data layer. window.dataLayer.push({ 'event': '__cmpConsents', '__cmpConsents': { 'iabVendorConsentIds': iab_vendor_ids, 'iabVendorsWithConsent': iab_vendor_names, 'nonIABVendorConsentIds': non_iab_vendor_ids, 'nonIABVendorsWithConsent': non_iab_vendor_names, 'googleVendorConsentIds': google_vendor_ids, 'googleVendorsWithConsent': google_vendor_names, 'gdpr': tcData.gdprApplies, 'publisherConsents': publisher_consents, 'publisherLegitimateInterests': publisher_legitimate_interests, 'purposeConsents': purpose_consents, 'purposeLegitimateInterests': purpose_legitimate_interests, } }); }); } }, 100); } /** * CCPA footer message. */ function ccpa_footerMsg(tcData) { window.__uspapi('uspPing', 1, function(obj, status) { var footer_msg = document.getElementById('choice-footer-msg'); // get the footer container for our CCPA message if (status && obj.mode.includes('USP') && footer_msg !== null) { footer_msg.innerHTML = footer_msg.innerHTML + 'We use cookies' + ' and other data collection technologies' + ' to provide the best experience for our customers. You may request' + ' that your data not be shared with third parties here: ' + '<a href="#" onclick="window.__uspapi(\'displayUspUi\');"' + '>Do Not Sell My Data</a>' + '.'; // Add the 'ccpa-msg-added' class to the container for post message add styling. footer_msg.classList.add("ccpa-msg-added"); window.__uspapi('setUspDftData', 1, function(obj, status) { if (!status) { console.log("Error: USP string not updated!") } }); } }); } // Only get the IAB and Non-IAB vendor lists if the the Data layer push functionality // is enabled, otherwise we do not need the vendor lists. window.__tcfapi('addEventListener', 2, function(getConfig, listenerSuccess) { vendors_getIABVendorList(); // Get global IAB vendor list vendors_getGoogleVendorList(); // Get google vendor list vendors_getNonIABVendorList(); // Get UTID specific Non-IAB vendors }); // CCPA ccpa_footerMsg(); // Add our main listener. window.__tcfapi('addEventListener', 2, function(tcData,listenerSuccess) { if (listenerSuccess) { /** * User Visits: * 1st visit/no cookie = 'cmpuishown' called and then 'useractioncomplete' after user make their selection * Repeat visit/has cookie = only 'tcloaded' is called as the UI does not show unless the user clicks to show */ switch (tcData.eventStatus) { case 'cmpuishown': // Data Layer dlSend_tcLoaded(tcData); break; case 'tcloaded': // Data Layer if(tcData && tcData.gdprApplies) { dlSend_tcLoaded(tcData); dlSend_consentData(tcData); } break; case 'useractioncomplete': // Data Layer dlSend_consentData(tcData) break; } } }); })(); </script> <link rel="https://api.w.org/" href="https://www.linuxtoday.com/wp-json/" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://www.linuxtoday.com/wp/xmlrpc.php?rsd" /> <!-- 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-T4P43PZ'); </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.linuxtoday.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.linuxtoday.com\/wp\/wp-admin\/admin-ajax.php?td_theme_name=Newspaper&v=12.6.8"; var td_get_template_directory_uri="https:\/\/www.linuxtoday.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="#378de2"; 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="69a10158a1"; 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_module_wrap .td-image-wrap:before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background-image:url(https://assets.linuxtoday.com/uploads/2021/07/Linux_opengraph-01-1-300x168.png);background-repeat:no-repeat;background-size:cover;background-position:center;z-index:-1}.td-mobile-content .td-mobile-main-menu>li>a{font-family:"Fira Sans"}.td-mobile-content .sub-menu a{font-family:"Fira Sans"}#td-mobile-nav,#td-mobile-nav .wpb_button,.td-search-wrap-mob{font-family:liquor-store,sans-serif;}.td-page-title,.td-category-title-holder .td-page-title{font-family:liquor-store,sans-serif;;font-size:42px;font-style:italic}.td-page-content p,.td-page-content li,.td-page-content .td_block_text_with_title,.wpb_text_column p{font-family:"Fira Sans"}.td-page-content h1,.wpb_text_column h1{font-family:"Fira Sans";font-size:32px}.td-page-content h2,.wpb_text_column h2{font-family:"Fira Sans";font-size:28px}.td-page-content h3,.wpb_text_column h3{font-family:"Fira Sans";font-size:24px}.td-page-content h4,.wpb_text_column h4{font-family:"Fira Sans";font-size:20px}.td-page-content h5,.wpb_text_column h5{font-family:"Fira Sans";font-size:18px}.td-page-content h6,.wpb_text_column h6{font-family:"Fira Sans";font-size:16px}body,p{font-family:"Fira Sans"}.white-popup-block,.white-popup-block .wpb_button{font-family:"Fira Sans"}:root{--td_theme_color:#378de2;--td_slider_text:rgba(55,141,226,0.7);--td_text_header_color:#7a91ac;--td_mobile_menu_color:#378de2;--td_mobile_gradient_one_mob:#378de2;--td_mobile_gradient_two_mob:#378de2;--td_mobile_text_active_color:#515151;--td_mobile_button_color_mob:#515151;--td_page_title_color:#378de2;--td_page_content_color:#515151;--td_page_h_color:#515151}.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:#378de2}.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:#378de2}.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:#378de2!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:#378de2}.td-page-content .widgettitle{color:#fff}.td_module_wrap .td-image-wrap:before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background-image:url(https://assets.linuxtoday.com/uploads/2021/07/Linux_opengraph-01-1-300x168.png);background-repeat:no-repeat;background-size:cover;background-position:center;z-index:-1}.td-mobile-content .td-mobile-main-menu>li>a{font-family:"Fira Sans"}.td-mobile-content .sub-menu a{font-family:"Fira Sans"}#td-mobile-nav,#td-mobile-nav .wpb_button,.td-search-wrap-mob{font-family:liquor-store,sans-serif;}.td-page-title,.td-category-title-holder .td-page-title{font-family:liquor-store,sans-serif;;font-size:42px;font-style:italic}.td-page-content p,.td-page-content li,.td-page-content .td_block_text_with_title,.wpb_text_column p{font-family:"Fira Sans"}.td-page-content h1,.wpb_text_column h1{font-family:"Fira Sans";font-size:32px}.td-page-content h2,.wpb_text_column h2{font-family:"Fira Sans";font-size:28px}.td-page-content h3,.wpb_text_column h3{font-family:"Fira Sans";font-size:24px}.td-page-content h4,.wpb_text_column h4{font-family:"Fira Sans";font-size:20px}.td-page-content h5,.wpb_text_column h5{font-family:"Fira Sans";font-size:18px}.td-page-content h6,.wpb_text_column h6{font-family:"Fira Sans";font-size:16px}body,p{font-family:"Fira Sans"}.white-popup-block,.white-popup-block .wpb_button{font-family:"Fira Sans"}:root{--td_theme_color:#378de2;--td_slider_text:rgba(55,141,226,0.7);--td_text_header_color:#7a91ac;--td_mobile_menu_color:#378de2;--td_mobile_gradient_one_mob:#378de2;--td_mobile_gradient_two_mob:#378de2;--td_mobile_text_active_color:#515151;--td_mobile_button_color_mob:#515151;--td_page_title_color:#378de2;--td_page_content_color:#515151;--td_page_h_color:#515151}.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:#378de2}.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:#378de2}.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:#378de2!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:#378de2}</style> <!-- Start: GAM Head Tag --> <!-- Start: Data Layer --> <script> // Setup our base data layer window.dataLayer = window.dataLayer || []; dataLayer.push( {"event":"CMS_Data","taxonomy":["audience purchase stage awareness","product development open source software development","industry technology"],"category":["developer"],"keywords":["open-source","tokei-cli"]} ); </script> <!-- End: Data Layer--> <!-- End: GAM Head Tag --> <!-- Start: Advertising Core --> <script src="//securepubads.g.doubleclick.net/tag/js/gpt.js" async></script> <script> window.googletag = window.googletag || { cmd: [] }; (getDataLayerValue = function (e, t, a) { for (var o = 0, n = window.dataLayer.length; o < n; o++) { var g; if ( void 0 !== dataLayer[o][e] && ((g = t ? cleanKeyValue_GAM(dataLayer[o][e]) : dataLayer[o][e]), a) ) return g; } return g; }), (getURLSegments = function (e) { return e.split("/").filter(function (e) { return null != e && "" != e && null != e; }); }), (getCMSEnvironment = function () { var e = new RegExp(/(local|dev)\.wordpress\.relay\.cool/).test( window.location.hostname ), t = new RegExp(/.*(local|dev).*\.wpengine\.com/).test( window.location.hostname ), a = new RegExp(/stage\.wordpress\.relay\.cool/).test( window.location.hostname ), o = new RegExp(/.*(stage|stg|esplanetst).*\.wpengine\.com/).test( window.location.hostname ); return e || t ? "dev" : a || o ? "stage" : "prod"; }), (cleanKeyValue_GAM = function (e) { if (e) if (Array.isArray(e)) for (i = 0; i < e.length; i++) e[i] = e[i] .replace(/["'=!+#*~;^()<>\[\],&]/g, "") .replace(/\s+/g, " ") .replace(/^\s+|\s+$/g, ""); else "object" == typeof e && null !== e ? Object.keys(e).forEach(function (t) { e[t] = e[t] .replace(/["'=!+#*~;^()<>\[\],&]/g, "") .replace(/\s+/g, " ") .replace(/^\s+|\s+$/g, ""); }) : (e = e .replace(/["'=!+#*~;^()<>\[\],&]/g, "") .replace(/\s+/g, " ") .replace(/^\s+|\s+$/g, "")); return e; }); </script> <script> function GAM_getPersistentValue(key) { const stored = JSON.parse(localStorage.getItem(key)); if (!stored) { return null } const { value, expiration } = stored; if (expiration && Date.now() >= expiration) { localStorage.removeItem(key); return null } return value } function GAM_setPersistentValue(key, value, expiration = null) { if (!expiration) { expiration = Date.now() + 300000 } const storedValue = JSON.stringify({ value, expiration }); localStorage.setItem(key, storedValue); return value } function GAM_synchronousRequest(params) { const xhr = new XMLHttpRequest(); xhr.open('GET', params['url'], false); xhr.setRequestHeader("Content-Type", "application/json"); if (typeof params['auth_header'] !== "undefined") { xhr.setRequestHeader("Authorization", params['auth_header']) } xhr.send(null); if (xhr.status === 200) { return xhr.responseText } else { throw new Error('Request failed: ' + xhr.statusText) } } function GAM_fetch_data(params) { let stored_data = GAM_getPersistentValue(params['storage_key']); if (stored_data === null) { try { const response = GAM_synchronousRequest(params); const data = JSON.parse(response); return GAM_setPersistentValue(params['storage_key'], data, Date.now() + 1800000) } catch (error) { console.error(`Could not get ${params['storage_key']} data: ${ error }`); return null } } else { return stored_data } } window.googletag = window.googletag || {}; googletag.cmd = googletag.cmd || []; let meData = GAM_fetch_data({ url: "https://link.technologyadvice.com/_me", storage_key: "ta_me_data" }); let sixSenseData = GAM_fetch_data({ url: "https://epsilon.6sense.com/v3/company/details", auth_header: "Token d20a1b0e892442270cbc4cb6801c0160d28af04c", storage_key: "ta_6s_data" }); googletag.cmd.push(function() { var _env = getCMSEnvironment(), _clean_path = cleanKeyValue_GAM(getURLSegments(window.location.pathname)), _clean_kw = cleanKeyValue_GAM(["open-source","tokei-cli"]), _clean_tax = cleanKeyValue_GAM(["audience purchase stage awareness","product development open source software development","industry technology"]), _clean_category = cleanKeyValue_GAM(["developer"]); googletag.pubads().setTargeting("env", _env); googletag.pubads().setTargeting("url", window.location.hostname.concat(window.location.pathname)); googletag.pubads().setTargeting("hostname", window.location.hostname); googletag.pubads().setTargeting("kw", _clean_kw); googletag.pubads().setTargeting("tax", _clean_tax); googletag.pubads().setTargeting("category", _clean_category); googletag.pubads().setTargeting("path", _clean_path); if (typeof meData !== "undefined" && meData !== null) { googletag.pubads().setTargeting("visitor_id", meData['vid']); googletag.pubads().setTargeting("user_agent", meData['user_agent']); var tags_mapping = { "is_datacenter": ["site.is-datacenter"], "is_suspected_bot": ["site.suspected-bad-bot", "site.bad-bot"], "is_ta_user": ["site.is-ta-user"], "is_crawler": ["site.user-agent-blocked"], "is_ad_blocked": ["site.is-ad-blocked"] }; for (var key in tags_mapping) { if (tags_mapping[key].some(i => meData['tags'].includes(i))) { googletag.pubads().setTargeting(key, 'true') } } } if (typeof sixSenseData !== "undefined" && sixSenseData !== null) { var segment_ids = sixSenseData?.['segments']?.['ids']?.map(String); if (typeof segment_ids !== "undefined") { googletag.pubads().setTargeting("segment_ids_6si", segment_ids) } } googletag.pubads().enableSingleRequest(), googletag.enableServices(); }); </script> <!-- End: Advertising Core --><!-- Start: GAM Ad Slot Definitions | LinuxToday developer Page --> <script> var gam_is_category = ''; var gam_is_article = ''; var gam_is_homepage = ''; gam_is_article = true; 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/IT/linuxtoday/developer/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/IT/linuxtoday/developer/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/IT/linuxtoday/developer/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'); if ( gam_is_article || gam_is_category ) { // Native Right Rail 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/IT/linuxtoday/developer/native-rr-article', ['fluid'], 'native-rr-article') .addService(googletag.pubads()) .setTargeting('pos', 'native-rr-article') .setTargeting('refreshable', 'false') .setTargeting('adrefreshed', 'false'); } if ( gam_is_category || gam_is_homepage ) { // 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/IT/linuxtoday/developer/native-main-well', ['fluid'], 'native-main-well') .addService(googletag.pubads()) .setTargeting('pos', 'native-main-well') .setTargeting('refreshable', 'false') .setTargeting('adrefreshed', 'false'); } if ( gam_is_article ) { // Native BOAP (Article) 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/IT/linuxtoday/developer/native-boap', ['fluid'], 'native-boap') .addService(googletag.pubads()) .setTargeting('pos', 'native-boap') .setTargeting('refreshable', 'false') .setTargeting('adrefreshed', 'false'); } }); </script> <!-- End: GAM Ad Slot Definitions | Datamation developer Page --><meta name='webgains-site-verification' content='ofy1yvom' /> <meta name="google-site-verification" content="keb2K_3oXZ51u2Tq_gIe2dKhGoywvWVWejOIk6Q-yH4" /> <script type="application/ld+json"> { "@context": "https://schema.org", "@type": "BreadcrumbList", "itemListElement": [ { "@type": "ListItem", "position": 1, "item": { "@type": "WebSite", "@id": "https://www.linuxtoday.com/", "name": "Home" } }, { "@type": "ListItem", "position": 2, "item": { "@type": "WebPage", "@id": "https://www.linuxtoday.com/developer/tokei-quickly-count-different-metrics-in-your-codebase/", "name": "Tokei: Quickly Count Different Metrics in Your Codebase" } } ] } </script> <link rel="icon" href="https://assets.linuxtoday.com/uploads/2021/06/cropped-Linux_logos_Favicon-32x32.png" sizes="32x32" /> <link rel="icon" href="https://assets.linuxtoday.com/uploads/2021/06/cropped-Linux_logos_Favicon-192x192.png" sizes="192x192" /> <link rel="apple-touch-icon" href="https://assets.linuxtoday.com/uploads/2021/06/cropped-Linux_logos_Favicon-180x180.png" /> <meta name="msapplication-TileImage" content="https://assets.linuxtoday.com/uploads/2021/06/cropped-Linux_logos_Favicon-270x270.png" /> <!-- Button style compiled by theme --> <style>.tdm-btn-style1{background-color:#378de2}.tdm-btn-style2:before{border-color:#378de2}.tdm-btn-style2{color:#378de2}.tdm-btn-style3{-webkit-box-shadow:0 2px 16px #378de2;-moz-box-shadow:0 2px 16px #378de2;box-shadow:0 2px 16px #378de2}.tdm-btn-style3:hover{-webkit-box-shadow:0 4px 26px #378de2;-moz-box-shadow:0 4px 26px #378de2;box-shadow:0 4px 26px #378de2}</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="user_post-template-default single single-user_post postid-194049 td-standard-pack tokei-quickly-count-different-metrics-in-your-codebase global-block-template-2 tdb_template_138 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-171466"><a href="https://www.linuxtoday.com/news/">News</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-171465"><a href="https://www.linuxtoday.com/it-management/">IT Management</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-171464"><a href="https://www.linuxtoday.com/infrastructure/">Infrastructure</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category current-user_post-ancestor current-menu-parent current-user_post-parent menu-item-171462"><a href="https://www.linuxtoday.com/developer/">Developer</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-171467"><a href="https://www.linuxtoday.com/security/">Security</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-171463"><a href="https://www.linuxtoday.com/high-performance/">High Performance</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-171468"><a href="https://www.linuxtoday.com/storage/">Storage</a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-171461"><a href="https://www.linuxtoday.com/blog/">Blog</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.linuxtoday.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}.tdi_2>.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:#ffffff!important}.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 2px 6px 0px rgba(0,0,0,0.08);z-index:20;pointer-events:none}@media (max-width:767px){.tdi_2:before{width:100%}}}</style> <div class="tdi_1_rand_style td-element-style" ></div><div id="tdi_3" class="tdc-row"><div class="vc_row tdi_4 wpb_row td-pb-row" > <style scoped>.tdi_4,.tdi_4 .tdc-columns{min-height:0}.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){.tdi_4,.tdi_4 .tdc-columns{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:flex-start;align-items:flex-start}.tdi_4 .tdc-columns{width:100%}.tdi_4:before,.tdi_4:after{display:none}}@media (max-width:767px){.tdi_4{padding-top:3px!important;padding-bottom:3px!important}}</style><div class="vc_column tdi_6 wpb_column vc_column_container tdc-column td-pb-span3"> <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>.wpb_wrapper,.tdi_6>.wpb_wrapper>.tdc-elements{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:flex-start;align-items:center}.tdi_6>.wpb_wrapper>.tdc-elements{width:100%}.tdi_6>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_6>.wpb_wrapper{width:100%;height:100%}}</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-top:10px!important;margin-right:20px!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: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}.tdi_7 .tdb-mobile-menu-button{color:#515151}.tdi_7 .tdb-mobile-menu-button svg,.tdi_7 .tdb-mobile-menu-button svg *{fill:#515151}.tdi_7 .tdb-mobile-menu-button:hover{color:#008de8}.tdi_7 .tdb-mobile-menu-button:hover svg,.tdi_7 .tdb-mobile-menu-button:hover svg *{fill:#008de8}@media (max-width:767px){.tdi_7 .tdb-mobile-menu-button i{width:27px;height:27px;line-height:27px}.tdi_7 .tdb-mobile-menu-button .tdb-mobile-menu-icon-svg{width:27px;height:27px}}</style><div class="tdb-block-inner td-fix-index"><span class="tdb-mobile-menu-button"><span class="tdb-mobile-menu-icon tdb-mobile-menu-icon-svg" ><svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024"><path d="M881.152 489.133h-738.335c-17.654 0-31.98 14.305-31.98 32 0 17.705 14.326 32.020 31.98 32.020h738.335c17.695 0 32.010-14.305 32.010-32.020 0-17.695-14.326-32-32.010-32zM881.152 256.367h-738.335c-17.654 0-31.98 14.316-31.98 31.99 0 17.705 14.326 32.061 31.98 32.061h738.335c17.695 0 32.010-14.346 32.010-32.061 0-17.674-14.326-31.99-32.010-31.99zM513.444 721.888h-370.596c-17.674 0-32.010 14.326-32.010 32.061 0 17.572 14.346 31.969 32.010 31.969h370.586c17.705 0 32.020-14.397 32.020-31.969 0.010-17.725-14.305-32.061-32.010-32.061z"></path></svg></span></span></div></div> <!-- ./block --></div></div><div class="vc_column tdi_9 wpb_column vc_column_container tdc-column td-pb-span6"> <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}</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>@media (max-width:767px){.tdi_10{margin-top:10px!important}}</style> <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-svg-wrap+.tdb-logo-img-wrap{display:none}.tdi_10 .tdb-logo-img-wrap{display:block}.tdi_10 .tdb-logo-text-tagline{margin-top:2px;margin-left:0;display:block}.tdi_10 .tdb-logo-text-title{display:block}.tdi_10 .tdb-logo-text-wrap{flex-direction:column;align-items:flex-start}.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}}</style><div class="tdb-block-inner td-fix-index"><a class="tdb-logo-a" href="https://www.linuxtoday.com/" title="LinuxToday"><span class="tdb-logo-img-wrap"><img class="tdb-logo-img td-retina-data" data-retina="https://assets.linuxtoday.com/uploads/2021/06/Linux_logos_RetinaMobile-Logo.png" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20751%20200'%3E%3C/svg%3E" alt="LinuxToday" title="LinuxToday" width="751" height="200" data-lazy-src="https://assets.linuxtoday.com/uploads/2021/06/Linux_logos_MobileLogo.png" /><noscript><img class="tdb-logo-img td-retina-data" data-retina="https://assets.linuxtoday.com/uploads/2021/06/Linux_logos_RetinaMobile-Logo.png" src="https://assets.linuxtoday.com/uploads/2021/06/Linux_logos_MobileLogo.png" alt="LinuxToday" title="LinuxToday" width="751" height="200" /></noscript></span></a></div></div> <!-- ./block --></div></div><div class="vc_column tdi_12 wpb_column vc_column_container tdc-column td-pb-span3"> <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}</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>.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-block-inner{text-align:center}.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:#515151}.tdi_13 .tdb-header-search-button-mob svg,.tdi_13 .tdb-header-search-button-mob svg *{fill:#515151}.tdi_13 .tdb-header-search-button-mob:hover{color:#008de8}</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" > <style scoped>.tdi_15{min-height:0}.td-header-desktop-wrap{position:relative}</style><div id="tdi_16" class="tdc-row stretch_row_1400 td-stretch-content"><div class="vc_row tdi_17 wpb_row td-pb-row tdc-element-style" > <style scoped>.tdi_17,.tdi_17 .tdc-columns{min-height:0}.tdi_17>.td-element-style>.td-element-style-before{transition:none;-webkit-transition:none;opacity:1}.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:#008de8}.tdi_17,.tdi_17 .tdc-columns{display:block}.tdi_17 .tdc-columns{width:100%}.tdi_17:before,.tdi_17:after{display:table}.tdi_17{margin-top:0px!important;margin-bottom:0px!important}.tdi_17 .td_block_wrap{text-align:left}</style> <div class="tdi_16_rand_style td-element-style" ></div><div class="vc_column tdi_19 wpb_column vc_column_container tdc-column td-pb-span12"> <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" ><div class="tdm_block td_block_wrap tdm_block_inline_text tdi_20 td-pb-border-top td_block_template_2" data-td-block-uid="tdi_20" > <style>.tdi_20{margin-top:0px!important;margin-bottom:0px!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_20{text-align:center!important;margin-right:auto;margin-left:auto}.tdi_20 .tdm-descr{color:#008de8;font-family:Raleway!important;font-size:5px!important}@media (min-width:1019px) and (max-width:1140px){.tdi_20 .tdm-descr{font-size:11px!important}}@media (min-width:768px) and (max-width:1018px){.tdi_20 .tdm-descr{font-size:11px!important}}</style><p class="tdm-descr">---</p></div></div></div></div></div><div id="tdi_21" class="tdc-row tdc-row-is-sticky tdc-rist-top stretch_row_1400 td-stretch-content"><div class="vc_row tdi_22 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_22,.tdi_22 .tdc-columns{min-height:0}.tdi_22>.td-element-style>.td-element-style-before{transition:none;-webkit-transition:none;opacity:1}.tdi_22>.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:#ffffff!important}.tdi_22:before{display:block;width:100vw;height:100%;position:absolute;left:50%;transform:translateX(-50%);box-shadow:0px 6px 6px 0px #f2f2f2;z-index:20;pointer-events:none;top:0}.tdi_22,.tdi_22 .tdc-columns{display:block}.tdi_22 .tdc-columns{width:100%}.tdi_22:before,.tdi_22:after{display:table}@media (min-width:767px){body.admin-bar .tdc-row.tdc-rist-top-active{top:32px}}@media (min-width:768px){.tdi_22{margin-left:-0px;margin-right:-0px}.tdi_22 .tdc-row-video-background-error,.tdi_22>.vc_column,.tdi_22>.tdc-columns>.vc_column{padding-left:0px;padding-right:0px}}@media (min-width:1019px) and (max-width:1140px){.tdi_22{padding-top:10px!important;padding-bottom:10px!important}}@media (min-width:768px) and (max-width:1018px){.tdi_22{padding-top:10px!important;padding-bottom:10px!important}}</style> <div class="tdi_21_rand_style td-element-style" ></div><div class="vc_column tdi_24 wpb_column vc_column_container tdc-column td-pb-span3"> <style scoped>.tdi_24{vertical-align:baseline}.tdi_24>.wpb_wrapper,.tdi_24>.wpb_wrapper>.tdc-elements{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:flex-start;align-items:center}.tdi_24>.wpb_wrapper>.tdc-elements{width:100%}.tdi_24>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_24>.wpb_wrapper{width:100%;height:100%}</style><div class="wpb_wrapper" ><div class="td_block_wrap tdb_header_logo tdi_25 td-pb-border-top td_block_template_2 tdb-header-align" data-td-block-uid="tdi_25" > <style>.tdi_25 .tdb-logo-a,.tdi_25 h1{flex-direction:row;align-items:center;justify-content:flex-start}.tdi_25 .tdb-logo-svg-wrap{display:block}.tdi_25 .tdb-logo-svg-wrap+.tdb-logo-img-wrap{display:none}.tdi_25 .tdb-logo-img{max-width:60%}.tdi_25 .tdb-logo-img-wrap{display:block}.tdi_25 .tdb-logo-text-tagline{margin-top:2px;margin-left:0;display:block}.tdi_25 .tdb-logo-text-title{display:block}.tdi_25 .tdb-logo-text-wrap{flex-direction:column;align-items:flex-start}.tdi_25 .tdb-logo-icon{top:0px;display:block}</style><div class="tdb-block-inner td-fix-index"><a class="tdb-logo-a" href="https://www.linuxtoday.com/" title="LinuxToday"><span class="tdb-logo-img-wrap"><img class="tdb-logo-img td-retina-data" data-retina="https://assets.linuxtoday.com/uploads/2021/06/Linux_logos_RetinaLogo.png" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201134%20375'%3E%3C/svg%3E" alt="LinuxToday" title="LinuxToday" width="1134" height="375" data-lazy-src="https://assets.linuxtoday.com/uploads/2021/06/Linux_logos_MainLogo.png" /><noscript><img class="tdb-logo-img td-retina-data" data-retina="https://assets.linuxtoday.com/uploads/2021/06/Linux_logos_RetinaLogo.png" src="https://assets.linuxtoday.com/uploads/2021/06/Linux_logos_MainLogo.png" alt="LinuxToday" title="LinuxToday" width="1134" height="375" /></noscript></span></a></div></div> <!-- ./block --></div></div><div class="vc_column tdi_27 wpb_column vc_column_container tdc-column td-pb-span9"> <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="td_block_wrap tdb_header_menu tdi_28 tds_menu_active1 tds_menu_sub_active1 tdb-head-menu-inline td-pb-border-top td_block_template_2 tdb-header-align" data-td-block-uid="tdi_28" style=" z-index: 999;"> <style>.tdi_28{margin-top:10px!important}</style> <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_28{display:inline-block}.tdi_28 .tdb-menu>li{margin-right:30px}.tdi_28 .tdb-menu>li:last-child{margin-right:0}.tdi_28 .tdb-menu-items-dropdown{margin-left:30px}.tdi_28 .tdb-menu-items-empty+.tdb-menu-items-dropdown{margin-left:0}.tdi_28 .tdb-menu>li>a,.tdi_28 .td-subcat-more{padding:0px;color:#515151}.tdi_28 .tdb-menu>li .tdb-menu-sep,.tdi_28 .tdb-menu-items-dropdown .tdb-menu-sep{top:-1px}.tdi_28 .tdb-menu>li>a .tdb-sub-menu-icon,.tdi_28 .td-subcat-more .tdb-menu-more-subicon{top:-1px}.tdi_28 .td-subcat-more .tdb-menu-more-icon{top:0px}.tdi_28 .tdb-menu>li>a .tdb-sub-menu-icon-svg svg,.tdi_28 .tdb-menu>li>a .tdb-sub-menu-icon-svg svg *,.tdi_28 .td-subcat-more .tdb-menu-more-subicon-svg svg,.tdi_28 .td-subcat-more .tdb-menu-more-subicon-svg svg *,.tdi_28 .td-subcat-more .tdb-menu-more-icon-svg,.tdi_28 .td-subcat-more .tdb-menu-more-icon-svg *{fill:#515151}.tdi_28 .tdb-menu>li>a,.tdi_28 .td-subcat-more,.tdi_28 .td-subcat-more>.tdb-menu-item-text{font-family:Fira Sans!important;font-size:16px!important;font-weight:400!important;text-transform:none!important}.tdi_28 .tdb-menu>.tdb-normal-menu>ul,.tdi_28 .td-pulldown-filter-list{left:-26px}.tdi_28 .tdb-normal-menu ul .tdb-menu-item>a .tdb-menu-item-text{margin-right:12px}.tdi_28 .tdb-normal-menu ul .tdb-menu-item>a .tdb-sub-menu-icon,.tdi_28 .td-pulldown-filter-list .tdb-menu-item>a .tdb-sub-menu-icon{right:0;margin-top:1px}.tdi_28 .tdb-menu .tdb-normal-menu ul,.tdi_28 .td-pulldown-filter-list,.tdi_28 .td-pulldown-filter-list .sub-menu{box-shadow:1px 1px 4px 0px rgba(0,0,0,0.15)}.tdi_28 .tdb-menu .tdb-normal-menu ul .tdb-menu-item>a,.tdi_28 .td-pulldown-filter-list li a{font-family:Raleway!important;font-size:11px!important;line-height:1!important;font-weight:600!important}.tdi_28 .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 (max-width:1018px){.tdi_28 .td-pulldown-filter-list{left:auto;right:-26px}}@media (min-width:1019px) and (max-width:1140px){.tdi_28 .tdb-menu>li{margin-right:20px}.tdi_28 .tdb-menu>li:last-child{margin-right:0}.tdi_28 .tdb-menu-items-dropdown{margin-left:20px}.tdi_28 .tdb-menu-items-empty+.tdb-menu-items-dropdown{margin-left:0}}@media (min-width:768px) and (max-width:1018px){.tdi_28 .tdb-menu>li{margin-right:20px}.tdi_28 .tdb-menu>li:last-child{margin-right:0}.tdi_28 .tdb-menu-items-dropdown{margin-left:20px}.tdi_28 .tdb-menu-items-empty+.tdb-menu-items-dropdown{margin-left:0}.tdi_28 .tdb-menu>li>a,.tdi_28 .td-subcat-more,.tdi_28 .td-subcat-more>.tdb-menu-item-text{font-size:12px!important}}</style> <style>.tdi_28 .tdb-menu>li.current-menu-item>a,.tdi_28 .tdb-menu>li.current-menu-ancestor>a,.tdi_28 .tdb-menu>li.current-category-ancestor>a,.tdi_28 .tdb-menu>li.current-page-ancestor>a,.tdi_28 .tdb-menu>li:hover>a,.tdi_28 .tdb-menu>li.tdb-hover>a,.tdi_28 .tdb-menu-items-dropdown:hover .td-subcat-more{color:#757575}.tdi_28 .tdb-menu>li.current-menu-item>a .tdb-sub-menu-icon-svg svg,.tdi_28 .tdb-menu>li.current-menu-item>a .tdb-sub-menu-icon-svg svg *,.tdi_28 .tdb-menu>li.current-menu-ancestor>a .tdb-sub-menu-icon-svg svg,.tdi_28 .tdb-menu>li.current-menu-ancestor>a .tdb-sub-menu-icon-svg svg *,.tdi_28 .tdb-menu>li.current-category-ancestor>a .tdb-sub-menu-icon-svg svg,.tdi_28 .tdb-menu>li.current-category-ancestor>a .tdb-sub-menu-icon-svg svg *,.tdi_28 .tdb-menu>li.current-page-ancestor>a .tdb-sub-menu-icon-svg svg *,.tdi_28 .tdb-menu>li:hover>a .tdb-sub-menu-icon-svg svg,.tdi_28 .tdb-menu>li:hover>a .tdb-sub-menu-icon-svg svg *,.tdi_28 .tdb-menu>li.tdb-hover>a .tdb-sub-menu-icon-svg svg,.tdi_28 .tdb-menu>li.tdb-hover>a .tdb-sub-menu-icon-svg svg *,.tdi_28 .tdb-menu-items-dropdown:hover .td-subcat-more .tdb-menu-more-icon-svg svg,.tdi_28 .tdb-menu-items-dropdown:hover .td-subcat-more .tdb-menu-more-icon-svg svg *{fill:#757575}.tdi_28 .tdb-menu>li>a:after,.tdi_28 .tdb-menu-items-dropdown .td-subcat-more:after{background-color:#008de8;height:5px;bottom:53px}</style> <style>.tdi_28 .tdb-menu ul .tdb-normal-menu.current-menu-item>a,.tdi_28 .tdb-menu ul .tdb-normal-menu.current-menu-ancestor>a,.tdi_28 .tdb-menu ul .tdb-normal-menu.current-category-ancestor>a,.tdi_28 .tdb-menu ul .tdb-normal-menu.tdb-hover>a,.tdi_28 .tdb-menu ul .tdb-normal-menu:hover>a,.tdi_28 .tdb-menu-items-dropdown .td-pulldown-filter-list li:hover>a{color:#dd3333}.tdi_28 .tdb-menu ul .tdb-normal-menu.current-menu-item>a .tdb-sub-menu-icon-svg svg,.tdi_28 .tdb-menu ul .tdb-normal-menu.current-menu-item>a .tdb-sub-menu-icon-svg svg *,.tdi_28 .tdb-menu ul .tdb-normal-menu.current-menu-ancestor>a .tdb-sub-menu-icon-svg svg,.tdi_28 .tdb-menu ul .tdb-normal-menu.current-menu-ancestor>a .tdb-sub-menu-icon-svg svg *,.tdi_28 .tdb-menu ul .tdb-normal-menu.current-category-ancestor>a .tdb-sub-menu-icon-svg svg,.tdi_28 .tdb-menu ul .tdb-normal-menu.current-category-ancestor>a .tdb-sub-menu-icon-svg svg *,.tdi_28 .tdb-menu ul .tdb-normal-menu.tdb-hover>a .tdb-sub-menu-icon-svg svg,.tdi_28 .tdb-menu ul .tdb-normal-menu.tdb-hover>a .tdb-sub-menu-icon-svg svg *,.tdi_28 .tdb-menu ul .tdb-normal-menu:hover>a .tdb-sub-menu-icon-svg svg,.tdi_28 .tdb-menu ul .tdb-normal-menu:hover>a .tdb-sub-menu-icon-svg svg *,.tdi_28 .tdb-menu-items-dropdown .td-pulldown-filter-list li:hover>a .tdb-sub-menu-icon-svg svg,.tdi_28 .tdb-menu-items-dropdown .td-pulldown-filter-list li:hover>a .tdb-sub-menu-icon-svg svg *{fill:#dd3333}</style><div id=tdi_28 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 tdb-cur-menu-item menu-item-first tdb-menu-item-button tdb-menu-item tdb-normal-menu menu-item-171466"><a href="https://www.linuxtoday.com/news/"><div class="tdb-menu-item-text">News</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-171465"><a href="https://www.linuxtoday.com/it-management/"><div class="tdb-menu-item-text">IT Management</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-171464"><a href="https://www.linuxtoday.com/infrastructure/"><div class="tdb-menu-item-text">Infrastructure</div></a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category current-user_post-ancestor current-menu-parent current-user_post-parent tdb-menu-item-button tdb-menu-item tdb-normal-menu menu-item-171462"><a href="https://www.linuxtoday.com/developer/"><div class="tdb-menu-item-text">Developer</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-171467"><a href="https://www.linuxtoday.com/security/"><div class="tdb-menu-item-text">Security</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-171463"><a href="https://www.linuxtoday.com/high-performance/"><div class="tdb-menu-item-text">High Performance</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-171468"><a href="https://www.linuxtoday.com/storage/"><div class="tdb-menu-item-text">Storage</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-171461"><a href="https://www.linuxtoday.com/blog/"><div class="tdb-menu-item-text">Blog</div></a></li> </ul></div></div><div class="td_block_wrap tdb_header_search tdi_31 tdb-header-search-trigger-enabled td-pb-border-top td_block_template_2 tdb-header-align" data-td-block-uid="tdi_31" > <style>.tdi_31{margin-top:12px!important}</style> <style>.tdb_module_header{width:100%;padding-bottom:0}.tdb_module_header .td-module-container{display:flex;flex-direction:column;position:relative}.tdb_module_header .td-module-container:before{content:'';position:absolute;bottom:0;left:0;width:100%;height:1px}.tdb_module_header .td-image-wrap{display:block;position:relative;padding-bottom:70%}.tdb_module_header .td-image-container{position:relative;width:100%;flex:0 0 auto}.tdb_module_header .td-module-thumb{margin-bottom:0}.tdb_module_header .td-module-meta-info{width:100%;margin-bottom:0;padding:7px 0 0 0;z-index:1;border:0 solid #eaeaea;min-height:0}.tdb_module_header .entry-title{margin:0;font-size:13px;font-weight:500;line-height:18px}.tdb_module_header .td-post-author-name,.tdb_module_header .td-post-date,.tdb_module_header .td-module-comments{vertical-align:text-top}.tdb_module_header .td-post-author-name,.tdb_module_header .td-post-date{top:3px}.tdb_module_header .td-thumb-css{width:100%;height:100%;position:absolute;background-size:cover;background-position:center center}.tdb_module_header .td-category-pos-image .td-post-category:not(.td-post-extra-category),.tdb_module_header .td-post-vid-time{position:absolute;z-index:2;bottom:0}.tdb_module_header .td-category-pos-image .td-post-category:not(.td-post-extra-category){left:0}.tdb_module_header .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_module_header .td-excerpt{margin:20px 0 0;line-height:21px}.tdb_module_header .td-read-more{margin:20px 0 0}.tdb_module_search .tdb-author-photo{display:inline-block}.tdb_module_search .tdb-author-photo,.tdb_module_search .tdb-author-photo img{vertical-align:middle}.tdb_module_search .td-post-author-name{white-space:normal}.tdb_header_search{margin-bottom:0;clear:none}.tdb_header_search .tdb-block-inner{position:relative;display:inline-block;width:100%}.tdb_header_search .tdb-search-form{position:relative;padding:20px;border-width:3px 0 0;border-style:solid;border-color:var(--td_theme_color,#4db2ec);pointer-events:auto}.tdb_header_search .tdb-search-form:before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background-color:#fff}.tdb_header_search .tdb-search-form-inner{position:relative;display:flex;background-color:#fff}.tdb_header_search .tdb-search-form-inner:after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #e1e1e1;pointer-events:none}.tdb_header_search .tdb-head-search-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_header_search .tdb-head-search-form-input:focus+.tdb-head-search-placeholder,.tdb-head-search-form-input:not(:placeholder-shown)~.tdb-head-search-placeholder{opacity:0}.tdb_header_search .tdb-head-search-form-btn,.tdb_header_search .tdb-head-search-form-input{height:auto;min-height:32px}.tdb_header_search .tdb-head-search-form-input{color:#444;flex:1;background-color:transparent;border:0}.tdb_header_search .tdb-head-search-form-input.tdb-head-search-nofocus{color:transparent;text-shadow:0 0 0 #444}.tdb_header_search .tdb-head-search-form-btn{margin-bottom:0;padding:0 15px;background-color:#222222;font-family:var(--td_default_google_font_2,'Roboto',sans-serif);font-size:13px;font-weight:500;color:#fff;-webkit-transition:all 0.3s ease;transition:all 0.3s ease;z-index:1}.tdb_header_search .tdb-head-search-form-btn:hover{background-color:var(--td_theme_color,#4db2ec)}.tdb_header_search .tdb-head-search-form-btn i,.tdb_header_search .tdb-head-search-form-btn span{display:inline-block;vertical-align:middle}.tdb_header_search .tdb-head-search-form-btn i{font-size:12px}.tdb_header_search .tdb-head-search-form-btn .tdb-head-search-form-btn-icon{position:relative}.tdb_header_search .tdb-head-search-form-btn .tdb-head-search-form-btn-icon-svg{line-height:0}.tdb_header_search .tdb-head-search-form-btn svg{width:12px;height:auto}.tdb_header_search .tdb-head-search-form-btn svg,.tdb_header_search .tdb-head-search-form-btn svg *{fill:#fff;-webkit-transition:all 0.3s ease;transition:all 0.3s ease}.tdb_header_search .tdb-aj-search-results{padding:20px;background-color:rgba(144,144,144,0.02);border-width:1px 0;border-style:solid;border-color:#ededed;background-color:#fff}.tdb_header_search .tdb-aj-search-results .td_module_wrap:last-child{margin-bottom:0;padding-bottom:0}.tdb_header_search .tdb-aj-search-results .td_module_wrap:last-child .td-module-container:before{display:none}.tdb_header_search .tdb-aj-search-inner{display:flex;flex-wrap:wrap;*zoom:1}.tdb_header_search .tdb-aj-search-inner:before,.tdb_header_search .tdb-aj-search-inner:after{display:table;content:'';line-height:0}.tdb_header_search .tdb-aj-search-inner:after{clear:both}.tdb_header_search .result-msg{padding:4px 0 6px 0;font-family:var(--td_default_google_font_2,'Roboto',sans-serif);font-size:12px;font-style:italic;background-color:#fff}.tdb_header_search .result-msg a{color:#222}.tdb_header_search .result-msg a:hover{color:var(--td_theme_color,#4db2ec)}.tdb_header_search .td-module-meta-info,.tdb_header_search .td-next-prev-wrap{text-align:left}.tdb_header_search .td_module_wrap:hover .entry-title a{color:var(--td_theme_color,#4db2ec)}.tdb_header_search .tdb-aj-cur-element .entry-title a{color:var(--td_theme_color,#4db2ec)}.tdc-dragged .tdb-head-search-btn:after,.tdc-dragged .tdb-drop-down-search{visibility:hidden!important;opacity:0!important;-webkit-transition:all 0.3s ease;transition:all 0.3s ease}.tdb-header-search-trigger-enabled{z-index:1000}.tdb-header-search-trigger-enabled .tdb-head-search-btn{display:flex;align-items:center;position:relative;text-align:center;color:var(--td_theme_color,#4db2ec)}.tdb-header-search-trigger-enabled .tdb-head-search-btn:after{visibility:hidden;opacity:0;content:'';display:block;position:absolute;bottom:0;left:0;right:0;margin:0 auto;width:0;height:0;border-style:solid;border-width:0 6.5px 7px 6.5px;-webkit-transform:translate3d(0,20px,0);transform:translate3d(0,20px,0);-webkit-transition:all 0.4s ease;transition:all 0.4s ease;border-color:transparent transparent var(--td_theme_color,#4db2ec) transparent}.tdb-header-search-trigger-enabled .tdb-drop-down-search-open+.tdb-head-search-btn:after{visibility:visible;opacity:1;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.tdb-header-search-trigger-enabled .tdb-search-icon,.tdb-header-search-trigger-enabled .tdb-search-txt,.tdb-header-search-trigger-enabled .tdb-search-icon-svg svg *{-webkit-transition:all 0.3s ease-in-out;transition:all 0.3s ease-in-out}.tdb-header-search-trigger-enabled .tdb-search-icon-svg{display:flex;align-items:center;justify-content:center}.tdb-header-search-trigger-enabled .tdb-search-icon-svg svg{height:auto}.tdb-header-search-trigger-enabled .tdb-search-icon-svg svg,.tdb-header-search-trigger-enabled .tdb-search-icon-svg svg *{fill:var(--td_theme_color,#4db2ec)}.tdb-header-search-trigger-enabled .tdb-search-txt{position:relative;line-height:1}.tdb-header-search-trigger-enabled .tdb-drop-down-search{visibility:hidden;opacity:0;position:absolute;top:100%;left:0;-webkit-transform:translate3d(0,20px,0);transform:translate3d(0,20px,0);-webkit-transition:all 0.4s ease;transition:all 0.4s ease;pointer-events:none;z-index:10}.tdb-header-search-trigger-enabled .tdb-drop-down-search-open{visibility:visible;opacity:1;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.tdb-header-search-trigger-enabled .tdb-drop-down-search-inner{position:relative;max-width:300px;pointer-events:all}.rtl .tdb-header-search-trigger-enabled .tdb-drop-down-search-inner{margin-left:0;margin-right:auto}.tdb_header_search .tdb-aj-srs-title{margin-bottom:10px;font-family:var(--td_default_google_font_2,'Roboto',sans-serif);font-weight:500;font-size:13px;line-height:1.3;color:#888}.tdb_header_search .tdb-aj-sr-taxonomies{display:flex;flex-direction:column}.tdb_header_search .tdb-aj-sr-taxonomy{font-family:var(--td_default_google_font_2,'Roboto',sans-serif);font-size:13px;font-weight:500;line-height:18px;color:#111}.tdb_header_search .tdb-aj-sr-taxonomy:not(:last-child){margin-bottom:5px}.tdb_header_search .tdb-aj-sr-taxonomy:hover{color:var(--td_theme_color,#4db2ec)}.tdi_31 .tdb-head-search-btn i{font-size:20px;width:48px;height:48px;line-height:48px;color:#008de8}.tdi_31 .tdb-head-search-btn svg{width:20px}.tdi_31 .tdb-search-icon-svg{width:48px;height:48px}.tdi_31{display:inline-block;float:right;clear:none}.tdi_31 .tdb-search-txt{top:0px}.tdi_31 .tdb-drop-down-search{left:auto;right:0}body .tdi_31 .tdb-drop-down-search-inner,.tdi_31 .tdb-search-form,.tdi_31 .tdb-aj-search{margin-left:auto;margin-right:0}.tdi_31 .tdb-head-search-form-btn-icon{top:0px}.tdi_31 .result-msg{text-align:center;border-color:#008de8;font-family:Fira Sans!important;font-size:14px!important}.tdi_31 .tdb-head-search-btn svg,.tdi_31 .tdb-head-search-btn svg *{fill:#008de8}.tdi_31 .tdb-head-search-btn:hover i{color:#515151}.tdi_31 .tdb-head-search-btn:hover svg,.tdi_31 .tdb-head-search-btn:hover svg *{fill:#515151}.tdi_31 .tdb-search-form{border-color:#f0a83b}.tdi_31 .tdb-head-search-btn:after{border-bottom-color:#f0a83b}.tdi_31 .tdb-drop-down-search-inner{box-shadow:0px 2px 6px 0px rgba(0,0,0,0.2)}.tdi_31 .tdb-head-search-form-btn{background-color:#008de8;font-family:Fira Sans!important}.tdi_31 .tdb-head-search-form-btn:hover{background-color:#f0a83b}.tdi_31 .tdb-aj-search-results{border-color:#f2f2f2}.tdi_31 .tdb-head-search-form-input{font-family:Fira Sans!important}.tdi_31 .tdb-head-search-placeholder{font-family:Fira Sans!important}.tdi_31 .td_module_wrap{width:100%;float:left;padding-left:11px;padding-right:11px;padding-bottom:10px;margin-bottom:10px}.tdi_31 .td_module_wrap:nth-last-child(-n+1){margin-bottom:0;padding-bottom:0}.tdi_31 .td_module_wrap:nth-last-child(-n+1) .td-module-container:before{display:none}.tdi_31 .tdb-aj-search-inner{margin-left:-11px;margin-right:-11px}.tdi_31 .td-module-container:before{bottom:-10px;border-width:0 0 1px 0;border-style:solid;border-color:#eaeaea;border-color:#eaeaea}.tdi_31 .td-module-container{border-color:#eaeaea;flex-direction:row}.tdi_31 .entry-thumb{background-position:center 50%}.tdi_31 .td-image-container{flex:0 0 30%;width:30%;display:block;order:0}.ie10 .tdi_31 .td-image-container,.ie11 .tdi_31 .td-image-container{flex:0 0 auto}.ie10 .tdi_31 .td-module-meta-info,.ie11 .tdi_31 .td-module-meta-info{flex:1}.tdi_31 .td-post-vid-time{display:block}.tdi_31 .td-module-meta-info{padding:2px 0 0 15px;border-color:#eaeaea}.tdi_31 .entry-title{margin:0 0 5px;font-family:Fira Sans!important;font-size:16px!important}.tdi_31 .td-excerpt{column-count:1;column-gap:48px;display:none;font-family:Fira Sans!important}.tdi_31 .td-post-category:not(.td-post-extra-category){display:none}.tdi_31 .td-read-more{display:none}.tdi_31 .td-author-date{display:none}.tdi_31 .td-post-author-name{display:none}.tdi_31 .td-post-date,.tdi_31 .td-post-author-name span{display:none}.tdi_31 .entry-review-stars{display:none}.tdi_31 .td-icon-star,.tdi_31 .td-icon-star-empty,.tdi_31 .td-icon-star-half{font-size:15px}.tdi_31 .td-module-comments{display:none}.tdi_31 .tdb-author-photo .avatar{width:20px;height:20px;margin-right:6px;border-radius:50%}.tdi_31 .td-module-title a{color:#2d2d2d;box-shadow:inset 0 0 0 0 #f0a83b}body .tdi_31 .td_module_wrap:hover .td-module-title a,.tdi_31 .tdb-aj-cur-element .entry-title a{color:#f0a83b!important}.tdi_31 .td-module-container:hover .td-module-title a{box-shadow:inset 0 -1px 0 0 #f0a83b}.tdi_31 .td-editor-date,.tdi_31 .td-editor-date .td-post-author-name,.tdi_31 .td-module-comments a{font-family:Fira Sans!important}@media (min-width:768px){.tdi_31 .td-module-title a{transition:all 0.2s ease;-webkit-transition:all 0.2s ease}}@media (min-width:1019px) and (max-width:1140px){.tdi_31 .td_module_wrap{padding-bottom:10px!important;margin-bottom:10px!important;padding-bottom:10px;margin-bottom:10px}.tdi_31 .td_module_wrap:nth-last-child(-n+1){margin-bottom:0!important;padding-bottom:0!important}.tdi_31 .td_module_wrap .td-module-container:before{display:block!important}.tdi_31 .td_module_wrap:nth-last-child(-n+1) .td-module-container:before{display:none!important}.tdi_31 .td-module-container:before{bottom:-10px}.tdi_31 .td-module-title a{box-shadow:inset 0 0 0 0 #f0a83b}.tdi_31 .td-module-container:hover .td-module-title a{box-shadow:inset 0 -1px 0 0 #f0a83b}@media (min-width:768px){.tdi_31 .td-module-title a{transition:all 0.2s ease;-webkit-transition:all 0.2s ease}}}@media (min-width:768px) and (max-width:1018px){.tdi_31 .td_module_wrap{padding-bottom:10px!important;margin-bottom:10px!important;padding-bottom:10px;margin-bottom:10px}.tdi_31 .td_module_wrap:nth-last-child(-n+1){margin-bottom:0!important;padding-bottom:0!important}.tdi_31 .td_module_wrap .td-module-container:before{display:block!important}.tdi_31 .td_module_wrap:nth-last-child(-n+1) .td-module-container:before{display:none!important}.tdi_31 .td-module-container:before{bottom:-10px}.tdi_31 .td-module-title a{box-shadow:inset 0 0 0 0 #f0a83b}.tdi_31 .td-module-container:hover .td-module-title a{box-shadow:inset 0 -1px 0 0 #f0a83b}@media (min-width:768px){.tdi_31 .td-module-title a{transition:all 0.2s ease;-webkit-transition:all 0.2s ease}}}@media (max-width:767px){.tdi_31 .td_module_wrap{padding-bottom:10px!important;margin-bottom:10px!important;padding-bottom:10px;margin-bottom:10px}.tdi_31 .td_module_wrap:nth-last-child(-n+1){margin-bottom:0!important;padding-bottom:0!important}.tdi_31 .td_module_wrap .td-module-container:before{display:block!important}.tdi_31 .td_module_wrap:nth-last-child(-n+1) .td-module-container:before{display:none!important}.tdi_31 .td-module-container:before{bottom:-10px}.tdi_31 .td-module-title a{box-shadow:inset 0 0 0 0 #f0a83b}.tdi_31 .td-module-container:hover .td-module-title a{box-shadow:inset 0 -1px 0 0 #f0a83b}@media (min-width:768px){.tdi_31 .td-module-title a{transition:all 0.2s ease;-webkit-transition:all 0.2s ease}}}</style><div class="tdb-block-inner td-fix-index"><div class="tdb-drop-down-search" aria-labelledby="td-header-search-button"><div class="tdb-drop-down-search-inner"><form method="get" class="tdb-search-form" action="https://www.linuxtoday.com/"><div class="tdb-search-form-inner"><input class="tdb-head-search-form-input" placeholder=" " type="text" value="" name="s" autocomplete="off" /><button class="wpb_button wpb_btn-inverse btn tdb-head-search-form-btn" title="Search" type="submit" aria-label="Search"><span>Search</span></button></div></form><div class="tdb-aj-search"></div></div></div><a href="#" role="button" aria-label="Search" class="tdb-head-search-btn dropdown-toggle" data-toggle="dropdown"><i class="tdb-search-icon td-icon-search"></i></a></div></div> <!-- ./block --></div></div></div></div></div></div> </div> </div> <div class="td-main-content-wrap td-container-wrap"> <div class="tdc-content-wrap"> <article class="post-138 tdb_templates type-tdb_templates status-publish post" itemscope="" itemtype="https://schema.org/Article"> <div id="tdi_44" class="tdc-zone"> <div class="tdc_zone tdi_45 wpb_row td-pb-row"> <div id="tdi_46" class="tdc-row"> <div class="vc_row tdi_47 wpb_row td-pb-row"> <div class="vc_column tdi_49 wpb_column vc_column_container tdc-column td-pb-span12"> <div class="wpb_wrapper"> <div class="td-block td-a-rec td-a-rec-id-custom-spot tdi_50 td_block_template_2"> <div class="wp-ads-inline-top" id="wp-ads-1158806388"><!-- Start: GAM Ad Slot Render | LinuxToday 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: transparent; border:0px solid #efefef;"> <script> window.googletag = window.googletag || { cmd: [] }; window.googletag.cmd.push(function() { googletag.display("inline-top"); }); </script> </div> <!-- End: GAM Ad Slot Render | LinuxToday Inline Top --></div> </div> </div> </div> </div> </div> <div id="tdi_51" class="tdc-row stretch_row_1400 td-stretch-content"> <div class="vc_row tdi_52 wpb_row td-pb-row"> <div class="vc_column tdi_54 wpb_column vc_column_container tdc-column td-pb-span9"> <div class="wpb_wrapper"> <div class="clearfix"></div> <div class="td_block_wrap tdb_breadcrumbs tdi_55 td-pb-border-top td_block_template_2 tdb-breadcrumbs " data-td-block-uid="tdi_55"> <div class="tdb-block-inner td-fix-index"> <span> <a title="" class="tdb-entry-crumb" href="https://www.linuxtoday.com/">Home</a> </span> <i class="tdb-bread-sep td-icon-right"></i> <span> <a title="View All Posts in Developer" class="tdb-entry-crumb" href="https://www.linuxtoday.com/developer/">Developer</a> </span> </div> </div> <div class="td_block_wrap tdb_title tdi_56 tdb-single-title td-pb-border-top td_block_template_2" data-td-block-uid="tdi_56"> <div class="tdb-block-inner td-fix-index"> <h1 class="tdb-title-text">Tokei: Quickly Count Different Metrics in Your Codebase</h1> <div class="tdb-title-line"></div> </div> </div> <div class="td_block_wrap td_single_author_from_postmeta tdi_57 td-pb-border-top td_block_template_2" data-td-block-uid="tdi_57"> <div class="tdb-block-inner td-fix-index"> <div class="tdb-author-name-wrap"> <span class="tdb-author-by">By</span> Benny Lanco </div> </div> </div> <div class="td_block_wrap tdb_single_date tdi_58 td-pb-border-top td_block_template_2 tdb-post-meta" data-td-block-uid="tdi_58"> <div class="tdb-block-inner td-fix-index"> <time class="entry-date updated td-module-date" datetime="2024-11-04T14:00:25+00:00">November 4, 2024</time> </div> </div> <!-- ./block --> <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"> <div class="tdb-block-inner td-fix-index"> <div class="form-custom-fields-container above-content"></div> <p>The Tokei CLI tool assists the developer in finding the number of programming languages, lines, comments, and blanks in their codebase.</p> </div> </div> <div class="td_block_wrap td_single_publication_source_from_postmeta tdi_60 td-pb-border-top td_block_template_2" data-td-block-uid="tdi_60"> <a href="https://linuxtldr.com/installing-tokei/" class="action-btn publication_source" target="_blank">Complete Story</a> </div> <div class="td_block_wrap tdb_single_post_share tdi_61 td-pb-border-top td_block_template_2" data-td-block-uid="tdi_61"> <div id="tdi_61" class="td-post-sharing tdb-block td-ps-bg td-ps-notext td-post-sharing-style1"> <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://www.linuxtoday.com/developer/tokei-quickly-count-different-metrics-in-your-codebase/" title="Facebook" style="transition: opacity 0.2s ease 0s; opacity: 1;"> <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=Tokei: Quickly Count Different Metrics in Your Codebase&url=https://www.linuxtoday.com/developer/tokei-quickly-count-different-metrics-in-your-codebase/&via=Linux Today" title="Twitter" style="transition: opacity 0.2s ease 0s; opacity: 1;"> <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.linuxtoday.com/developer/tokei-quickly-count-different-metrics-in-your-codebase//&title=Tokei: Quickly Count Different Metrics in Your Codebase" title="Linkedin" style="transition: opacity 0.2s ease 0s; opacity: 1;"> <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-mail" href="mailto:?subject=Tokei: Quickly Count Different Metrics in Your Codebase&body=https://www.linuxtoday.com/developer/tokei-quickly-count-different-metrics-in-your-codebase/" title="Email" style="transition: opacity 0.2s ease 0s; opacity: 1;"> <div class="td-social-but-icon"> <i class="td-icon-mail"></i> </div> <div class="td-social-but-text">Email</div> </a> <a class="td-social-sharing-button td-social-sharing-button-js td-social-network td-social-print" href="#" title="Print" style="transition: opacity 0.2s ease 0s; opacity: 1;"> <div class="td-social-but-icon"> <i class="td-icon-print"></i> </div> <div class="td-social-but-text">Print</div> </a> </div> <div class="td-social-sharing-hidden" style="display: none;"> <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_61" 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> </div> <div class="vc_column tdi_64 wpb_column vc_column_container tdc-column td-pb-span3 td-is-sticky"> <div class="wpb_wrapper" style="width: auto; position: static; top: auto; bottom: auto;"> <div style=" --ta-campaign-plugin-primary: #F0A83B; --ta-campaign-plugin-button-text: #fff; --ta-campaign-plugin-button-hover-background: #515151; --ta-campaign-plugin-button-hover-text: #fff; --ta-campaign-plugin-button-toggle-background: #F0A83B; --ta-campaign-plugin-button-toggle-text: #000000; " data-ajax-url="https://www.linuxtoday.com/wp/wp-admin/admin-ajax.php"> <div id="ta-campaign-widget-674ccb816d5f3" 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":"#F0A83B","button":{"button_text_color":"#fff","hover":{"button_hover_background_color":"#515151","button_hover_text_color":"#fff"},"toggle":{"button_toggle_background_color":"#F0A83B","button_toggle_text_color":"#000000"}}},"custom_scss":"margin-bottom: 30px"},"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 subscribing, 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":"674ccb816d5f3","campaign_id":"182410","campaign_type":"sidebar","popup_type":null,"newsletters":["developer-insider"],"behavior":{"opt_in_enabled":true},"appearance":{"colors":{"primary":"#F0A83B","button":{"text":"#fff","hover":{"background":"#515151","text":"#fff"},"toggle":{"background":"#F0A83B","text":"#000000"}}},"custom_css":"#ta-campaign-widget-674ccb816d5f3 {\n margin-bottom: 30px;\n}\n"},"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 subscribing, 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-674ccb816d5f3"> Email Address </label> <input class="ta-campaign-widget__input__text" placeholder="Work Email Address" id="email-674ccb816d5f3" 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-674ccb816d5f3" class="ta-campaign-widget__checkbox__input mr-2" name="opt-in" type="checkbox"/> <label class="ta-campaign-widget__checkbox__label" for="opt-in-674ccb816d5f3"> By subscribing, 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> #ta-campaign-widget-674ccb816d5f3 { margin-bottom: 30px; } </style><div class="wp-ads-sticky-rail" id="wp-ads-1809149358"><!-- Start: GAM Ad Slot Render | LinuxToday 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> window.googletag = window.googletag || { cmd: [] }; window.googletag.cmd.push(function() { googletag.display("sticky-rail"); }); </script> </div> <!-- End: GAM Ad Slot Render | LinuxToday Sticky Rail --></div> <div class="clearfix"></div> <div class="td_block_wrap td_flex_block_1 tdi_66 td-pb-border-top _ntv_must_read_widget td_block_template_2 td_flex_block" data-td-block-uid="tdi_66"> <div class="td-block-title-wrap"> <h4 class="td-block-title"> <span class="td-pulldown-size">Must Read</span> </h4> </div> <div id="tdi_66" class="td_block_inner td-mc1-wrap"><div class="td_module_flex td_module_flex_1 td_module_wrap td-animation-stack"> <div class="td-module-container td-category-pos-above"> <div class="td-module-meta-info"> <a href="https://www.linuxtoday.com/blog/" class="td-post-category">Blog</a> <h3 class="entry-title td-module-title"> <a href="https://www.linuxtoday.com/blog/8-linux-commands-to-diagnose-hard-drive-issues-in-linux/" rel="bookmark" title="8 Linux Commands to Diagnose Hard Drive Issues in Linux">8 Linux Commands to Diagnose Hard Drive Issues in Linux</a> </h3> </div> </div> </div><br> <div class="td_module_flex td_module_flex_1 td_module_wrap td-animation-stack"> <div class="td-module-container td-category-pos-above"> <div class="td-module-meta-info"> <a href="https://www.linuxtoday.com/blog/" class="td-post-category">Blog</a> <h3 class="entry-title td-module-title"> <a href="https://www.linuxtoday.com/blog/turn-shell-scripts-into-macos-micro-apps-with-platypus/" rel="bookmark" title="Turn shell scripts into macOS micro apps with Platypus">Turn shell scripts into macOS micro apps with Platypus</a> </h3> </div> </div> </div><br> <div class="td_module_flex td_module_flex_1 td_module_wrap td-animation-stack"> <div class="td-module-container td-category-pos-above"> <div class="td-module-meta-info"> <a href="https://www.linuxtoday.com/blog/" class="td-post-category">Blog</a> <h3 class="entry-title td-module-title"> <a href="https://www.linuxtoday.com/blog/zellij-modern-drop-in-replacement-for-tmux-command-on-linux/" rel="bookmark" title="Zellij: Modern Drop-in Replacement for Tmux Command on Linux">Zellij: Modern Drop-in Replacement for Tmux Command on Linux</a> </h3> </div> </div> </div><br> <div class="td_module_flex td_module_flex_1 td_module_wrap td-animation-stack"> <div class="td-module-container td-category-pos-above"> <div class="td-module-meta-info"> <a href="https://www.linuxtoday.com/blog/" class="td-post-category">Blog</a> <h3 class="entry-title td-module-title"> <a href="https://www.linuxtoday.com/blog/how-to-install-google-earth-on-ubuntu-and-other-distros/" rel="bookmark" title="How to Install Google Earth on Ubuntu and Other Distros">How to Install Google Earth on Ubuntu and Other Distros</a> </h3> </div> </div> </div><br> <div class="td_module_flex td_module_flex_1 td_module_wrap td-animation-stack"> <div class="td-module-container td-category-pos-above"> <div class="td-module-meta-info"> <a href="https://www.linuxtoday.com/blog/" class="td-post-category">Blog</a> <h3 class="entry-title td-module-title"> <a href="https://www.linuxtoday.com/blog/after-16-years-pidgin-3-takes-its-first-steps/" rel="bookmark" title="After 16 Years, Pidgin 3 Takes Its First Steps">After 16 Years, Pidgin 3 Takes Its First Steps</a> </h3> </div> </div> </div><br> </div> </div> <div class="clearfix"></div> </div> </div> </div> </div> </div> </div> </div> </article> <style> /* TA added styles */ .wp-ads-sticky-rail { padding-bottom: 20px; } /* custom css */ .tdi_45{ min-height: 0; } /* custom css */ .tdi_47, .tdi_47 .tdc-columns{ min-height: 0; }.tdi_47, .tdi_47 .tdc-columns{ display: block; }.tdi_47 .tdc-columns{ width: 100%; } /* custom css */ .tdi_49{ vertical-align: baseline; }.tdi_49 > .wpb_wrapper, .tdi_49 > .wpb_wrapper > .tdc-elements{ display: block; }.tdi_49 > .wpb_wrapper > .tdc-elements{ width: 100%; }.tdi_49 > .wpb_wrapper{ width: auto; height: auto; } /* inline tdc_css att */ .tdi_50{ margin-top:20px !important; padding-bottom:20px !important; } /* custom css */ .tdi_50.td-a-rec{ text-align: center; }.tdi_50 .td-element-style{ z-index: -1; } /* custom css */ .tdi_52, .tdi_52 .tdc-columns{ min-height: 0; }.tdi_52, .tdi_52 .tdc-columns{ display: block; }.tdi_52 .tdc-columns{ width: 100%; } /* inline tdc_css att */ .tdi_52{ margin-top:40px !important; } .tdi_52 .td_block_wrap, .tdi_52 .td_block_wrap .td_block_inner{ text-align:left !important } /* custom css */ .tdi_54{ vertical-align: baseline; }.tdi_54 > .wpb_wrapper, .tdi_54 > .wpb_wrapper > .tdc-elements{ display: block; }.tdi_54 > .wpb_wrapper > .tdc-elements{ width: 100%; }.tdi_54 > .wpb_wrapper{ width: auto; height: auto; } /* inline tdc_css att */ .tdi_55{ margin-bottom:18px !important; } /* custom css */ .tdb-breadcrumbs{ margin-bottom: 11px; font-family: '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_55 .tdb-bread-sep{ font-size: 10px; margin: 0 5px; }.td-theme-wrap .tdi_55{ text-align: left; }.tdi_55{ font-family:Fira Sans !important;font-size:14px !important; } /* inline tdc_css att */ .tdi_56{ margin-top:40px !important; margin-bottom:40px !important; } /* phone */ @media (max-width: 767px) { .tdi_56{ padding-right:0px !important; } } /* portrait */ @media (min-width: 768px) and (max-width: 1018px) { .tdi_56{ padding-right:0px !important; } } /* landscape */ @media (min-width: 1019px) and (max-width: 1140px) { .tdi_56{ padding-right:100px !important; } } /* custom css */ .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: #4db2ec; top: 0; left: 0; margin: auto; }.tdb-single-title .tdb-title-text{ font-size: 41px; line-height: 50px; font-weight: 400; }.tdi_56 .tdb-title-text{ background-color: #515151; -webkit-background-clip: text; -webkit-text-fill-color: transparent; font-family:Fira Sans !important;font-size:32px !important;line-height:1.2 !important;font-weight:500 !important; }html[class*='ie'] .tdi_56 .tdb-title-text{ background: none; color: #515151; }.tdi_56 .tdb-title-line:after{ height: 2px; bottom: 40%; }.tdi_56 .tdb-title-line{ height: 50px; }.td-theme-wrap .tdi_56{ text-align: left; }.tdi_56 .tdb-first-letter{ left: -0.36em; right: auto; font-family:Fira Sans !important; }.tdi_56 .tdb-add-text{ font-family:Fira Sans !important; } /* landscape */ @media (min-width: 1019px) and (max-width: 1140px){ .tdi_56 .tdb-title-text{ font-family:Fira Sans !important;font-size:48px !important;line-height:1.2 !important;font-weight:500 !important; } } /* portrait */ @media (min-width: 768px) and (max-width: 1018px){ .tdi_56 .tdb-title-text{ font-family:Fira Sans !important;font-size:36px !important;line-height:1.2 !important;font-weight:500 !important; } } /* phone */ @media (max-width: 767px){ .tdi_56 .tdb-title-text{ font-family:Fira Sans !important;font-size:24px !important;line-height:1.6 !important;font-weight:500 !important; } } /* custom css */ .tdb-post-meta{ margin-bottom: 16px; color: #444; font-family: '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; }.tdi_57{ display: inline-block; }.tdi_57 .tdb-author-name-wrap{ align-items: baseline; }.tdi_57 .tdb-author-by{ color: #515151; }.tdi_57 .tdb-author-name{ color: #515151; }.tdi_57 .tdb-author-name:hover{ color: #008de8; } /* inline tdc_css att */ .tdi_58{ margin-bottom:2px !important; margin-left:10px !important; } /* phone */ @media (max-width: 767px) { .tdi_58{ margin-right:10px !important; } } /* custom css */ .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_58{ display: inline-block; font-family:Fira Sans !important;font-size:14px !important;text-transform:uppercase !important; }.tdi_58 svg{ width: 14px; }.tdi_58 .tdb-date-icon{ margin-right: 5px; } /* inline tdc_css att */ .tdi_59{ margin-top:0px !important; } /* phone */ @media (max-width: 767px) { .tdi_59{ margin-top:0px !important; } } /* custom css */ .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(.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%; }.tdi_59, .tdi_59 > p, .tdi_59 .tdb-block-inner > p{ font-family:Fira Sans !important;font-size:16px !important;font-weight:400 !important; }.tdi_59 h1{ font-family:Fira Sans !important;font-size:42px !important;font-weight:500 !important; }.tdi_59 h2{ font-family:Fira Sans !important;font-size:36px !important;font-weight:500 !important; }.tdi_59 h3{ font-family:Fira Sans !important;font-size:30px !important;font-weight:500 !important; }.tdi_59 h4{ font-family:Fira Sans !important; }.tdi_59 h5{ font-family:Fira Sans !important; }.tdi_59 h6{ font-family:Fira Sans !important; }.tdi_59 li{ font-family:Fira Sans !important; }.tdi_59 .tdb-block-inner blockquote p{ font-family:liquor-store, sans-serif !important;font-size:42px !important;line-height:1.1 !important;font-style:italic !important;text-transform:uppercase !important;letter-spacing:1px !important; color: #1186c9; }.tdi_59 .wp-caption-text, .tdi_59 figcaption{ font-family:Fira Sans !important; color: #515151; }.tdi_59, .tdi_59 p{ color: #515151; }.tdi_59 h1, .tdi_59 h2, .tdi_59 h3, .tdi_59 h4, .tdi_59 h5, .tdi_59 h6{ color: #1186c9; }.tdi_59 a{ color: #f0a83b; }.tdi_59 a:hover{ color: #515151; }@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 print { .single .td-header-template-wrap, .single .td-footer-template-wrap, .single .td_block_wrap:not(.tdb_breadcrumbs):not(.tdb_single_categories):not(.tdb-single-title):not(.tdb_single_author):not(.tdb_single_date ):not(.tdb_single_comments_count ):not(.tdb_single_post_views):not(.tdb_single_featured_image):not(.tdb_single_content) { display: none; } .single.td-animation-stack-type0 .post img { opacity: 1 !important; } } /* portrait */ @media (min-width: 768px) and (max-width: 1018px){ .tdi_59 .tdb-block-inner blockquote p{ font-family:liquor-store, sans-serif !important;font-size:24px !important;line-height:1.2 !important;font-style:italic !important;text-transform:uppercase !important;letter-spacing:1px !important; } } /* phone */ @media (max-width: 767px){ .tdi_59 .tdb-block-inner blockquote p{ font-family:liquor-store, sans-serif !important;font-size:24px !important;line-height:1.2 !important;font-style:italic !important;text-transform:uppercase !important;letter-spacing:1px !important; } } /* inline tdc_css att */ .tdi_61{ margin-top:20px !important; margin-bottom:60px !important; } /* portrait */ @media (min-width: 768px) and (max-width: 1018px) { .tdi_61{ margin-top:15px !important; margin-bottom:40px !important; } } /* custom css */ .tdb_single_post_share{ margin-bottom: 23px; }.tdb-share-classic{ position: relative; height: 20px; margin-bottom: 15px; } .td-post-sharing-classic { position: relative; height: 20px; } .td-post-sharing { margin-left: -3px; margin-right: -3px; font-family: '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; /* responsive portrait phone */ } @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 { 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: 12px; } .td-social-pinterest .td-icon-pinterest { font-size: 13px; } .td-social-whatsapp .td-icon-whatsapp { font-size: 18px; } .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-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-mail .td-social-but-text, .td-ps-bg .td-social-digg .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-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, .td-ps-border-colored .td-social-twitter .td-social-but-text { border-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-mail .td-social-but-text, .td-ps-border-colored .td-social-digg .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-viber .td-social-but-icon, .td-ps-border-colored .td-social-viber .td-social-but-text { border-color: #3ec729; } .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 { 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-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 { 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-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-twitter .td-social-but-icon { color: #29c5f6; } .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 { 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-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 { 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-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-mail .td-social-but-text, .td-ps-bar .td-social-digg .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-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 { 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-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 { 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; } } /* inline tdc_css att */ /* portrait */ @media (min-width: 768px) and (max-width: 1018px) { .tdi_62{ margin-bottom:40px !important; } } /* phone */ @media (max-width: 767px) { .tdi_62{ margin-bottom:40px !important; } } /* custom css */ .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: '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: #4db2ec; }.tdb-post-next{ margin-left: 2%; text-align: right; }.tdb-post-prev{ margin-right: 2%; }.tdi_62 .tdb-next-post a{ color: #f0a83b; font-family:Fira Sans !important;font-size:24px !important;line-height:1.4 !important; }.tdi_62 .tdb-next-post:hover a{ color: #515151; box-shadow: inset 0 -2px 0 0 #515151; }.tdi_62 .td-module-title a{ box-shadow: inset 0 0 0 0 #515151; }.tdi_62 .tdb-next-post span{ font-family:Fira Sans !important;font-size:16px !important; }@media (min-width: 768px) { .tdi_62 .td-module-title a { transition: all 0.2s ease; -webkit-transition: all 0.2s ease; } } /* landscape */ @media (min-width: 1019px) and (max-width: 1140px){ .tdi_62 .td-module-title a{ box-shadow: inset 0 0 0 0 #515151; }.tdi_62 .tdb-next-post:hover a{ box-shadow: inset 0 -2px 0 0 #515151; }@media (min-width: 768px) { .tdi_62 .td-module-title a { transition: all 0.2s ease; -webkit-transition: all 0.2s ease; } } } /* portrait */ @media (min-width: 768px) and (max-width: 1018px){ .tdi_62 .td-module-title a{ box-shadow: inset 0 0 0 0 #515151; }.tdi_62 .tdb-next-post:hover a{ box-shadow: inset 0 -2px 0 0 #515151; }.tdi_62 .tdb-next-post a{ font-family:Fira Sans !important;font-size:14px !important;line-height:1.4 !important; }@media (min-width: 768px) { .tdi_62 .td-module-title a { transition: all 0.2s ease; -webkit-transition: all 0.2s ease; } } } /* phone */ @media (max-width: 767px){ .tdi_62 .td-module-title a{ box-shadow: inset 0 0 0 0 #515151; }.tdi_62 .tdb-next-post:hover a{ box-shadow: inset 0 -2px 0 0 #515151; }.tdi_62 .tdb-next-post a{ font-family:Fira Sans !important;font-size:12px !important;line-height:1.4 !important; }@media (min-width: 768px) { .tdi_62 .td-module-title a { transition: all 0.2s ease; -webkit-transition: all 0.2s ease; } } } /* custom css */ .tdi_64{ vertical-align: baseline; }.tdi_64 > .wpb_wrapper, .tdi_64 > .wpb_wrapper > .tdc-elements{ display: block; }.tdi_64 > .wpb_wrapper > .tdc-elements{ width: 100%; }.tdi_64 > .wpb_wrapper{ width: auto; height: auto; } /* inline tdc_css att */ .tdi_65{ padding-bottom:20px !important; } /* custom css */ .tdi_65.td-a-rec{ text-align: center; }.tdi_65 .td-element-style{ z-index: -1; } .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: #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: #4db2ec; } .td-theme-wrap .tdi_66 .td-block-title > *, .td-theme-wrap .tdi_66 .td-pulldown-filter-link:hover, .td-theme-wrap .tdi_66 .td-subcat-item a:hover, .td-theme-wrap .tdi_66 .td-subcat-item .td-cur-simple-item, .td-theme-wrap .tdi_66 .td-subcat-dropdown:hover .td-subcat-more span, .td-theme-wrap .tdi_66 .td-subcat-dropdown:hover .td-subcat-more i { color: #515151; } .td-theme-wrap .tdi_66 .td-subcat-dropdown ul:after { background-color: #515151; } .td-theme-wrap .tdi_66 .td_module_wrap:hover .entry-title a, .td-theme-wrap .tdi_66 .td_quote_on_blocks, .td-theme-wrap .tdi_66 .td-opacity-cat .td-post-category:hover, .td-theme-wrap .tdi_66 .td-opacity-read .td-read-more a:hover, .td-theme-wrap .tdi_66 .td-opacity-author .td-post-author-name a:hover, .td-theme-wrap .tdi_66 .td-instagram-user a { color: #515151; } .td-theme-wrap .tdi_66 .td-next-prev-wrap a:hover, .td-theme-wrap .tdi_66 .td-load-more-wrap a:hover { background-color: #515151; border-color: #515151; } .td-theme-wrap .tdi_66 .td-read-more a, .td-theme-wrap .tdi_66 .td-weather-information:before, .td-theme-wrap .tdi_66 .td-weather-week:before, .td-theme-wrap .tdi_66 .td-exchange-header:before, .td-theme-wrap .td-footer-wrapper .tdi_66 .td-post-category, .td-theme-wrap .tdi_66 .td-post-category:hover { background-color: #515151; } /* custom css */ .tdi_66 .td-image-wrap{ padding-bottom: 70%; }.tdi_66 .entry-thumb{ background-position: center 50%; }.tdi_66 .td-image-container{ flex: 0 0 30%; width: 30%; display: block; order: 0; }.ie10 .tdi_66 .td-image-container, .ie11 .tdi_66 .td-image-container{ flex: 0 0 auto; }.tdi_66 .td-module-container{ flex-direction: row; border-color: #eaeaea !important; }.ie10 .tdi_66 .td-module-meta-info, .ie11 .tdi_66 .td-module-meta-info{ flex: 1; }.tdi_66 .td-module-meta-info{ border-color: #eaeaea; }.tdi_66 .td_module_wrap{ width: 100%; float: left; padding-left: 20px; padding-right: 20px; padding-bottom: 18px; margin-bottom: 18px; }.tdi_66 .td_block_inner{ margin-left: -20px; margin-right: -20px; }.tdi_66 .td-module-container:before{ bottom: -18px; border-width: 0 0 1px 0; border-style: solid; border-color: #eaeaea; border-color: #eaeaea; }.tdi_66 .td-post-vid-time{ display: block; }.tdi_66 .td-post-category{ padding: 0px; background-color: #ffffff; color: #1186c9; font-family:liquor-store, sans-serif !important;font-size:15px !important;font-style:italic !important;text-transform:uppercase !important;letter-spacing:1px !important; }.tdi_66 .td-author-photo .avatar{ width: 20px; height: 20px; margin-right: 6px; border-radius: 50%; }.tdi_66 .td-excerpt{ display: none; column-count: 1; column-gap: 48px; font-family:Fira Sans !important; }.tdi_66 .td-audio-player{ opacity: 1; visibility: visible; height: auto; font-size: 13px; }.tdi_66 .td-read-more{ display: none; }.tdi_66 .td-author-date{ display: inline; }.tdi_66 .td-post-author-name{ display: none; }.tdi_66 .td-post-date, .tdi_66 .td-post-author-name span{ display: none; }.tdi_66 .entry-review-stars{ display: inline-block; }.tdi_66 .td-icon-star, .tdi_66 .td-icon-star-empty, .tdi_66 .td-icon-star-half{ font-size: 15px; }.tdi_66 .td-module-comments{ display: none; }.tdi_66 .td_module_wrap:nth-last-child(1){ margin-bottom: 0; padding-bottom: 0; }.tdi_66 .td_module_wrap:nth-last-child(1) .td-module-container:before{ display: none; }.tdi_66 .td-post-category:hover{ background-color: #ffffff !important; color: #515151; }.tdi_66 .td-module-title a{ color: #515151; box-shadow: inset 0 0 0 0 #f0a83b; }.tdi_66 .td_module_wrap:hover .td-module-title a{ color: #f0a83b !important; box-shadow: inset 0 -2px 0 0 #f0a83b; }.tdi_66 .entry-title{ margin: 20px 0 20px 0; font-family:Fira Sans !important;font-size:16px !important;line-height:1.4 !important; }.tdi_66 .td-block-title a, .tdi_66 .td-block-title span{ font-family:liquor-store, sans-serif !important;font-size:32px !important;font-style:italic !important;font-weight:400 !important;text-transform:uppercase !important;letter-spacing:1px !important; }.tdi_66 .td-editor-date, .tdi_66 .td-editor-date .td-post-author-name a, .tdi_66 .td-editor-date .entry-date, .tdi_66 .td-module-comments a{ font-family:Fira Sans !important;font-size:14px !important; }.tdi_66 .td-read-more a{ font-family:Fira Sans !important; }html:not([class*='ie']) .tdi_66 .td-module-container:hover .entry-thumb:before{ opacity: 0; }@media (min-width: 768px) { .tdi_66 .td-module-title a { transition: all 0.2s ease; -webkit-transition: all 0.2s ease; } } /* landscape */ @media (min-width: 1019px) and (max-width: 1140px){ .tdi_66 .td_module_wrap{ padding-bottom: 18px; margin-bottom: 18px; padding-bottom: 18px !important; margin-bottom: 18px !important; }.tdi_66 .td-module-container:before{ bottom: -18px; }.tdi_66 .td-post-category{ display: none; }.tdi_66 .td_module_wrap:nth-last-child(1){ margin-bottom: 0 !important; padding-bottom: 0 !important; }.tdi_66 .td_module_wrap .td-module-container:before{ display: block !important; }.tdi_66 .td_module_wrap:nth-last-child(1) .td-module-container:before{ display: none !important; }.tdi_66 .td-module-title a{ box-shadow: inset 0 0 0 0 #f0a83b; }.tdi_66 .td_module_wrap:hover .td-module-title a{ box-shadow: inset 0 -2px 0 0 #f0a83b; }.tdi_66 .entry-title{ font-family:Fira Sans !important;font-size:14px !important;line-height:1.4 !important; }@media (min-width: 768px) { .tdi_66 .td-module-title a { transition: all 0.2s ease; -webkit-transition: all 0.2s ease; } } } /* portrait */ @media (min-width: 768px) and (max-width: 1018px){ .tdi_66 .td-image-wrap{ padding-bottom: 90%; }.tdi_66 .td-module-meta-info{ padding: 0 0 0 10px; }.tdi_66 .td_module_wrap{ padding-bottom: 8px; margin-bottom: 8px; padding-bottom: 8px !important; margin-bottom: 8px !important; }.tdi_66 .td-module-container:before{ bottom: -8px; }.tdi_66 .td-post-category{ display: none; }.tdi_66 .td_module_wrap:nth-last-child(1){ margin-bottom: 0 !important; padding-bottom: 0 !important; }.tdi_66 .td_module_wrap .td-module-container:before{ display: block !important; }.tdi_66 .td_module_wrap:nth-last-child(1) .td-module-container:before{ display: none !important; }.tdi_66 .td-module-title a{ box-shadow: inset 0 0 0 0 #f0a83b; }.tdi_66 .td_module_wrap:hover .td-module-title a{ box-shadow: inset 0 -2px 0 0 #f0a83b; }.tdi_66 .entry-title{ font-family:Fira Sans !important;font-size:12px !important;line-height:1.4 !important; }@media (min-width: 768px) { .tdi_66 .td-module-title a { transition: all 0.2s ease; -webkit-transition: all 0.2s ease; } } } /* phone */ @media (max-width: 767px){ .tdi_66 .td-module-meta-info{ padding: 0px 5px 5px 15px; }.tdi_66 .td_module_wrap{ padding-bottom: 18px; margin-bottom: 18px; padding-bottom: 18px !important; margin-bottom: 18px !important; }.tdi_66 .td-module-container:before{ bottom: -18px; }.tdi_66 .td-post-category{ display: none; }.tdi_66 .td_module_wrap:nth-last-child(1){ margin-bottom: 0 !important; padding-bottom: 0 !important; }.tdi_66 .td_module_wrap .td-module-container:before{ display: block !important; }.tdi_66 .td_module_wrap:nth-last-child(1) .td-module-container:before{ display: none !important; }.tdi_66 .td-module-title a{ box-shadow: inset 0 0 0 0 #f0a83b; }.tdi_66 .td_module_wrap:hover .td-module-title a{ box-shadow: inset 0 -2px 0 0 #f0a83b; }.tdi_66 .entry-title{ font-family:Fira Sans !important;font-size:15px !important;line-height:1.4 !important; }@media (min-width: 768px) { .tdi_66 .td-module-title a { transition: all 0.2s ease; -webkit-transition: all 0.2s ease; } } } .ntv-rr .ntv-disc { color: #f0a83b; } .ntv-rr .ntv-byline { color: #939393; column-count: 1; column-gap: 0px; font-family: Fira Sans, Arial, sans-serif; font-size: 14px; margin-bottom: 13px; } .ntv-rr .ntv-byline a { font-weight: 700; color: #939393; box-shadow: inset 0 0 0 0 #f0a83b; transition: all 0.2s ease; } .ntv-rr .ntv-byline a:hover { color: #f0a83b; box-shadow: inset 0 -2px 0 0 #f0a83b; } .ntv-rr .ntvAdChoicesImg { right: 20px !important; top: -18px !important; } @media (max-width: 1140px) { .ntv-rr .ntv-disc { display: block !important; font-size: 13px !important; } .ntv-rr h3.entry-title { margin: 10px 0; } .ntv-rr .ntv-byline { font-size: 12px; } } @media (max-width: 1018px) { .ntv-rr .ntv-disc { margin-top: 13px; } } @media (min-width: 768px) and (max-width: 1018px) { .ntv-rr .ntvAdChoicesImg { top: -8px !important; } .ntv-rr .entry-title { margin-bottom: 6px; } } </style> </div> </div> <div class="td-footer-template-wrap" style="position: relative"> <div class="td-footer-wrap "> <div id="tdi_32" class="tdc-zone"><div class="tdc_zone tdi_33 wpb_row td-pb-row tdc-element-style" > <style scoped>.tdi_33{min-height:0}.tdi_33>.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:#000000!important}</style> <div class="tdi_32_rand_style td-element-style" ></div><div id="tdi_34" class="tdc-row stretch_row_1400 td-stretch-content"><div class="vc_row tdi_35 wpb_row td-pb-row tdc-element-style" > <style scoped>.tdi_35,.tdi_35 .tdc-columns{min-height:0}.tdi_35,.tdi_35 .tdc-columns{display:block}.tdi_35 .tdc-columns{width:100%}.tdi_35:before,.tdi_35:after{display:table}@media (min-width:768px){.tdi_35{margin-left:-60px;margin-right:-60px}.tdi_35 .tdc-row-video-background-error,.tdi_35>.vc_column,.tdi_35>.tdc-columns>.vc_column{padding-left:60px;padding-right:60px}}@media (min-width:1019px) and (max-width:1140px){@media (min-width:768px){.tdi_35{margin-left:-10px;margin-right:-10px}.tdi_35 .tdc-row-video-background-error,.tdi_35>.vc_column,.tdi_35>.tdc-columns>.vc_column{padding-left:10px;padding-right:10px}}}@media (min-width:768px) and (max-width:1018px){@media (min-width:768px){.tdi_35{margin-left:-10px;margin-right:-10px}.tdi_35 .tdc-row-video-background-error,.tdi_35>.vc_column,.tdi_35>.tdc-columns>.vc_column{padding-left:10px;padding-right:10px}}}.tdi_35{padding-top:60px!important;padding-bottom:40px!important;position:relative}.tdi_35 .td_block_wrap{text-align:left}@media (min-width:768px) and (max-width:1018px){.tdi_35{padding-top:30px!important;padding-bottom:10px!important}}@media (max-width:767px){.tdi_35{padding-top:40px!important}}</style> <div class="tdi_34_rand_style td-element-style" ><div class="td-element-style-before"><style>.tdi_34_rand_style>.td-element-style-before{content:''!important;width:100%!important;height:100%!important;position:absolute!important;top:0!important;left:0!important;display:block!important;z-index:0!important;opacity:0.1!important;background-size:cover!important;background-position:center top!important}</style></div><style>.tdi_34_rand_style{background-color:#f2f2f2!important}</style></div><div class="vc_column tdi_37 wpb_column vc_column_container tdc-column td-pb-span5"> <style scoped>.tdi_37{vertical-align:baseline}.tdi_37>.wpb_wrapper,.tdi_37>.wpb_wrapper>.tdc-elements{display:block}.tdi_37>.wpb_wrapper>.tdc-elements{width:100%}.tdi_37>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_37>.wpb_wrapper{width:auto;height:auto}@media (max-width:767px){.tdi_37{justify-content:center!important;text-align:center!important}}</style><div class="wpb_wrapper" ><div class="td_block_wrap tdb_header_logo tdi_38 td-pb-border-top td_block_template_2 tdb-header-align" data-td-block-uid="tdi_38" > <style>.tdi_38{margin-top:10px!important;margin-bottom:10px!important}@media (max-width:767px){.tdi_38{padding-left:40px!important;display:inline-block!important}}</style> <style>.tdi_38 .tdb-logo-a,.tdi_38 h1{flex-direction:row;align-items:center;justify-content:flex-start}.tdi_38 .tdb-logo-svg-wrap{display:block}.tdi_38 .tdb-logo-svg-wrap+.tdb-logo-img-wrap{display:none}.tdi_38 .tdb-logo-img{max-width:50%}.tdi_38 .tdb-logo-img-wrap{display:block}.tdi_38 .tdb-logo-text-tagline{margin-top:2px;margin-left:0;display:block}.tdi_38 .tdb-logo-text-title{display:block;color:#ffffff;font-size:34px!important;font-weight:500!important;text-transform:uppercase!important;}.tdi_38 .tdb-logo-text-wrap{flex-direction:column;align-items:center}.tdi_38 .tdb-logo-icon{top:0px;display:block}@media (min-width:1019px) and (max-width:1140px){.tdi_38 .tdb-logo-text-title{font-size:32px!important;}}@media (min-width:768px) and (max-width:1018px){.tdi_38 .tdb-logo-text-title{font-size:22px!important;}}</style><div class="tdb-block-inner td-fix-index"><a class="tdb-logo-a" href="https://www.linuxtoday.com/" title="LinuxToday"><span class="tdb-logo-img-wrap"><img class="tdb-logo-img td-retina-data" data-retina="https://assets.linuxtoday.com/uploads/2021/06/Linux_logos_RetinaLogo.png" src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201134%20375'%3E%3C/svg%3E" alt="LinuxToday" title="LinuxToday" width="1134" height="375" data-lazy-src="https://assets.linuxtoday.com/uploads/2021/06/Linux_logos_MainLogo.png" /><noscript><img class="tdb-logo-img td-retina-data" data-retina="https://assets.linuxtoday.com/uploads/2021/06/Linux_logos_RetinaLogo.png" src="https://assets.linuxtoday.com/uploads/2021/06/Linux_logos_MainLogo.png" alt="LinuxToday" title="LinuxToday" width="1134" height="375" /></noscript></span></a></div></div> <!-- ./block --><div class="tdm_block td_block_wrap tdm_block_inline_text tdi_39 td-pb-border-top td_block_template_2" data-td-block-uid="tdi_39" > <style>@media (max-width:767px){.tdi_39{justify-content:center!important;text-align:center!important}}</style> <style>.tdi_39{text-align:left!important}.tdi_39 .tdm-descr{color:#515151;font-family:Fira Sans!important;font-size:14px!important;line-height:1.4!important}@media (min-width:768px) and (max-width:1018px){.tdi_39 .tdm-descr{font-size:12px!important}}</style><p class="tdm-descr">LinuxToday is a trusted, contributor-driven news resource supporting all types of Linux users. Our thriving international community engages with us through social media and frequent content contributions aimed at solving problems ranging from personal computing to enterprise-level IT operations. LinuxToday serves as a home for a community that struggles to find comparable information elsewhere on the web.</p></div><div class="tdm_block td_block_wrap tdm_block_socials tdi_40 tdm-inline-block tdm-content-horiz-left td-pb-border-top td_block_template_2" data-td-block-uid="tdi_40" > <style>.tdi_40{margin-top:10px!important;margin-bottom:20px!important}</style> <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>.tdi_41 .tdm-social-item i{font-size:16px;vertical-align:middle;line-height:28.8px}.tdi_41 .tdm-social-item i.td-icon-linkedin,.tdi_41 .tdm-social-item i.td-icon-pinterest,.tdi_41 .tdm-social-item i.td-icon-blogger,.tdi_41 .tdm-social-item i.td-icon-vimeo{font-size:12.8px}.tdi_41 .tdm-social-item{width:28.8px;height:28.8px;margin:5px 10px 5px 0}.tdi_41 .tdm-social-item-wrap:last-child .tdm-social-item{margin-right:0!important}.tdi_41 .tdm-social-item i,.tds-team-member2 .tdi_41.tds-social1 .tdm-social-item i{color:#515151}.tdi_41 .tdm-social-item-wrap:hover i,.tds-team-member2 .tdi_41.tds-social1 .tdm-social-item:hover i{color:#008de8}.tdi_41 .tdm-social-text{display:none;margin-left:2px;margin-right:18px}@media (min-width:768px) and (max-width:1018px){.tdi_41 .tdm-social-item i{font-size:12px;vertical-align:middle;line-height:21.6px}.tdi_41 .tdm-social-item i.td-icon-linkedin,.tdi_41 .tdm-social-item i.td-icon-pinterest,.tdi_41 .tdm-social-item i.td-icon-blogger,.tdi_41 .tdm-social-item i.td-icon-vimeo{font-size:9.6px}.tdi_41 .tdm-social-item{width:21.6px;height:21.6px}}</style><div class="tdm-social-wrapper tds-social1 tdi_41"><div class="tdm-social-item-wrap"><a href="https://www.facebook.com/LinuxToday-635265507098561/" 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/linuxtoday/" 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/linuxtoday?ref_src=twsrc%5Egoogle%7Ctwcamp%5Eserp%7Ctwgr%5Eauthor" 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_43 wpb_column vc_column_container tdc-column td-pb-span7"> <style scoped>.tdi_43{vertical-align:baseline}.tdi_43>.wpb_wrapper,.tdi_43>.wpb_wrapper>.tdc-elements{display:block}.tdi_43>.wpb_wrapper>.tdc-elements{width:100%}.tdi_43>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_43>.wpb_wrapper{width:auto;height:auto}</style><div class="wpb_wrapper" ><div class="wpb_wrapper td_block_empty_space td_block_wrap vc_empty_space tdi_45 " style="height: 20px"></div><div class="vc_row_inner tdi_47 vc_row vc_inner wpb_row td-pb-row" > <style scoped>.tdi_47{position:relative!important;top:0;transform:none;-webkit-transform:none}.tdi_47,.tdi_47 .tdc-inner-columns{display:block}.tdi_47 .tdc-inner-columns{width:100%}</style><div class="vc_column_inner tdi_49 wpb_column vc_column_container tdc-inner-column td-pb-span3"> <style scoped>.tdi_49{vertical-align:baseline}.tdi_49 .vc_column-inner>.wpb_wrapper,.tdi_49 .vc_column-inner>.wpb_wrapper .tdc-elements{display:block}.tdi_49 .vc_column-inner>.wpb_wrapper .tdc-elements{width:100%}</style><div class="vc_column-inner"><div class="wpb_wrapper" ></div></div></div><div class="vc_column_inner tdi_51 wpb_column vc_column_container tdc-inner-column td-pb-span9"> <style scoped>.tdi_51{vertical-align:baseline}.tdi_51 .vc_column-inner>.wpb_wrapper,.tdi_51 .vc_column-inner>.wpb_wrapper .tdc-elements{display:block}.tdi_51 .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_52 tds_menu_active1 tds_menu_sub_active1 td-pb-border-top td_block_template_2 tdb-header-align" data-td-block-uid="tdi_52" style=" z-index: 999;"> <style>.tdi_52{z-index:2!important}</style> <style>.tdi_52{float:right;clear:none}.tdi_52 .td_block_inner{text-align:right}.tdi_52 .tdb-menu>li .tdb-menu-sep,.tdi_52 .tdb-menu-items-dropdown .tdb-menu-sep{top:-1px}.tdi_52 .tdb-menu>li>a .tdb-sub-menu-icon,.tdi_52 .td-subcat-more .tdb-menu-more-subicon{top:-1px;color:#f0a83b}.tdi_52 .td-subcat-more .tdb-menu-more-icon{top:0px}.tdi_52 .tdb-menu>li>a,.tdi_52 .td-subcat-more{color:#515151}.tdi_52 .tdb-menu>li>a .tdb-sub-menu-icon-svg svg,.tdi_52 .tdb-menu>li>a .tdb-sub-menu-icon-svg svg *,.tdi_52 .td-subcat-more .tdb-menu-more-subicon-svg svg,.tdi_52 .td-subcat-more .tdb-menu-more-subicon-svg svg *,.tdi_52 .td-subcat-more .tdb-menu-more-icon-svg,.tdi_52 .td-subcat-more .tdb-menu-more-icon-svg *{fill:#515151}.tdi_52 .tdb-menu>li>a .tdb-sub-menu-icon-svg svg,.tdi_52 .tdb-menu>li>a .tdb-sub-menu-icon-svg svg *,.tdi_52 .td-subcat-more .tdb-menu-more-subicon-svg svg,.tdi_52 .td-subcat-more .tdb-menu-more-subicon-svg svg *{fill:#f0a83b}.tdi_52 .tdb-menu>li>a,.tdi_52 .td-subcat-more,.tdi_52 .td-subcat-more>.tdb-menu-item-text{font-family:Fira Sans!important;font-size:16px!important;font-weight:400!important;text-transform:none!important}.tdi_52 .tdb-normal-menu ul .tdb-menu-item>a .tdb-sub-menu-icon,.tdi_52 .td-pulldown-filter-list .tdb-menu-item>a .tdb-sub-menu-icon{right:0;margin-top:1px}.tdi_52 .tdb-menu .tdb-normal-menu ul,.tdi_52 .td-pulldown-filter-list,.tdi_52 .td-pulldown-filter-list .sub-menu{box-shadow:1px 1px 4px 0px rgba(0,0,0,0.15)}.tdi_52 .tdb-menu .tdb-normal-menu ul .tdb-menu-item>a,.tdi_52 .td-pulldown-filter-list li a{font-family:Fira Sans!important}.tdi_52 .tdb-menu .tdb-mega-menu .sub-menu>li{box-shadow:0px 2px 6px 0px rgba(0,0,0,0.1)}</style> <style>.tdi_52 .tdb-menu>li.current-menu-item>a,.tdi_52 .tdb-menu>li.current-menu-ancestor>a,.tdi_52 .tdb-menu>li.current-category-ancestor>a,.tdi_52 .tdb-menu>li.current-page-ancestor>a,.tdi_52 .tdb-menu>li:hover>a,.tdi_52 .tdb-menu>li.tdb-hover>a,.tdi_52 .tdb-menu-items-dropdown:hover .td-subcat-more{color:#515151}.tdi_52 .tdb-menu>li.current-menu-item>a .tdb-sub-menu-icon-svg svg,.tdi_52 .tdb-menu>li.current-menu-item>a .tdb-sub-menu-icon-svg svg *,.tdi_52 .tdb-menu>li.current-menu-ancestor>a .tdb-sub-menu-icon-svg svg,.tdi_52 .tdb-menu>li.current-menu-ancestor>a .tdb-sub-menu-icon-svg svg *,.tdi_52 .tdb-menu>li.current-category-ancestor>a .tdb-sub-menu-icon-svg svg,.tdi_52 .tdb-menu>li.current-category-ancestor>a .tdb-sub-menu-icon-svg svg *,.tdi_52 .tdb-menu>li.current-page-ancestor>a .tdb-sub-menu-icon-svg svg *,.tdi_52 .tdb-menu>li:hover>a .tdb-sub-menu-icon-svg svg,.tdi_52 .tdb-menu>li:hover>a .tdb-sub-menu-icon-svg svg *,.tdi_52 .tdb-menu>li.tdb-hover>a .tdb-sub-menu-icon-svg svg,.tdi_52 .tdb-menu>li.tdb-hover>a .tdb-sub-menu-icon-svg svg *,.tdi_52 .tdb-menu-items-dropdown:hover .td-subcat-more .tdb-menu-more-icon-svg svg,.tdi_52 .tdb-menu-items-dropdown:hover .td-subcat-more .tdb-menu-more-icon-svg svg *{fill:#515151}.tdi_52 .tdb-menu>li>a:after,.tdi_52 .tdb-menu-items-dropdown .td-subcat-more:after{background-color:#f0a83b;bottom:0px}</style><div id=tdi_52 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-3" class="tdb-block-menu tdb-menu tdb-menu-items-visible"><li class="menu-item menu-item-type-taxonomy menu-item-object-category tdb-cur-menu-item menu-item-first tdb-menu-item-button tdb-menu-item tdb-normal-menu menu-item-171466"><a href="https://www.linuxtoday.com/news/"><div class="tdb-menu-item-text">News</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-171465"><a href="https://www.linuxtoday.com/it-management/"><div class="tdb-menu-item-text">IT Management</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-171464"><a href="https://www.linuxtoday.com/infrastructure/"><div class="tdb-menu-item-text">Infrastructure</div></a></li> <li class="menu-item menu-item-type-taxonomy menu-item-object-category current-user_post-ancestor current-menu-parent current-user_post-parent tdb-menu-item-button tdb-menu-item tdb-normal-menu menu-item-171462"><a href="https://www.linuxtoday.com/developer/"><div class="tdb-menu-item-text">Developer</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-171467"><a href="https://www.linuxtoday.com/security/"><div class="tdb-menu-item-text">Security</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-171463"><a href="https://www.linuxtoday.com/high-performance/"><div class="tdb-menu-item-text">High Performance</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-171468"><a href="https://www.linuxtoday.com/storage/"><div class="tdb-menu-item-text">Storage</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-171461"><a href="https://www.linuxtoday.com/blog/"><div class="tdb-menu-item-text">Blog</div></a></li> </ul></div></div></div></div></div></div></div></div></div></div><div id="tdi_55" class="tdc-row stretch_row_1400 td-stretch-content"><div class="vc_row tdi_56 wpb_row td-pb-row tdc-element-style" > <style scoped>.tdi_56,.tdi_56 .tdc-columns{min-height:0}.tdi_56,.tdi_56 .tdc-columns{display:block}.tdi_56 .tdc-columns{width:100%}.tdi_56:before,.tdi_56:after{display:table}.tdi_56{padding-top:40px!important;position:relative}.tdi_56 .td_block_wrap{text-align:left}</style> <div class="tdi_55_rand_style td-element-style" ><style>.tdi_55_rand_style{background-color:#2d2d2d!important}</style></div><div class="vc_column tdi_58 wpb_column vc_column_container tdc-column td-pb-span12"> <style scoped>.tdi_58{vertical-align:baseline}.tdi_58>.wpb_wrapper,.tdi_58>.wpb_wrapper>.tdc-elements{display:block}.tdi_58>.wpb_wrapper>.tdc-elements{width:100%}.tdi_58>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_58>.wpb_wrapper{width:auto;height:auto}</style><div class="wpb_wrapper" ><div class="tdm_block td_block_wrap tdm_block_column_title tdi_59 tdm-content-horiz-left td-pb-border-top td_block_template_2" data-td-block-uid="tdi_59" > <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_60 .tdm-title{color:#ffffff}.tdi_60 .tdm-title{font-family:liquor-store,sans-serif;!important;font-style:italic!important}</style><div class="tds-title tds-title1 td-fix-index tdi_60 "><h3 class="tdm-title tdm-title-md">Our Brands</h3></div></div></div></div></div></div></div></div><div id="tdi_61" class="tdc-row stretch_row_1400 td-stretch-content"><div class="vc_row tdi_62 wpb_row td-pb-row tdc-element-style" > <style scoped>.tdi_62,.tdi_62 .tdc-columns{min-height:0}.tdi_62,.tdi_62 .tdc-columns{display:block}.tdi_62 .tdc-columns{width:100%}.tdi_62:before,.tdi_62:after{display:table}@media (min-width:768px){.tdi_62{margin-left:-0px;margin-right:-0px}.tdi_62 .tdc-row-video-background-error,.tdi_62>.vc_column,.tdi_62>.tdc-columns>.vc_column{padding-left:0px;padding-right:0px}}.tdi_62{position:relative}.tdi_62 .td_block_wrap{text-align:left}</style> <div class="tdi_61_rand_style td-element-style" ><style>.tdi_61_rand_style{background-color:#2d2d2d!important}</style></div><div class="vc_column tdi_64 wpb_column vc_column_container tdc-column td-pb-span3"> <style scoped>.tdi_64{vertical-align:baseline}.tdi_64>.wpb_wrapper,.tdi_64>.wpb_wrapper>.tdc-elements{display:block}.tdi_64>.wpb_wrapper>.tdc-elements{width:100%}.tdi_64>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_64>.wpb_wrapper{width:auto;height:auto}@media (max-width:767px){.tdi_64>.wpb_wrapper,.tdi_64>.wpb_wrapper>.tdc-elements{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:center;align-items:flex-start}.tdi_64>.wpb_wrapper>.tdc-elements{width:100%}.tdi_64>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_64>.wpb_wrapper{width:100%;height:100%}}</style><div class="wpb_wrapper" ><div class="wpb_wrapper td_block_single_image td_block_wrap td_block_wrap vc_single_image tdi_65 td-single-image- td-pb-border-top td_block_template_2 " data-td-block-uid="tdi_65"><a data-bg="https://assets.linuxtoday.com/uploads/2021/01/TAwhitefooter.png" class="td_single_image_bg rocket-lazyload" style="" href="https://technologyadvice.com/" target="_blank" ></a> <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_65 .td_single_image_bg{height:40px;padding-bottom:0;background-repeat:no-repeat;background-position:center top}body .tdi_65{width:100%}body .tdi_65 .td_single_image_bg{background-size:contain}.tdi_65: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_66 td-single-image- td-pb-border-top td_block_template_2 " data-td-block-uid="tdi_66"><a data-bg="https://assets.linuxtoday.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_66{margin-left:2px!important}}</style> <style>.tdi_66 .td_single_image_bg{height:40px;padding-bottom:0;background-repeat:no-repeat;background-position:center top}body .tdi_66{width:100%}body .tdi_66 .td_single_image_bg{background-size:contain}.tdi_66:hover .td_single_image_bg:before{opacity:0}@media (max-width:767px){.tdi_66 .td_single_image_bg{height:35px;padding-bottom:0}}</style></div></div></div><div class="vc_column tdi_68 wpb_column vc_column_container tdc-column td-pb-span3"> <style scoped>.tdi_68{vertical-align:baseline}.tdi_68>.wpb_wrapper,.tdi_68>.wpb_wrapper>.tdc-elements{display:block}.tdi_68>.wpb_wrapper>.tdc-elements{width:100%}.tdi_68>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_68>.wpb_wrapper{width:auto;height:auto}@media (max-width:767px){.tdi_68>.wpb_wrapper,.tdi_68>.wpb_wrapper>.tdc-elements{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:center;align-items:flex-start}.tdi_68>.wpb_wrapper>.tdc-elements{width:100%}.tdi_68>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_68>.wpb_wrapper{width:100%;height:100%}}</style><div class="wpb_wrapper" ><div class="wpb_wrapper td_block_single_image td_block_wrap td_block_wrap vc_single_image tdi_69 td-single-image- td-pb-border-top td_block_template_2 " data-td-block-uid="tdi_69"><a data-bg="https://assets.linuxtoday.com/uploads/2021/01/datamationwhitefooter.png" class="td_single_image_bg rocket-lazyload" style="" href="https://www.datamation.com/" target="_blank" ></a> <style>.tdi_69 .td_single_image_bg{height:40px;padding-bottom:0;background-repeat:no-repeat;background-position:center top}body .tdi_69{width:100%}body .tdi_69 .td_single_image_bg{background-size:contain}.tdi_69: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_70 td-single-image- td-pb-border-top td_block_template_2 " data-td-block-uid="tdi_70"><a data-bg="https://assets.linuxtoday.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_70{margin-left:6px!important}}</style> <style>.tdi_70 .td_single_image_bg{height:45px;padding-bottom:0;background-repeat:no-repeat;background-position:center top}body .tdi_70{width:100%}body .tdi_70 .td_single_image_bg{background-size:contain}.tdi_70:hover .td_single_image_bg:before{opacity:0}</style></div></div></div><div class="vc_column tdi_72 wpb_column vc_column_container tdc-column td-pb-span3"> <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}@media (max-width:767px){.tdi_72>.wpb_wrapper,.tdi_72>.wpb_wrapper>.tdc-elements{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:center;align-items:flex-start}.tdi_72>.wpb_wrapper>.tdc-elements{width:100%}.tdi_72>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_72>.wpb_wrapper{width:100%;height:100%}}</style><div class="wpb_wrapper" ><div class="wpb_wrapper td_block_single_image td_block_wrap td_block_wrap vc_single_image tdi_73 td-single-image- td-pb-border-top td_block_template_2 " data-td-block-uid="tdi_73"><a data-bg="https://assets.linuxtoday.com/uploads/2024/11/tech-republic-logo.png" class="td_single_image_bg rocket-lazyload" style="" href="https://www.techrepublic.com/" target="_blank" ></a> <style>.tdi_73 .td_single_image_bg{height:35px;padding-bottom:0;background-repeat:no-repeat;background-position:center top}body .tdi_73{width:100%}.tdi_73{display:inline-block;width:100px}body .tdi_73 .td_single_image_bg{background-size:contain}.tdi_73: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_74 td-single-image- td-pb-border-top td_block_template_2 " data-td-block-uid="tdi_74"><a data-bg="https://assets.linuxtoday.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_74{margin-left:1px!important}}</style> <style>.tdi_74 .td_single_image_bg{height:45px;padding-bottom:0;background-repeat:no-repeat;background-position:center top}body .tdi_74{width:100%}body .tdi_74 .td_single_image_bg{background-size:contain}.tdi_74:hover .td_single_image_bg:before{opacity:0}@media (max-width:767px){.tdi_74 .td_single_image_bg{height:40px;padding-bottom:0}}</style></div></div></div><div class="vc_column tdi_76 wpb_column vc_column_container tdc-column td-pb-span3"> <style scoped>.tdi_76{vertical-align:baseline}.tdi_76>.wpb_wrapper,.tdi_76>.wpb_wrapper>.tdc-elements{display:block}.tdi_76>.wpb_wrapper>.tdc-elements{width:100%}.tdi_76>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_76>.wpb_wrapper{width:auto;height:auto}@media (max-width:767px){.tdi_76>.wpb_wrapper,.tdi_76>.wpb_wrapper>.tdc-elements{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:center;align-items:flex-start}.tdi_76>.wpb_wrapper>.tdc-elements{width:100%}.tdi_76>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_76>.wpb_wrapper{width:100%;height:100%}}</style><div class="wpb_wrapper" ><div class="wpb_wrapper td_block_single_image td_block_wrap td_block_wrap vc_single_image tdi_77 td-single-image- td-pb-border-top td_block_template_2 " data-td-block-uid="tdi_77"><a data-bg="https://assets.linuxtoday.com/uploads/2021/01/serverwatchwhitefooter-10.png" class="td_single_image_bg rocket-lazyload" style="" href="https://www.serverwatch.com/" target="_blank" ></a> <style>.tdi_77 .td_single_image_bg{height:50px;padding-bottom:0;background-repeat:no-repeat;background-position:center top}body .tdi_77{width:100%}body .tdi_77 .td_single_image_bg{background-size:contain}.tdi_77:hover .td_single_image_bg:before{opacity:0}@media (max-width:767px){.tdi_77 .td_single_image_bg{height:45px;padding-bottom:0}}</style></div><div class="wpb_wrapper td_block_single_image td_block_wrap td_block_wrap vc_single_image tdi_78 td-single-image- td-pb-border-top td_block_template_2 " data-td-block-uid="tdi_78"><a data-bg="https://assets.linuxtoday.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_78{margin-left:3px!important}}</style> <style>.tdi_78 .td_single_image_bg{height:45px;padding-bottom:0;background-repeat:no-repeat;background-position:center top}body .tdi_78{width:100%}.tdi_78{display:inline-block;width:100px}body .tdi_78 .td_single_image_bg{background-size:contain}.tdi_78:hover .td_single_image_bg:before{opacity:0}@media (max-width:767px){.tdi_78 .td_single_image_bg{height:40px;padding-bottom:0}}</style></div></div></div></div></div><div id="tdi_79" class="tdc-row stretch_row_1400 td-stretch-content"><div class="vc_row tdi_80 wpb_row td-pb-row tdc-element-style" > <style scoped>.tdi_80,.tdi_80 .tdc-columns{min-height:0}.tdi_80,.tdi_80 .tdc-columns{display:block}.tdi_80 .tdc-columns{width:100%}.tdi_80:before,.tdi_80:after{display:table}.tdi_80{position:relative}.tdi_80 .td_block_wrap{text-align:left}</style> <div class="tdi_79_rand_style td-element-style" ><style>.tdi_79_rand_style{background-color:#2d2d2d!important}</style></div><div class="vc_column tdi_82 wpb_column vc_column_container tdc-column td-pb-span12"> <style scoped>.tdi_82{vertical-align:baseline}.tdi_82>.wpb_wrapper,.tdi_82>.wpb_wrapper>.tdc-elements{display:block}.tdi_82>.wpb_wrapper>.tdc-elements{width:100%}.tdi_82>.wpb_wrapper>.vc_row_inner{width:auto}.tdi_82>.wpb_wrapper{width:auto;height:auto}</style><div class="wpb_wrapper" ><div class="td_block_wrap tdb_header_menu tdi_83 tds_menu_active1 tds_menu_sub_active1 td-pb-border-top td_block_template_2 tdb-header-align" data-td-block-uid="tdi_83" style=" z-index: 999;"> <style>.tdi_83{margin-top:20px!important}</style> <style>.tdi_83 .td_block_inner{text-align:center}.tdi_83 .tdb-menu>li .tdb-menu-sep,.tdi_83 .tdb-menu-items-dropdown .tdb-menu-sep{top:-1px}.tdi_83 .tdb-menu>li>a .tdb-sub-menu-icon,.tdi_83 .td-subcat-more .tdb-menu-more-subicon{top:-1px}.tdi_83 .td-subcat-more .tdb-menu-more-icon{top:0px}.tdi_83 .tdb-menu>li>a,.tdi_83 .td-subcat-more{color:#ffffff}.tdi_83 .tdb-menu>li>a .tdb-sub-menu-icon-svg svg,.tdi_83 .tdb-menu>li>a .tdb-sub-menu-icon-svg svg *,.tdi_83 .td-subcat-more .tdb-menu-more-subicon-svg svg,.tdi_83 .td-subcat-more .tdb-menu-more-subicon-svg svg *,.tdi_83 .td-subcat-more .tdb-menu-more-icon-svg,.tdi_83 .td-subcat-more .tdb-menu-more-icon-svg *{fill:#ffffff}.tdi_83 .tdb-menu>li>a,.tdi_83 .td-subcat-more,.tdi_83 .td-subcat-more>.tdb-menu-item-text{font-family:Fira Sans!important;font-size:12px!important;letter-spacing:1px!important}.tdi_83 .tdb-normal-menu ul .tdb-menu-item>a .tdb-sub-menu-icon,.tdi_83 .td-pulldown-filter-list .tdb-menu-item>a .tdb-sub-menu-icon{right:0;margin-top:1px}.tdi_83 .tdb-menu .tdb-normal-menu ul,.tdi_83 .td-pulldown-filter-list,.tdi_83 .td-pulldown-filter-list .sub-menu{box-shadow:1px 1px 4px 0px rgba(0,0,0,0.15)}.tdi_83 .tdb-menu .tdb-mega-menu .sub-menu>li{box-shadow:0px 2px 6px 0px rgba(0,0,0,0.1)}</style> <style>.tdi_83 .tdb-menu>li>a:after,.tdi_83 .tdb-menu-items-dropdown .td-subcat-more:after{background-color:#008de8;bottom:0px}</style><div id=tdi_83 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-1" 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.linuxtoday.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/digital-advertising-solutions/"><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 class="tdm_block td_block_wrap tdm_block_column_content tdi_86 tdm-content-horiz-center td-pb-border-top td_block_template_2" data-td-block-uid="tdi_86" > <style>.tdi_86{margin-top:30px!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_86 .tdm-descr{color:#ffffff;font-family:dita-wd,sans-serif;!important;font-size:9px!important;text-transform:uppercase!important}@media (max-width:767px){.tdm_block_column_content .tdm-image-holder{margin-bottom:14px}}</style><div class="tdm-col-content-info"><a href="#" class="tdm-col-content-title-url"></a><p class="tdm-descr td-fix-index">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_88 choice-footer-msg"> <style scoped>.tdi_88{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_90 " style="height: 120px"></div></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-T4P43PZ" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <!-- End Google Tag Manager (noscript) --> <!-- Theme: Newspaper by tagDiv.com 2024 Version: 12.6.8 (rara) Deploy mode: deploy uid: 674ccb817d1be --> <!-- 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.linuxtoday.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.linuxtoday.com/wp-content/plugins/ta-campaign-plugin/assets/css/dist/styles.css?ver=2.1.14' type='text/css' media='all'></noscript><script type="text/javascript" id="icp_js-js-extra"> /* <![CDATA[ */ var intentclicks_ajax = {"url":"https:\/\/www.linuxtoday.com\/wp\/wp-admin\/admin-ajax.php"}; /* ]]> */ </script> <script data-src="https://www.linuxtoday.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.linuxtoday.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.linuxtoday.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.linuxtoday.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.linuxtoday.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.linuxtoday.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.linuxtoday.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.linuxtoday.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-native-ads" id="wp-ads-1997439019"><!-- Linux Today Native --> <!-- Start: GAM Ad Slot Render | Linux Today Native Ads --> <style> #native-main-well { border-bottom: 1px solid rgba(0,0,0,0.19); padding: 20px 0; margin-bottom: -15px; } #native-boap { position: relative; } #native-rr-article > div { width: 100%; height: 100% !important; } #native-rr-article { border-bottom: 1px solid rgba(0,0,0,0.19); margin-bottom: -20px; } #native-rr-article iframe { height: 100%; } #native-boap iframe { width: 100%; height: 36rem; } #native-rr-article { position: relative; } @media screen and (min-width: 500px) { #native-boap iframe { height: 25rem; } } @media screen and (min-width: 1100px) { #native-boap iframe { height: 24.5rem; } } </style> <div id="native-boap" style="display:none; margin-bottom: 50px;"> <script> window.googletag = window.googletag || { cmd: [] }; window.googletag.cmd.push(function() { googletag.display("native-boap"); }); </script> </div> <script> (function() { var boapSpot = document.querySelector('article.post'); var boapAfterContent = document.querySelector("article.post .tdb_single_post_share"); var boapContent = document.getElementById('native-boap'); boapAfterContent.parentNode.insertBefore(boapContent, boapAfterContent.nextSibling); boapContent.style.height = 'auto'; boapContent.style.width = '100%'; })(); </script> <!-- End: GAM Ad Slot Render | Linux Today Native Ads --></div><div class="wp-ads-sticky-bottom" id="wp-ads-631673700"><div id="bottom-footer-fixed-slot"> <script data-src="data:text/javascript;base64,DQogICAgZnVuY3Rpb24gY2xvc2VTdGlja3lGb290ZXIoKSB7DQogICAgICB2YXIgc3RpY2t5Qm90dG9tQ2xvc2UgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCd0YS1jbG9zZS1idXR0b24nKTsNCiAgICAgIHN0aWNreUJvdHRvbUNsb3NlWzBdLnBhcmVudE5vZGUucmVtb3ZlKCk7DQogICAgfQ0KICA=" data-type="lazy"></script> <span class="ta-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 | LinuxToday 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> window.googletag = window.googletag || { cmd: [] }; window.googletag.cmd.push(function() { googletag.display("sticky-bottom"); }); </script> </div> <!-- End: GAM Ad Slot Render | LinuxToday Sticky Bottom --></div><script data-src="data:text/javascript;base64,d2luZG93LmFkdmFkc19hZG1pbl9iYXJfaXRlbXMgPSBbeyJ0aXRsZSI6IkxpbnV4VG9kYXkgfCBEYXRhbGF5ZXIgJmFtcDsgR0FNIENvcmUiLCJ0eXBlIjoiYWQifSx7InRpdGxlIjoiQmVmb3JlIENsb3NpbmcgSGVhZCBUYWciLCJ0eXBlIjoicGxhY2VtZW50In0seyJ0aXRsZSI6IkxpbnV4VG9kYXkgfCBNYXN0ZXIgQWQgU2xvdCBEZWZpbml0aW9ucyIsInR5cGUiOiJhZCJ9LHsidGl0bGUiOiJNYXN0ZXIgQWQgU2xvdCBEZWZpbml0aW9ucyBQbGFjZW1lbnRzIiwidHlwZSI6InBsYWNlbWVudCJ9LHsidGl0bGUiOiJMaW51eFRvZGF5IHwgSW5saW5lIFRvcCBSZW5kZXIiLCJ0eXBlIjoiYWQifSx7InRpdGxlIjoiSW5saW5lIFRvcCIsInR5cGUiOiJwbGFjZW1lbnQifSx7InRpdGxlIjoiTGludXhUb2RheSB8IFN0aWNreSBSYWlsIFJlbmRlciIsInR5cGUiOiJhZCJ9LHsidGl0bGUiOiJTdGlja3kgUmFpbCIsInR5cGUiOiJwbGFjZW1lbnQifSx7InRpdGxlIjoiTGludXhUb2RheSB8IE5hdGl2ZSBBZHMgLSBSZW5kZXIiLCJ0eXBlIjoiYWQifSx7InRpdGxlIjoiTmF0aXZlIEFkcyIsInR5cGUiOiJwbGFjZW1lbnQifSx7InRpdGxlIjoiTGludXhUb2RheSB8IFN0aWNreSBCb3R0b20gUmVuZGVyIiwidHlwZSI6ImFkIn0seyJ0aXRsZSI6IlN0aWNreSBCb3R0b20iLCJ0eXBlIjoicGxhY2VtZW50In1dOw==" 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/wvr5ept.css"> <script data-src="https://www.linuxtoday.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 data-src="https://www.linuxtoday.com/wp-content/plugins/td-composer/legacy/Newspaper/js/tdAjaxSearch.js?ver=12.6.8" data-type="lazy" type="text/javascript" id="tdDatei18n-js"></script> <script type="text/javascript" src="https://www.linuxtoday.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.linuxtoday.com/wp-content/plugins/td-cloud-library/assets/js/tdbMenu.js?ver=b33652f2535d2f3812f59e306e26300d" id="tdbMenu-js"></script> <script type="text/javascript" src="https://www.linuxtoday.com/wp-content/plugins/td-cloud-library/assets/js/tdbSearch.js?ver=b33652f2535d2f3812f59e306e26300d" id="tdbSearch-js"></script> <!-- JS generated by theme --> <script type="text/javascript" id="td-generated-footer-js"> /* global jQuery:{} */ jQuery(document).ready( function () { var tdbMenuItem = new tdbMenu.item(); tdbMenuItem.blockUid = 'tdi_28'; tdbMenuItem.jqueryObj = jQuery('.tdi_28'); 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":"31673","tds_menu_active1-line_height":"5","f_elem_font_family":"672","f_elem_font_weight":"400","f_elem_font_transform":"none","inline":"yes","elem_padd":"0","elem_space":"eyJhbGwiOiIzMCIsImxhbmRzY2FwZSI6IjIwIiwicG9ydHJhaXQiOiIyMCJ9","tds_menu_active1-line_alignment":"53","tds_menu_active1-line_color":"eyJ0eXBlIjoiZ3JhZGllbnQiLCJjb2xvcjEiOiIjMDA4ZGU4IiwiY29sb3IyIjoiIzAwOGRlOCIsIm1peGVkQ29sb3JzIjpbXSwiZGVncmVlIjoiLTkwIiwiY3NzIjoiYmFja2dyb3VuZC1jb2xvcjogIzAwOGRlODsiLCJjc3NQYXJhbXMiOiIwZGVnLCMwMDhkZTgsIzAwOGRlOCJ9","f_elem_font_size":"eyJhbGwiOiIxNiIsInBvcnRyYWl0IjoiMTIifQ==","sub_first_left":"-26","f_sub_elem_font_family":"507","f_sub_elem_font_weight":"600","f_sub_elem_font_size":"11","tds_menu_sub_active1-sub_text_color_h":"#dd3333","f_sub_elem_font_line_height":"1","sub_icon_space":"12","tds_menu_active1-text_color_h":"#757575","text_color":"#515151","tdc_css":"eyJhbGwiOnsibWFyZ2luLXRvcCI6IjEwIiwiZGlzcGxheSI6IiJ9fQ==","block_type":"tdb_header_menu","show_subcat":"","show_mega":"","show_mega_cats":"","mob_load":"","separator":"","width":"","more":"","float_right":"","align_horiz":"content-horiz-left","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_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_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_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_style":"","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":"","all_underline_height":"","all_underline_color":"#000","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":1,"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_28","tdc_css_class":"tdi_28","tdc_css_class_style":"tdi_28_rand_style","context":""}'; tdbMenuItem.isMegaMenuParentPos = true; tdbMenuItem.megaMenuLoadType = ''; tdbMenu.addItem(tdbMenuItem); }); jQuery().ready(function () { var tdbSearchItem = new tdbSearch.item(); //block unique ID tdbSearchItem.blockUid = 'tdi_31'; tdbSearchItem.blockAtts = '{"inline":"yes","toggle_txt_pos":"after","form_align":"content-horiz-right","results_msg_align":"content-horiz-center","image_floated":"float_left","image_width":"30","image_size":"td_324x400","show_cat":"none","show_btn":"none","show_date":"none","show_review":"none","show_com":"none","show_excerpt":"none","show_author":"none","meta_padding":"2px 0 0 15px","art_title":"0 0 5px","all_modules_space":"20","float_block":"yes","icon_color":"#008de8","icon_color_h":"#515151","tdc_css":"eyJhbGwiOnsibWFyZ2luLXRvcCI6IjEyIiwiZGlzcGxheSI6IiJ9fQ==","show_form":"yes","f_title_font_family":"672","f_meta_font_family":"672","f_ex_font_family":"672","f_btn_font_family":"672","f_title_font_size":"16","hide_image":"yes","f_input_font_family":"672","f_placeholder_font_family":"672","f_results_msg_font_family":"672","f_results_msg_font_size":"14","title_txt_hover":"#f0a83b","all_underline_height":"1","all_underline_color":"#f0a83b","title_txt":"#2d2d2d","results_msg_border_color":"#008de8","results_border_color":"#f2f2f2","arrow_color":"#f0a83b","form_border_color":"#f0a83b","btn_bg":"eyJ0eXBlIjoiZ3JhZGllbnQiLCJjb2xvcjEiOiIjMDA4ZGU4IiwiY29sb3IyIjoiIzAwOGRlOCIsIm1peGVkQ29sb3JzIjpbXSwiZGVncmVlIjoiLTkwIiwiY3NzIjoiYmFja2dyb3VuZC1jb2xvcjogIzAwOGRlODsiLCJjc3NQYXJhbXMiOiIwZGVnLCMwMDhkZTgsIzAwOGRlOCJ9","btn_bg_h":"eyJ0eXBlIjoiZ3JhZGllbnQiLCJjb2xvcjEiOiIjZjBhODNiIiwiY29sb3IyIjoiI2YwYTgzYiIsIm1peGVkQ29sb3JzIjpbXSwiZGVncmVlIjoiLTkwIiwiY3NzIjoiYmFja2dyb3VuZC1jb2xvcjogI2YwYTgzYjsiLCJjc3NQYXJhbXMiOiIwZGVnLCNmMGE4M2IsI2YwYTgzYiJ9","modules_divider":"solid","disable_live_search":"yes","block_type":"tdb_header_search","post_type":"","disable_trigger":"","show_results":"yes","separator":"","exclude_pages":"","exclude_posts":"","search_section_header":"","results_section_1_title":"","results_section_1_taxonomies":"","results_section_1_level":"","results_section_2_title":"","results_section_2_taxonomies":"","results_section_2_level":"","results_section_3_title":"","results_section_3_taxonomies":"","results_section_3_level":"","results_section_search_query_terms":"","results_section_search_query_terms_title":"","results_section_search_query_terms_taxonomies":"","sec_title_space":"","sec_title_color":"","tax_space":"","tax_title_color":"","tax_title_color_h":"","f_sec_title_font_header":"","f_sec_title_font_title":"Section title text","f_sec_title_font_settings":"","f_sec_title_font_family":"","f_sec_title_font_size":"","f_sec_title_font_line_height":"","f_sec_title_font_style":"","f_sec_title_font_weight":"","f_sec_title_font_transform":"","f_sec_title_font_spacing":"","f_sec_title_":"","f_tax_title_font_title":"Taxonomy title text","f_tax_title_font_settings":"","f_tax_title_font_family":"","f_tax_title_font_size":"","f_tax_title_font_line_height":"","f_tax_title_font_style":"","f_tax_title_font_weight":"","f_tax_title_font_transform":"","f_tax_title_font_spacing":"","f_tax_title_":"","tdicon":"","icon_size":"20","icon_padding":"2.4","toggle_txt":"","toggle_txt_align":"0","toggle_txt_space":"","aria_label":"Search","toggle_horiz_align":"content-horiz-left","form_offset":"","form_offset_left":"","form_width":"","form_content_width":"","form_padding":"","form_border":"","form_align_screen":"","input_placeholder":"","placeholder_travel":"0","input_padding":"","input_border":"","input_radius":"","btn_text":"Search","btn_aria_label":"Search","btn_tdicon":"","btn_icon_pos":"","btn_icon_size":"","btn_icon_space":"","btn_icon_align":"0","btn_margin":"","btn_padding":"","btn_border":"","btn_radius":"","results_padding":"","results_border":"","results_msg_padding":"","results_msg_border":"","mc1_tl":"","mc1_title_tag":"","mc1_el":"","results_limit":"","open_in_new_window":"","modules_on_row":"100%","modules_gap":"","m_padding":"","modules_border_size":"","modules_border_style":"","modules_border_color":"#eaeaea","modules_divider_color":"#eaeaea","h_effect":"","image_alignment":"50","image_height":"","image_radius":"","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_":"","meta_info_align":"","meta_info_horiz":"content-horiz-left","meta_width":"","meta_margin":"","meta_info_border_size":"","meta_info_border_style":"","meta_info_border_color":"#eaeaea","art_btn":"","modules_category":"","modules_category_margin":"","modules_category_padding":"","modules_cat_border":"","modules_category_radius":"0","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":"","review_space":"","review_size":"2.5","review_distance":"","art_excerpt":"","excerpt_col":"1","excerpt_gap":"","excerpt_middle":"","btn_title":"","btn_border_width":"","form_general_bg":"","toggle_txt_color":"","toggle_txt_color_h":"","f_toggle_txt_font_header":"","f_toggle_txt_font_title":"Text","f_toggle_txt_font_settings":"","f_toggle_txt_font_family":"","f_toggle_txt_font_size":"","f_toggle_txt_font_line_height":"","f_toggle_txt_font_style":"","f_toggle_txt_font_weight":"","f_toggle_txt_font_transform":"","f_toggle_txt_font_spacing":"","f_toggle_txt_":"","form_bg":"","form_shadow_shadow_header":"","form_shadow_shadow_title":"Shadow","form_shadow_shadow_size":"","form_shadow_shadow_offset_horizontal":"","form_shadow_shadow_offset_vertical":"","form_shadow_shadow_spread":"","form_shadow_shadow_color":"","input_color":"","placeholder_color":"","placeholder_opacity":"0","input_bg":"","input_border_color":"","input_shadow_shadow_header":"","input_shadow_shadow_title":"Input shadow","input_shadow_shadow_size":"","input_shadow_shadow_offset_horizontal":"","input_shadow_shadow_offset_vertical":"","input_shadow_shadow_spread":"","input_shadow_shadow_color":"","btn_color":"","btn_color_h":"","btn_icon_color":"","btn_icon_color_h":"","btn_border_color":"","btn_border_color_h":"","btn_shadow_shadow_header":"","btn_shadow_shadow_title":"Button shadow","btn_shadow_shadow_size":"","btn_shadow_shadow_offset_horizontal":"","btn_shadow_shadow_offset_vertical":"","btn_shadow_shadow_spread":"","btn_shadow_shadow_color":"","f_input_font_header":"","f_input_font_title":"Input text","f_input_font_settings":"","f_input_font_size":"","f_input_font_line_height":"","f_input_font_style":"","f_input_font_weight":"","f_input_font_transform":"","f_input_font_spacing":"","f_input_":"","f_placeholder_font_title":"Placeholder text","f_placeholder_font_settings":"","f_placeholder_font_size":"","f_placeholder_font_line_height":"","f_placeholder_font_style":"","f_placeholder_font_weight":"","f_placeholder_font_transform":"","f_placeholder_font_spacing":"","f_placeholder_":"","f_btn_font_title":"Button text","f_btn_font_settings":"","f_btn_font_size":"","f_btn_font_line_height":"","f_btn_font_style":"","f_btn_font_weight":"","f_btn_font_transform":"","f_btn_font_spacing":"","f_btn_":"","results_bg":"","results_msg_color":"","results_msg_color_h":"","results_msg_bg":"","f_results_msg_font_header":"","f_results_msg_font_title":"Text","f_results_msg_font_settings":"","f_results_msg_font_line_height":"","f_results_msg_font_style":"","f_results_msg_font_weight":"","f_results_msg_font_transform":"","f_results_msg_font_spacing":"","f_results_msg_":"","m_bg":"","color_overlay":"","shadow_module_shadow_header":"","shadow_module_shadow_title":"Module Shadow","shadow_module_shadow_size":"","shadow_module_shadow_offset_horizontal":"","shadow_module_shadow_offset_vertical":"","shadow_module_shadow_spread":"","shadow_module_shadow_color":"","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_meta_shadow_header":"","shadow_meta_shadow_title":"Meta info shadow","shadow_meta_shadow_size":"","shadow_meta_shadow_offset_horizontal":"","shadow_meta_shadow_offset_vertical":"","shadow_meta_shadow_spread":"","shadow_meta_shadow_color":"","btn_bg_hover":"","btn_txt":"","btn_txt_hover":"","btn_border_hover":"","f_title_font_header":"","f_title_font_title":"Article title","f_title_font_settings":"","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_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_size":"","f_ex_font_line_height":"","f_ex_font_style":"","f_ex_font_weight":"","f_ex_font_transform":"","f_ex_font_spacing":"","f_ex_":"","el_class":"","block_template_id":"","td_column_number":1,"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_31","tdc_css_class":"tdi_31","tdc_css_class_style":"tdi_31_rand_style"}'; tdbSearchItem.jqueryObj = jQuery('.tdi_31'); tdbSearchItem._openSearchFormClass = 'tdb-drop-down-search-open'; tdbSearchItem._resultsLimit = '4'; tdbSearchItem._is_live_search_active = false; tdbSearch.addItem( tdbSearchItem ); }); /* global jQuery:{} */ jQuery(document).ready( function () { var tdbMenuItem = new tdbMenu.item(); tdbMenuItem.blockUid = 'tdi_52'; tdbMenuItem.jqueryObj = jQuery('.tdi_52'); 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","text_color":"#515151","tds_menu_active1-text_color_h":"#515151","menu_id":"31673","f_elem_font_family":"672","f_sub_elem_font_family":"672","f_elem_font_size":"16","f_elem_font_transform":"none","main_sub_color":"#f0a83b","tds_menu_active1-line_color":"eyJ0eXBlIjoiZ3JhZGllbnQiLCJjb2xvcjEiOiIjZjBhODNiIiwiY29sb3IyIjoiI2YwYTgzYiIsIm1peGVkQ29sb3JzIjpbXSwiZGVncmVlIjoiLTkwIiwiY3NzIjoiYmFja2dyb3VuZC1jb2xvcjogI2YwYTgzYjsiLCJjc3NQYXJhbXMiOiIwZGVnLCNmMGE4M2IsI2YwYTgzYiJ9","tdc_css":"eyJhbGwiOnsiei1pbmRleCI6IjIiLCJkaXNwbGF5IjoiIn19","f_elem_font_weight":"400","float_right":"yes","align_horiz":"content-horiz-right","block_type":"tdb_header_menu","show_subcat":"","show_mega":"","show_mega_cats":"","mob_load":"","separator":"","width":"","inline":"","more":"","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":"","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_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_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":"","all_underline_height":"","all_underline_color":"#000","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":1,"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_52","tdc_css_class":"tdi_52","tdc_css_class_style":"tdi_52_rand_style","context":""}'; tdbMenuItem.isMegaMenuParentPos = true; tdbMenuItem.megaMenuLoadType = ''; tdbMenu.addItem(tdbMenuItem); }); /* global jQuery:{} */ jQuery(document).ready( function () { var tdbMenuItem = new tdbMenu.item(); tdbMenuItem.blockUid = 'tdi_83'; tdbMenuItem.jqueryObj = jQuery('.tdi_83'); 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":"eyJwaG9uZSI6IjEyIiwiYWxsIjoiMTIifQ==","tdc_css":"eyJhbGwiOnsibWFyZ2luLXRvcCI6IjIwIiwiZGlzcGxheSI6IiJ9fQ==","f_elem_font_family":"672","f_elem_font_spacing":"1","tds_menu_active1-line_color":"eyJ0eXBlIjoiZ3JhZGllbnQiLCJjb2xvcjEiOiIjMDA4ZGU4IiwiY29sb3IyIjoiIzAwOGRlOCIsIm1peGVkQ29sb3JzIjpbXSwiZGVncmVlIjoiLTkwIiwiY3NzIjoiYmFja2dyb3VuZC1jb2xvcjogIzAwOGRlODsiLCJjc3NQYXJhbXMiOiIwZGVnLCMwMDhkZTgsIzAwOGRlOCJ9","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_weight":"","f_elem_font_transform":"","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":"","all_underline_height":"","all_underline_color":"#000","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_83","tdc_css_class":"tdi_83","tdc_css_class_style":"tdi_83_rand_style","context":""}'; tdbMenuItem.isMegaMenuParentPos = true; tdbMenuItem.megaMenuLoadType = ''; tdbMenu.addItem(tdbMenuItem); }); </script> <script data-src="data:text/javascript;base64,dmFyIHRkX3Jlc19jb250ZXh0X3JlZ2lzdGVyZWRfYXR0cz1bInN0eWxlX2dlbmVyYWxfbW9iaWxlX21lbnUiLCJzdHlsZV9nZW5lcmFsX2hlYWRlcl9hbGlnbiIsInN0eWxlX2dlbmVyYWxfaGVhZGVyX2xvZ28iLCJzdHlsZV9nZW5lcmFsX21vYmlsZV9zZWFyY2giLCJzdHlsZV9nZW5lcmFsX2lubGluZV90ZXh0Iiwic3R5bGVfZ2VuZXJhbF9pc19zdGlja3kiLCJzdHlsZV9nZW5lcmFsX2hlYWRlcl9tZW51Iiwic3R5bGVfZ2VuZXJhbF9tb2R1bGVfaGVhZGVyIiwic3R5bGVfZ2VuZXJhbF9oZWFkZXJfc2VhcmNoIiwic3R5bGVfZ2VuZXJhbF9oZWFkZXJfc2VhcmNoX3RyaWdnZXJfZW5hYmxlZCIsInN0eWxlX2dlbmVyYWxfc29jaWFscyIsInN0eWxlX2dlbmVyYWxfY29sdW1uX3RpdGxlIiwic3R5bGVfZ2VuZXJhbF9zaW5nbGVfaW1hZ2UiLCJzdHlsZV9nZW5lcmFsX2NvbHVtbl9jb250ZW50Il07" 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.linuxtoday.com/wp-content/plugins/rocket-lazy-load/assets/js/16.1/lazyload.min.js"></script> </body> </html>