CINXE.COM
Why Bloat Is Still Software’s Biggest Vulnerability - IEEE Spectrum
<!DOCTYPE html><!-- Powered by RebelMouse. https://www.rebelmouse.com --><html lang="en"><head prefix="og: https://ogp.me/ns# article: https://ogp.me/ns/article#"><script type="application/ld+json">{"@context":"http://schema.org","@type":"NewsArticle","author":{"@type":"Person","description":"Bert Hubert is the founder of PowerDNS, software that powers a significant fraction of the Internet. In addition, Bert co-founded a joint-venture with notable security company Fox-IT. In between he spent several years working for the Dutch government on cyber- and national security. After selling both companies, Bert spent 18 months doing DNA research at TU Delft, leading to two publications in major science journals. These days, he focuses on open standards, (EU) tech legislation, decentralized communications, internet measurements & research (mostly DNA and GNSS). In addition he until recently sat on a government board that regulates the Dutch Intelligence and Security agencies. Bert is now a part-time technical advisor at the Dutch Electoral Council (\"FEC\").","identifier":"https://spectrum.ieee.org/u/bert-hubert","image":{"@type":"ImageObject","url":"https://spectrum.ieee.org/res/avatars/default"},"name":"Bert Hubert","url":"https://spectrum.ieee.org/u/bert-hubert"},"dateModified":"2024-03-25T17:23:47Z","datePublished":"2024-02-08T15:44:20Z","description":"\u003Cp>A 2024 plea for lean software \u003C/p>","headline":"Why Bloat Is Still Software’s Biggest Vulnerability","image":"https://assets.rbl.ms/51411262/origin.jpg","mainEntityOfPage":{"@id":"https://spectrum.ieee.org/lean-software-development","@type":"WebPage"},"publisher":{"@type":"Organization","logo":{"@type":"ImageObject","height":210,"url":"https://assets.rbl.ms/26794698/origin.png","width":2000},"name":"IEEE Spectrum"},"url":"https://spectrum.ieee.org/lean-software-development"}</script><meta charset="utf-8"/><script> window.dataLayer = window.dataLayer ||[]; function gtag(){dataLayer.push(arguments);} gtag('consent','default',{ 'ad_storage':'denied', 'analytics_storage':'denied', 'ad_user_data':'denied', 'ad_personalization':'denied', 'personalization_storage':'denied', 'functionality_storage':'granted', 'security_storage':'granted', 'wait_for_update': 500 }); gtag("set", "ads_data_redaction", true); </script><!-- v ieee cookie banner v --><script src="https://cmp.osano.com/AzyzptTmRlqVd2LRf/04dfdd03-699a-4224-a9f1-d3ca23cdf4e9/osano.js"></script><!--<link rel="stylesheet" href="https://cookie-consent.ieee.org/ieee-cookie-banner.css" type="text/css" />--><!-- ^ ieee cookie banner ^ --><link rel="preload" as="font" href="https://partners.rebelmouse.com/IEEE/FavoritMono/ABCFavoritMono-Light.woff2" type="font/woff2" crossorigin=""/><link rel="preload" as="font" href="https://partners.rebelmouse.com/IEEE/FavoritMono/ABCFavoritMono-Regular.woff2" type="font/woff2" crossorigin=""/><link rel="preload" as="font" href="https://partners.rebelmouse.com/IEEE/ABCFavoritProFullWeb/ABCFavoritPro-Light.woff2" type="font/woff2" crossorigin=""/><link rel="preload" as="font" href="https://partners.rebelmouse.com/IEEE/ABCFavoritProFullWeb/ABCFavoritPro-Bold.woff2" type="font/woff2" crossorigin=""/><link rel="preload" as="font" href="https://partners.rebelmouse.com/IEEE/IvarCompleteWeb/IvarHeadline-Regular.woff2" type="font/woff2" crossorigin=""/><link rel="preload" as="font" href="https://partners.rebelmouse.com/IEEE/ABCFavoritProFullWeb/ABCFavoritPro-Regular.woff2" type="font/woff2" crossorigin=""/><link rel="preload" as="font" href="https://partners.rebelmouse.com/IEEE/IvarCompleteWeb/IvarHeadline-Bold.woff2" type="font/woff2" crossorigin=""/><script type="text/javascript"> navigator.userAgent.includes("Chrome")&&function(e,t,n,r,i){var o,a,c=["click","contextmenu","dblclick","gotpointercapture","keydown","keypress","keyup","lostpointercapture","mousedown","mouseup","mousemove","pointercancel","pointerdown","pointerenter","pointerleave","pointermove","pointerover","pointerup","touchcancel","touchend","touchmove","touchstart"],s=["scroll","wheel"],u=new r,p=new r,l=new r,d=25,f=25,v="_rmStopped",m="_rmImmediatelyStopped",h=e.setTimeout,y=e.clearTimeout,g=n.prototype,E=null;function L(e){return function(e){return new Promise((function(t){h(t,e||0)}))}(e)}function w(e){return i&&"scheduling"in i&&"isInputPending"in i.scheduling&&i.scheduling.isInputPending({includeContinuous:!0})?L(e).then((function(){return w(e)})):L(e)}function I(e,t,r,i,o){if(!(r[m]||i===n.BUBBLING_PHASE&&r[v]&&element!==r.target)){var a,c={get:(a={currentTarget:o},function(e,t,n){if(t in a)return a[t];var r=Reflect.get(e,t);return r instanceof Function?function(){return Reflect.apply(r,e,arguments)}:r})},s=new Proxy(r,c);try{e&&"handleEvent"in e?e.handleEvent.call(e,s):e.call(t,s)}catch(e){console.error(e)}}}function P(e){return function(t){var n=this,r=t.eventPhase,i=t.currentTarget,o={canceled:!1};"dataset"in n&&n.dataset.inpZillaSkip?I(e,n,t,r,i):(l.has(e)&&(l.get(e).canceled=!0),l.set(e,o),w(f).then((function(){o.canceled||(I(e,n,t,r,i),l.delete(e))})))}}function _(e){return function(t){var r=this,i=t.eventPhase,o=t.currentTarget,a=t.timeStamp;new n("rm").timeStamp-a<d||"dataset"in r&&r.dataset.inpZillaSkip?I(e,r,t,i,o):(E&&(E.style.display="none",E.style.opacity="0",E.style.display="block",E.style.opacity="1"),w().then((function(){I(e,r,t,i,o)})))}}function k(e,t,n,r,i){if(!n.has(r)){var o=i(r);n.set(r,o)}var a=Array.from(t);a[1]=n.get(r),e._rmInpAddEventListener.apply(e,a)}function A(t,n){var r=this||e;if(n){if(s.includes(t))return void k(r,arguments,p,n,P);if(c.includes(t))return void k(r,arguments,u,n,_)}r._rmInpAddEventListener.apply(r,arguments)}function x(t,n){var r=this||e,i=n;n&&(c.includes(t)&&u.has(n)?i=u.get(n):s.includes(t)&&p.has(n)&&(i=p.get(n)));var o=Array.from(arguments);o[1]=i,r._rmInpRemoveEventListener.apply(r,o)}function T(e){e._rmInpAddEventListener=e.addEventListener,e._rmInpRemoveEventListener=e.removeEventListener,e.addEventListener=A,e.removeEventListener=x}function S(e){c.forEach((function(t){var n="on"+t;Object.defineProperty(e,n,{set:function(e){var n=this,r="__rmInpOn"+t;n[r]&&n.removeEventListener(t,n[r],{passive:!0}),n[r]=e,n.addEventListener(t,e,{passive:!0})}})}))}function b(e,t){return function(){this[e]=!0,t.apply(this,arguments)}}function C(e,t,n){return w().then((function(){e.apply(t,n)})).catch(console.error)}t.addEventListener("DOMContentLoaded",(function(){var e;(e=t.createElement("div")).style.height="100px",e.style.width="100px",e.style.backgroundColor="#ffffff03",e.style.position="fixed",e.style.top="1px",e.style.left="1px",e.style.transform="translateX(-100px)",t.body.appendChild(e),E=e})),T(e),T(t),T(Element.prototype),S(e),S(t),S(HTMLElement.prototype),o=g.stopPropagation,a=g.stopImmediatePropagation,g.stopPropagation=b(v,o),g.stopImmediatePropagation=b(m,a),function(){var t=new r;function n(e){t.has(e)?y(t.get(e)):y(e)}e.setTimeout=function(e,t){var n=this,r=Array.from(arguments).splice(2);return h((function(){C(e,n,r)}),t)},e.setInterval=function(e,n){var r=this,i=Array.from(arguments).splice(2);function o(){var e=h(a,n);t.set(c,e)}function a(){C(e,r,i).then(o)}var c=h(a,n);t.set(c,c)},e.clearInterval=n,e.clearTimeout=n}()}(window,document,Event,Map,navigator); </script><meta name="robots" content="max-image-preview:large"/><link fetchpriority="high" rel="preload" imagesrcset="https://spectrum.ieee.org/media-library/a-photo-illustration-of-outstretched-hands-with-blobby-running-oodles-of-green-software-code.jpg?id=51411262&width=3600&height=2160 3x, https://spectrum.ieee.org/media-library/a-photo-illustration-of-outstretched-hands-with-blobby-running-oodles-of-green-software-code.jpg?id=51411262&width=2400&height=1440 2x, https://spectrum.ieee.org/media-library/a-photo-illustration-of-outstretched-hands-with-blobby-running-oodles-of-green-software-code.jpg?id=51411262&width=1200&height=720 1x" as="image"/><link rel="canonical" href="https://spectrum.ieee.org/lean-software-development"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:site" content="@"/><meta name="twitter:site:id" content=""/><meta name="twitter:image" content="https://spectrum.ieee.org/media-library/a-photo-illustration-of-outstretched-hands-with-blobby-running-oodles-of-green-software-code.jpg?id=51411262&width=1200&height=600&coordinates=0%2C100%2C0%2C100"/><meta property="fb:app_id" content="200167090048537"/><meta property="og:type" content="article"/><meta property="article:section" content="Computing"/><meta property="og:url" content="https://spectrum.ieee.org/lean-software-development"/><meta property="og:site_name" content="IEEE Spectrum"/><meta property="og:image" content="https://spectrum.ieee.org/media-library/a-photo-illustration-of-outstretched-hands-with-blobby-running-oodles-of-green-software-code.jpg?id=51411262&width=1200&height=600&coordinates=0%2C100%2C0%2C100"/><meta property="og:image:width" content="1200"/><meta property="og:image:height" content="600"/><meta property="og:title" content="Why Bloat Is Still Software’s Biggest Vulnerability"/><meta property="og:description" content="A 2024 plea for lean software"/><meta name="description" content="A 2024 plea for lean software"/><meta name="keywords" content="coding, software bloat, cybersecurity, cloud computing"/><meta name="referrer" content="always"/><link rel="preconnect" href="https://assets.rebelmouse.io/" crossorigin="anonymous"/><link rel="preconnect" href="https://user-stats.rbl.ms/" crossorigin="anonymous"/><link rel="preconnect" href="https://pages-stats.rbl.ms/" crossorigin="anonymous"/><!--link rel="preload" href="https://static.rbl.ms/static/fonts/fontawesome/fontawesome-mini.woff" as="font" type="font/woff2" crossorigin--><script class="rm-i-script">window.REBELMOUSE_BOOTSTRAP_DATA = {"isUserLoggedIn": false, "site": {"id": 20265424, "isCommunitySite": false}, "runner": {"id": 20265424}, "post": {"id": 2667183018, "sections": [0, 497728257, 539626628, 544169516, 544169517, 539617903, 2241528953, 2241528957], "shareUrl": "https%3A%2F%2Fspectrum.ieee.org%2Flean-software-development", "status": 0, "tags": ["coding", "software bloat", "cybersecurity", "cloud computing"]}, "path": "/lean-software-development", "pathParams": {"slug": "lean-software-development"}, "resourceId": "pp_2667183018", "fbId": "200167090048537", "fbAppVersion": "v2.5", "clientGaId": "UA-747464-1", "messageBusUri": "wss://messages.rebelmouse.io", "section": {"id": null}, "tag": {"slug": "cybersecurity"}, "fullBootstrapUrl": "/res/bootstrap/data.js?site_id=20265424\u0026resource_id=pp_2667183018\u0026path_params=%7B%22slug%22%3A%22lean-software-development%22%7D\u0026warehouse10x=1\u0026override_device=desktop\u0026post_id=2667183018", "whitelabel_menu": {}, "useRiver": true, "engine": {"recaptchaSiteKey": null, "lazyLoadShortcodeImages": true, "backButtonGoToPage": true, "changeParticleUrlScroll": false, "countKeepReadingAsPageview": true, "defaultVideoPlayer": "", "theoPlayerLibraryLocation": "", "trackPageViewOnParticleUrlScroll": false, "webVitalsSampleRate": 100, "overrideDevicePixelRatio": null, "image_quality_level": 85, "sendEventsToCurrentDomain": false, "enableLoggedOutUserTracking": false}}; </script><script class="rm-i-script">window.REBELMOUSE_BASE_ASSETS_URL = "https://spectrum.ieee.org/static/dist/social-ux/"; window.REBELMOUSE_BASE_SSL_DOMAIN = "https://spectrum.ieee.org"; window.REBELMOUSE_TASKS_QUEUE = []; window.REBELMOUSE_LOW_TASKS_QUEUE = []; window.REBELMOUSE_LOWEST_TASKS_QUEUE = []; window.REBELMOUSE_ACTIVE_TASKS_QUEUE = []; window.REBELMOUSE_STDLIB = {}; window.RM_OVERRIDES = {}; window.RM_AD_LOADER = []; </script><script src="https://spectrum.ieee.org/static/dist/social-ux/main.6dd57737d73e2cefa676.bundle.mjs" class="rm-i-script" type="module" async="async" data-js-app="true" data-src-host="https://spectrum.ieee.org" data-src-file="main.mjs"></script><script src="https://spectrum.ieee.org/static/dist/social-ux/main.5cf2d86defc2a8468262.bundle.js" class="rm-i-script" nomodule="nomodule" defer="defer" data-js-app="true" data-src-host="https://spectrum.ieee.org" data-src-file="main.js"></script><script src="https://spectrum.ieee.org/static/dist/social-ux/runtime.7c6b21900ce170cda6bd.bundle.mjs" class="rm-i-script" type="module" async="async" data-js-app="true" data-src-host="https://spectrum.ieee.org" data-src-file="runtime.mjs"></script><script src="https://spectrum.ieee.org/static/dist/social-ux/runtime.a23ceda6b8448f51fcb3.bundle.js" class="rm-i-script" nomodule="nomodule" defer="defer" data-js-app="true" data-src-host="https://spectrum.ieee.org" data-src-file="runtime.js"></script><script src="https://spectrum.ieee.org/static/dist/social-ux/iabTracking.31cf81e3384788188e0d.bundle.mjs" class="rm-i-script" type="module" async="async" data-js-app="true" data-src-host="https://spectrum.ieee.org" data-src-file="iabTracking.mjs"></script><script src="https://spectrum.ieee.org/static/dist/social-ux/iabTracking.7f23064d1f64f976ca2f.bundle.js" class="rm-i-script" nomodule="nomodule" defer="defer" data-js-app="true" data-src-host="https://spectrum.ieee.org" data-src-file="iabTracking.js"></script><!-- we collected enough need to fix it first before turn in back on--><!--script src="//cdn.ravenjs.com/3.16.0/raven.min.js" crossorigin="anonymous"></script--><!--script type="text/javascript"> Raven.config('https://6b64f5cc8af542cbb920e0238864390a@sentry.io/147999').install(); </script--><link rel="manifest" href="/manifest.json"/><meta name="theme-color" content="#647187"/><script class="rm-i-script"> if ('serviceWorker' in navigator) { window.addEventListener('load', function() { navigator.serviceWorker.register('/sw.js').then(function(registration) { console.log('ServiceWorker registration successful with scope: ', registration.scope); }, function(err) { console.log('ServiceWorker registration failed: ', err); }); }); } else { console.log('ServiceWorker not enabled'); } </script><script class="rm-i-script"> // fallback error prone google tag setup var googletag = googletag || {}; googletag.cmd = googletag.cmd || []; </script><meta http-equiv="X-UA-Compatible" content="IE=edge"/><link rel="alternate" type="application/rss+xml" title="IEEE Spectrum" href="/feeds/topic/computing.rss"/><meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1.0"/><title>Why Bloat Is Still Software’s Biggest Vulnerability - IEEE Spectrum</title><style class="rm-i-styles"> article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block;}audio,canvas,video{display:inline-block;}audio:not([controls]){display:none;}[hidden]{display:none;}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;}body{margin:0;font-size:1em;line-height:1.4;}body,button,input,select,textarea{font-family:Tahoma,sans-serif;color:#5A5858;}::-moz-selection{background:#145A7C;color:#fff;text-shadow:none;}::selection{background:#145A7C;color:#fff;text-shadow:none;}:focus{outline:5px auto #2684b1;}a:hover,a:active{outline:0;}abbr[title]{border-bottom:1px dotted;}b,strong{font-weight:bold;}blockquote{margin:1em 40px;}dfn{font-style:italic;}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0;}ins{background:#ff9;color:#000;text-decoration:none;}mark{background:#ff0;color:#000;font-style:italic;font-weight:bold;}pre,code,kbd,samp{font-family:monospace,serif;_font-family:'courier new',monospace;font-size:1em;}pre{white-space:pre;white-space:pre-wrap;word-wrap:break-word;}q{quotes:none;}q:before,q:after{content:"";content:none;}small{font-size:85%;}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline;}sup{top:-0.5em;}sub{bottom:-0.25em;}ul,ol{margin:1em 0;padding:0 0 0 40px;}dd{margin:0 0 0 40px;}nav ul,nav ol{list-style:none;list-style-image:none;margin:0;padding:0;}img{border:0;-ms-interpolation-mode:bicubic;vertical-align:middle;}svg:not(:root){overflow:hidden;}figure{margin:0;}form{margin:0;}fieldset{border:0;margin:0;padding:0;}label{cursor:pointer;}legend{border:0;padding:0;}button,input{line-height:normal;}button,input[type="button"],input[type="reset"],input[type="submit"]{cursor:pointer;-webkit-appearance:button;}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0;}input[type="search"]{-webkit-appearance:textfield;box-sizing:content-box;}input[type="search"]::-webkit-search-decoration{-webkit-appearance:none;}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0;}textarea{overflow:auto;vertical-align:top;resize:vertical;}input:invalid,textarea:invalid{background-color:#fccfcc;}table{border-collapse:collapse;border-spacing:0;}td{vertical-align:top;}.ir{display:block;border:0;text-indent:-999em;overflow:hidden;background-color:transparent;background-repeat:no-repeat;text-align:left;direction:ltr;}.ir br{display:none;}.hidden{display:none !important;visibility:hidden;}.visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;}.visuallyhidden.focusable:active,.visuallyhidden.focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto;}.invisible{visibility:hidden;}.clearfix:before,.clearfix:after{content:"";display:table;}.clearfix:after{clear:both;}.clearfix{zoom:1;}.zindex20{z-index:20;}.zindex30{z-index:30;}.zindex40{z-index:40;}.zindex50{z-index:50;}html{font-size:11.25px;font-family:serif;line-height:1.66;color:#0D0D0D;font-weight:normal;}body,button,input,select,textarea{font-family:serif;color:#0D0D0D;}.col,body{font-size:1.6rem;line-height:1.66;}a{color:#FF4C00;text-decoration:none;}a:hover{color:#FF4C00;text-decoration:none;}.with-primary-color{color:#FF4C00;}.with-primary-color:hover{color:#FF4C00;}.js-tab,.js-keep-reading,.js-toggle{cursor:pointer;}.noselect{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}.tabs__tab{display:inline-block;padding:10px;}.tabs__tab-content{display:none;}.tabs__tab-content.active{display:block;}button:focus,input[type="text"],input[type="email"]{outline:0;}audio,canvas,iframe,img,svg,video{vertical-align:middle;max-width:100%;}textarea{resize:vertical;}.main{background-color:#bdbdbd;position:relative;overflow:hidden;}.valign-wrapper{display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center;}.valign-wrapper .valign{display:block;}#notification{position:fixed;}.article-module__controls-placeholder{position:absolute;}.display-block{display:block;}.cover-all{position:absolute;width:100%;height:100%;}.full-width{width:100%;}.fa{font-family:FontAwesome,"fontawesome-mini" !important;}.fa.fa-instagram{font-size:1.15em;}.fa-googleplus:before{content:"\f0d5";}.post-partial,.overflow-visible{overflow:visible !important;}.attribute-data{margin:0 10px 10px 0;padding:5px 10px;background-color:#FF4C00;color:white;border-radius:3px;margin-bottom:10px;display:inline-block;}.attribute-data[value=""]{display:none;}.badge{display:inline-block;overflow:hidden;}.badge-image{border-radius:100%;}.js-expandable.expanded .js-expand,.js-expandable:not(.expanded) .js-contract{display:none;}.js-scroll-trigger{display:block;width:100%;}.sticky-target:not(.legacy){position:fixed;opacity:0;top:0;will-change:transform;transform:translate3d(0px,0px,0px);}.sticky-target.legacy{position:relative;}.sticky-target.legacy.sticky-active{position:fixed;}.color-inherit:hover,.color-inherit{color:inherit;}.js-appear-on-expand{transition:all 350ms;height:0;overflow:hidden;opacity:0;}.content-container{display:none;}.expanded .content-container{display:block;}.expanded .js-appear-on-expand{opacity:1;height:auto;}.logged-out-user .js-appear-on-expand{height:0;opacity:0;}.h1,.h2{margin:0;padding:0;font-size:1em;font-weight:normal;}.lazyload-placeholder{display:none;position:absolute;text-align:center;background:rgba(0,0,0,0.1);top:0;bottom:0;left:0;right:0;}div[runner-lazy-loading] .lazyload-placeholder,iframe[runner-lazy-loading] + .lazyload-placeholder{display:block;}.abs-pos-center{position:absolute;top:0;bottom:0;left:0;right:0;margin:auto;}.relative{position:relative;}.runner-spinner{position:absolute;top:0;bottom:0;left:0;right:0;margin:auto;width:50px;}.runner-spinner:before{content:"";display:block;padding-top:100%;}.rm-non-critical-loaded .runner-spinner-circular{animation:rotate 2s linear infinite;height:100%;transform-origin:center center;width:100%;position:absolute;top:0;bottom:0;left:0;right:0;margin:auto;}.position-relative{position:relative;}.collection-button{display:inline-block;}.rm-non-critical-loaded .runner-spinner-path{stroke-dasharray:1,200;stroke-dashoffset:0;animation:dash 1.5s ease-in-out infinite,color 6s ease-in-out infinite;stroke-linecap:round;}.pagination-container .pagination-wrapper{display:flex;align-items:center;}.pagination-container .pagination-wrapper a{color:rgba(59,141,242,1);margin:0 5px;}@keyframes rotate{100%{transform:rotate(360deg);}}@keyframes dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0;}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px;}100%{stroke-dasharray:89,200;stroke-dashoffset:-124px;}}@keyframes color{100%,0%{stroke:rgba(255,255,255,1);}40%{stroke:rgba(255,255,255,0.6);}66%{stroke:rgba(255,255,255,0.9);}80%,90%{stroke:rgba(255,255,255,0.7);}}.js-section-loader-feature-container > .slick-list > .slick-track > .slick-slide:not(.slick-active){height:0;visibility:hidden;}.rebellt-item-media-container .instagram-media{margin-left:auto !important;margin-right:auto !important;}.js-hidden-panel{position:fixed;top:0;left:0;right:0;transition:all 300ms;z-index:10;}.js-hidden-panel.active{transform:translate3d(0,-100%,0);}.content{margin-left:auto;margin-right:auto;max-width:1100px;width:90%;}.ad-tag{text-align:center;}.ad-tag__inner{display:inline-block;}.content .ad-tag{margin-left:-5%;margin-right:-5%;}@media (min-width:768px){.content .ad-tag{margin-left:auto;margin-right:auto;}}.user-prefs{display:none;}.no-mb:not(:last-child){margin-bottom:0;}.no-mt:not(:first-child){margin-top:0;}.sm-mt-0:not(:empty):before,.sm-mt-1:not(:empty):before,.sm-mt-2:not(:empty):before,.sm-mb-0:not(:empty):after,.sm-mb-1:not(:empty):after,.sm-mb-2:not(:empty):after,.md-mt-0:not(:empty):before,.md-mt-1:not(:empty):before,.md-mt-2:not(:empty):before,.md-mb-0:not(:empty):after,.md-mb-1:not(:empty):after,.md-mb-2:not(:empty):after,.lg-mt-0:not(:empty):before,.lg-mt-1:not(:empty):before,.lg-mt-2:not(:empty):before,.lg-mb-0:not(:empty):after,.lg-mb-1:not(:empty):after,.lg-mb-2:not(:empty):after{content:'';display:block;overflow:hidden;}.sm-mt-0:not(:empty):before{margin-bottom:0;}.sm-mt-0 > *{margin-top:0;}.sm-mt-1:not(:empty):before{margin-bottom:-10px;}.sm-mt-1 > *{margin-top:10px;}.sm-mt-2:not(:empty):before{margin-bottom:-20px;}.sm-mt-2 > *{margin-top:20px;}.sm-mb-0:not(:empty):after{margin-top:0;}.sm-mb-0 > *{margin-bottom:0;}.sm-mb-1:not(:empty):after{margin-top:-10px;}.sm-mb-1 > *{margin-bottom:10px;}.sm-mb-2:not(:empty):after{margin-top:-20px;}.sm-mb-2 > *{margin-bottom:20px;}@media (min-width:768px){.md-mt-0:not(:empty):before{margin-bottom:0;}.md-mt-0 > *{margin-top:0;}.md-mt-1:not(:empty):before{margin-bottom:-10px;}.md-mt-1 > *{margin-top:10px;}.md-mt-2:not(:empty):before{margin-bottom:-20px;}.md-mt-2 > *{margin-top:20px;}.md-mb-0:not(:empty):after{margin-top:0;}.md-mb-0 > *{margin-bottom:0;}.md-mb-1:not(:empty):after{margin-top:-10px;}.md-mb-1 > *{margin-bottom:10px;}.md-mb-2:not(:empty):after{margin-top:-20px;}.md-mb-2 > *{margin-bottom:20px;}}@media (min-width:1024px){.lg-mt-0:not(:empty):before{margin-bottom:0;}.lg-mt-0 > *{margin-top:0;}.lg-mt-1:not(:empty):before{margin-bottom:-10px;}.lg-mt-1 > *{margin-top:10px;}.lg-mt-2:not(:empty):before{margin-bottom:-20px;}.lg-mt-2 > *{margin-top:20px;}.lg-mb-0:not(:empty):after{margin-top:0;}.lg-mb-0 > *{margin-bottom:0;}.lg-mb-1:not(:empty):after{margin-top:-10px;}.lg-mb-1 > *{margin-bottom:10px;}.lg-mb-2:not(:empty):after{margin-top:-20px;}.lg-mb-2 > *{margin-bottom:20px;}}.sm-cp-0{padding:0;}.sm-cp-1{padding:10px;}.sm-cp-2{padding:20px;}@media (min-width:768px){.md-cp-0{padding:0;}.md-cp-1{padding:10px;}.md-cp-2{padding:20px;}}@media (min-width:1024px){.lg-cp-0{padding:0;}.lg-cp-1{padding:10px;}.lg-cp-2{padding:20px;}}.mb-2 > *{margin-bottom:20px;}.mb-2 > :last-child{margin-bottom:0;}.v-sep > *{margin-bottom:20px;}@media (min-width:768px){.v-sep > *{margin-bottom:40px;}}.v-sep > *:last-child{margin-bottom:0;}@media only screen and (max-width:767px){.hide-mobile{display:none !important;}}@media only screen and (max-width:1023px){.hide-tablet-and-mobile{display:none !important;}}@media only screen and (min-width:768px){.hide-tablet-and-desktop{display:none !important;}}@media only screen and (min-width:768px) and (max-width:1023px){.hide-tablet{display:none !important;}}@media only screen and (min-width:1024px){.hide-desktop{display:none !important;}}.row.px10{margin-left:-10px;margin-right:-10px;}.row.px10 > .col{padding-left:10px;padding-right:10px;}.row.px20{margin-left:-20px;margin-right:-20px;}.row.px20 > .col{padding-left:20px;padding-right:20px;}.row{margin-left:auto;margin-right:auto;overflow:hidden;}.row:after{content:'';display:table;clear:both;}.row:not(:empty){margin-bottom:-20px;}.col{margin-bottom:20px;}@media (min-width:768px){.col{margin-bottom:40px;}.row:not(:empty){margin-bottom:-40px;}}.row .col{float:left;box-sizing:border-box;}.row .col.pull-right{float:right;}.row .col.s1{width:8.3333333333%;}.row .col.s2{width:16.6666666667%;}.row .col.s3{width:25%;}.row .col.s4{width:33.3333333333%;}.row .col.s5{width:41.6666666667%;}.row .col.s6{width:50%;}.row .col.s7{width:58.3333333333%;}.row .col.s8{width:66.6666666667%;}.row .col.s9{width:75%;}.row .col.s10{width:83.3333333333%;}.row .col.s11{width:91.6666666667%;}.row .col.s12{width:100%;}@media only screen and (min-width:768px){.row .col.m1{width:8.3333333333%;}.row .col.m2{width:16.6666666667%;}.row .col.m3{width:25%;}.row .col.m4{width:33.3333333333%;}.row .col.m5{width:41.6666666667%;}.row .col.m6{width:50%;}.row .col.m7{width:58.3333333333%;}.row .col.m8{width:66.6666666667%;}.row .col.m9{width:75%;}.row .col.m10{width:83.3333333333%;}.row .col.m11{width:91.6666666667%;}.row .col.m12{width:100%;}}@media only screen and (min-width:1024px){.row .col.l1{width:8.3333333333%;}.row .col.l2{width:16.6666666667%;}.row .col.l3{width:25%;}.row .col.l4{width:33.3333333333%;}.row .col.l5{width:41.6666666667%;}.row .col.l6{width:50%;}.row .col.l7{width:58.3333333333%;}.row .col.l8{width:66.6666666667%;}.row .col.l9{width:75%;}.row .col.l10{width:83.3333333333%;}.row .col.l11{width:91.6666666667%;}.row .col.l12{width:100%;}}.widget{position:relative;box-sizing:border-box;}.widget:hover .widget__headline a{color:#FF4C00;}.widget__headline{font-family:Theinhardt-Regular,Helvetica,Arial,sans-serif;color:#0D0D0D;cursor:pointer;}.widget__headline-text{font-family:inherit;color:inherit;word-break:break-word;}.widget__section-text{display:block;}.image,.widget__image{background-position:center;background-repeat:no-repeat;background-size:cover;display:block;z-index:0;}.widget__play{position:absolute;width:100%;height:100%;text-align:center;}.rm-widget-image-holder{position:relative;}.rm-video-holder{position:absolute;width:100%;height:100%;top:0;left:0;}.rm-zindex-hidden{display:none;z-index:-1;}.rm-widget-image-holder .widget__play{top:0;left:0;}.image.no-image{background-color:#e4e4e4;}.widget__video{position:relative;}.widget__video .rm-scrop-spacer{padding-bottom:56.25%;}.widget__video.rm-video-tiktok{max-width:605px;}.widget__video video,.widget__video iframe{position:absolute;top:0;left:0;height:100%;}.widget__product-vendor{font-size:1.5em;line-height:1.5;margin:25px 0;}.widget__product-buy-link{margin:15px 0;}.widget__product-buy-link-btn{background-color:#000;color:#fff;display:inline-block;font-size:1.6rem;line-height:1em;padding:1.25rem;font-weight:700;}.widget__product-buy-btn:hover{color:#fff;}.widget__product-price{font-size:1.5em;line-height:1.5;margin:25px 0;}.widget__product-compare-at-price{text-decoration:line-through;}.rebellt-item.is--mobile,.rebellt-item.is--tablet{margin-bottom:0.85em;}.rebellt-item.show_columns_on_mobile.col2,.rebellt-item.show_columns_on_mobile.col3{display:inline-block;vertical-align:top;}.rebellt-item.show_columns_on_mobile.col2{width:48%;}.rebellt-item.show_columns_on_mobile.col3{width:32%;}@media only screen and (min-width:768px){.rebellt-item.col2:not(.show_columns_on_mobile),.rebellt-item.col3:not(.show_columns_on_mobile){display:inline-block;vertical-align:top;}.rebellt-item.col2:not(.show_columns_on_mobile){width:48%;}.rebellt-item.col3:not(.show_columns_on_mobile){width:32%;}}.rebellt-item.parallax{background-size:cover;background-attachment:fixed;position:relative;left:calc(-50vw + 50%);width:100vw;min-height:100vh;padding:0 20%;box-sizing:border-box;max-width:inherit;text-align:center;z-index:3;}.rebellt-item.parallax.is--mobile{background-position:center;margin-bottom:0;padding:0 15%;}.rebellt-item.parallax.has-description:before,.rebellt-item.parallax.has-description:after{content:"";display:block;padding-bottom:100%;}.rebellt-item.parallax.has-description.is--mobile:before,.rebellt-item.parallax.has-description.is--mobile:after{padding-bottom:90vh;}.rebellt-item.parallax h3,.rebellt-item.parallax p{color:white;text-shadow:1px 0 #000;}.rebellt-item.parallax.is--mobile p{font-size:18px;font-weight:400;}.rebellt-ecommerce h3{font-size:1.8em;margin-bottom:15px;}.rebellt-ecommerce--vendor{font-size:1.5em;line-height:1.5;margin:25px 0;}.rebellt-ecommerce--price{font-size:1.5em;line-height:1.5;margin:25px 0;}.rebellt-ecommerce--compare-at-price{text-decoration:line-through;}.rebellt-ecommerce--buy{margin:15px 0;}.rebellt-ecommerce--btn{background-color:#000;color:#fff;display:inline-block;font-size:1.6rem;line-height:1em;padding:1.25rem;font-weight:700;}.rebellt-ecommerce--btn:hover{color:#fff;}.rebelbar.skin-simple{height:50px;line-height:50px;color:#0D0D0D;font-size:1.2rem;border-left:none;border-right:none;background-color:#fff;}.rebelbar.skin-simple .rebelbar__inner{position:relative;height:100%;margin:0 auto;padding:0 20px;max-width:1300px;}.rebelbar.skin-simple .logo{float:left;}.rebelbar.skin-simple .logo__image{max-height:50px;max-width:190px;}.rebelbar--fake.skin-simple{position:relative;border-color:#fff;}.rebelbar--fixed.skin-simple{position:absolute;width:100%;z-index:3;}.with-fixed-header .rebelbar--fixed.skin-simple{position:fixed;top:0;}.rebelbar.skin-simple .rebelbar__menu-toggle{position:relative;cursor:pointer;float:left;text-align:center;font-size:0;width:50px;margin-left:-15px;height:100%;color:#0D0D0D;}.rebelbar.skin-simple i{vertical-align:middle;display:inline-block;font-size:20px;}.rebelbar.skin-simple .rebelbar__menu-toggle:hover{color:#FF4C00;}.rebelbar.skin-simple .rebelbar__section-links{display:none;padding:0 100px 0 40px;overflow:hidden;height:100%;}.rebelbar.skin-simple .rebelbar__section-list{margin:0 -15px;height:100%;}.rebelbar.skin-simple .rebelbar__section-links li{display:inline-block;padding:0 15px;text-align:left;}.rebelbar.skin-simple .rebelbar__section-link{color:#0D0D0D;display:block;font-size:1.8rem;font-weight:400;text-decoration:none;}.rebelbar.skin-simple .rebelbar__section-link:hover{color:#FF4C00;}.rebelbar.skin-simple .rebelbar__sharebar.sharebar{display:none;}.rebelbar.skin-simple .rebelbar__section-list.js--active .rebelbar__more-sections-button{visibility:visible;}.rebelbar.skin-simple .rebelbar__more-sections-button{cursor:pointer;visibility:hidden;}.rebelbar.skin-simple #rebelbar__more-sections{visibility:hidden;position:fixed;line-height:70px;left:0;width:100%;background-color:#1f1f1f;}.rebelbar.skin-simple #rebelbar__more-sections a{color:white;}.rebelbar.skin-simple #rebelbar__more-sections.opened{visibility:visible;}@media only screen and (min-width:768px){.rebelbar.skin-simple .rebelbar__menu-toggle{margin-right:15px;}.rebelbar.skin-simple{height:100px;line-height:100px;font-weight:700;}.rebelbar.skin-simple .logo__image{max-width:350px;max-height:100px;}.rebelbar.skin-simple .rebelbar__inner{padding:0 40px;}.rebelbar.skin-simple .rebelbar__sharebar.sharebar{float:left;margin-top:20px;margin-bottom:20px;padding-left:40px;}}@media (min-width:960px){.rebelbar.skin-simple .rebelbar__section-links{display:block;}.with-floating-shares .rebelbar.skin-simple .search-form{display:none;}.with-floating-shares .rebelbar.skin-simple .rebelbar__sharebar.sharebar{display:block;}.with-floating-shares .rebelbar.skin-simple .rebelbar__section-links{display:none;}}.menu-global{display:none;width:100%;position:fixed;z-index:3;color:white;background-color:#1a1a1a;height:100%;font-size:1.8rem;overflow-y:auto;overflow-x:hidden;line-height:1.6em;}@media (min-width:768px){.menu-global{display:block;max-width:320px;top:0;-webkit-transform:translate(-320px,0);transform:translate(-320px,0);transform:translate3d(-320px,0,0);}.menu-global,.all-content-wrapper{transition:transform .2s cubic-bezier(.2,.3,.25,.9);}}.menu-overlay{position:fixed;top:-100%;left:0;height:0;width:100%;cursor:pointer;visibility:hidden;opacity:0;transition:opacity 200ms;}.menu-opened .menu-overlay{visibility:visible;height:100%;z-index:1;opacity:1;top:0;}@media only screen and (min-width:768px){.menu-opened .menu-overlay{z-index:10;background:rgba(255,255,255,.6);}}@media (min-width:960px){.logged-out-user .rebelbar.skin-simple .menu-overlay{display:none;}}@media (min-width:600px){.rm-resized-container-5{width:5%;}.rm-resized-container-10{width:10%;}.rm-resized-container-15{width:15%;}.rm-resized-container-20{width:20%;}.rm-resized-container-25{width:25%;}.rm-resized-container-30{width:30%;}.rm-resized-container-35{width:35%;}.rm-resized-container-40{width:40%;}.rm-resized-container-45{width:45%;}.rm-resized-container-50{width:50%;}.rm-resized-container-55{width:55%;}.rm-resized-container-60{width:60%;}.rm-resized-container-65{width:65%;}.rm-resized-container-70{width:70%;}.rm-resized-container-75{width:75%;}.rm-resized-container-80{width:80%;}.rm-resized-container-85{width:85%;}.rm-resized-container-90{width:90%;}.rm-resized-container-95{width:95%;}.rm-resized-container-100{width:100%;}}.rm-embed-container{position:relative;}.rm-embed-container.rm-embed-instagram{max-width:540px;}.rm-embed-container.rm-embed-tiktok{max-width:572px;min-height:721px;}.rm-embed-container.rm-embed-tiktok blockquote,.rm-embed-twitter blockquote{all:revert;}.rm-embed-container.rm-embed-tiktok blockquote{margin-left:0;margin-right:0;position:relative;}.rm-embed-container.rm-embed-tiktok blockquote,.rm-embed-container.rm-embed-tiktok blockquote > iframe,.rm-embed-container.rm-embed-tiktok blockquote > section{width:100%;min-height:721px;display:block;}.rm-embed-container.rm-embed-tiktok blockquote > section{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;}.rm-embed-container.rm-embed-tiktok blockquote > section:before{content:"";display:block;width:100%;height:300px;border-radius:8px;}.rm-embed-container > .rm-embed,.rm-embed-container > .rm-embed-holder{position:absolute;top:0;left:0;}.rm-embed-holder{display:block;height:100%;width:100%;display:flex;align-items:center;}.rm-embed-container > .rm-embed-spacer{display:block;}.rm-embed-twitter{max-width:550px;margin-top:10px;margin-bottom:10px;}.rm-embed-twitter blockquote{position:relative;height:100%;width:100%;flex-direction:column;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;}.rm-embed-twitter:not(.rm-off) .twitter-tweet{margin:0 !important;}.logo__image,.image-element__img,.rm-lazyloadable-image{max-width:100%;height:auto;}.logo__image,.image-element__img{width:auto;}@media (max-width:768px){.rm-embed-spacer.rm-embed-spacer-desktop{display:none;}}@media (min-width:768px){.rm-embed-spacer.rm-embed-spacer-mobile{display:none;}}.sharebar{margin:0 -4px;padding:0;font-size:0;line-height:0;}.sharebar a{color:#fff;}.sharebar a:hover{text-decoration:none;color:#fff;}.sharebar .share,.sharebar .share-plus{display:inline-block;margin:0 4px;font-size:14px;font-weight:400;padding:0 10px;width:20px;min-width:20px;height:40px;line-height:38px;text-align:center;vertical-align:middle;border-radius:2px;}.sharebar .share-plus i,.sharebar .share i{display:inline-block;vertical-align:middle;}.sharebar .hide-button{display:none;}.sharebar.enable-panel .hide-button{display:inline-block;}.sharebar.enable-panel .share-plus{display:none;}.sharebar.with-first-button-caption:not(.enable-panel) .share:first-child{width:68px;}.sharebar.with-first-button-caption:not(.enable-panel) .share:first-child:after{content:'Share';padding-left:5px;vertical-align:middle;}.sharebar--fixed{display:none;position:fixed;bottom:0;z-index:1;text-align:center;width:100%;left:0;margin:20px auto;}.with-floating-shares .sharebar--fixed{display:block;}.sharebar.fly_shared:not(.enable-panel) .share:nth-child(5){display:none;}.share-media-panel .share-media-panel-pinit{position:absolute;right:0;bottom:0;background-color:transparent;}.share-media-panel-pinit_share{background-image:url('/static/img/whitelabel/runner/spritesheets/pin-it-sprite.png');background-color:#BD081C;background-position:-1px -17px;border-radius:4px;float:right;height:34px;margin:7px;width:60px;background-size:194px auto;}.share-media-panel-pinit_share:hover{opacity:.9;}@media (min-width:768px){.sharebar .share-plus .fa,.sharebar .share .fa{font-size:22px;}.sharebar .share,.sharebar .share-plus{padding:0 15px;width:30px;min-width:30px;height:60px;line-height:60px;margin:0 4px;font-size:16px;}.sharebar.with-first-button-caption:not(.enable-panel) .share:first-child{width:180px;}.sharebar.with-first-button-caption:not(.enable-panel) .share:first-child:after{content:'Share this story';padding-left:10px;vertical-align:middle;text-transform:uppercase;}.share-media-panel-pinit_share{background-position:-60px -23px;height:45px;margin:10px;width:80px;}}.action-btn{display:block;font-size:1.6rem;color:#FF4C00;cursor:pointer;border:2px solid #FF4C00;border-color:#FF4C00;border-radius:2px;line-height:1em;padding:1.6rem;font-weight:700;text-align:center;}.action-btn:hover{color:#FF4C00;border:2px solid #FF4C00;border-color:#FF4C00;}.section-headline__text{font-size:3rem;font-weight:700;line-height:1;}.section-headline__text{color:#0D0D0D;}@media (min-width:768px){.section-headline__text{font-size:3.6rem;}.content__main .section-headline__text{margin-top:-.3rem;margin-bottom:2rem;}}.module-headline__text{font-size:3rem;font-weight:700;color:#262626;}@media (min-width:768px){.module-headline__text{font-size:3.6rem;}}.search-form{position:absolute;top:0;right:20px;z-index:1;}.search-form__text-input{display:none;height:42px;font-size:1.3rem;background-color:#f4f4f4;border:none;color:#8f8f8f;text-indent:10px;padding:0;width:220px;position:absolute;right:-10px;top:0;bottom:0;margin:auto;}.search-form .search-form__submit{display:none;position:relative;border:none;bottom:2px;background-color:transparent;}.search-form__text-input:focus,.search-form__submit:focus{border:0 none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;outline:0 none;}.show-search .search-form__close{position:absolute;display:block;top:0;bottom:0;margin:auto;height:1rem;right:-28px;}.search-form__open{vertical-align:middle;bottom:2px;display:inline-block;position:relative;color:#0D0D0D;font-size:1.9rem;}.show-search .search-form__text-input{display:block;}.show-search .search-form__submit{display:inline-block;vertical-align:middle;padding:0;color:#0D0D0D;font-size:1.9rem;}.search-form__close,.show-search .search-form__open{display:none;}.quick-search{display:block;border-bottom:1px solid #d2d2d2;padding:24px 0 28px;margin-bottom:20px;position:relative;}.quick-search__submit{background-color:transparent;border:0;padding:0;margin:0;position:absolute;zoom:.75;color:#000;}.quick-search__input{background-color:transparent;border:0;padding:0;font-size:1.5rem;font-weight:700;line-height:3em;padding-left:40px;width:100%;box-sizing:border-box;}@media (min-width:768px){.search-form{right:40px;}.quick-search{margin-bottom:40px;padding:0 0 20px;}.quick-search__submit{zoom:1;}.quick-search__input{line-height:2.2em;padding-left:60px;}}.search-widget{position:relative;}.search-widget__input,.search-widget__submit{border:none;padding:0;margin:0;color:#0D0D0D;background:transparent;font-size:inherit;line-height:inherit;}.social-links__link{display:inline-block;padding:12px;line-height:0;width:25px;height:25px;border-radius:50%;margin:0 6px;font-size:1.5em;text-align:center;position:relative;vertical-align:middle;color:white;}.social-links__link:hover{color:white;}.social-links__link > span{position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;height:1em;}.article__body{font-family:Theinhardt-Regular,Helvetica,Arial,sans-serif;}.body-description .horizontal-rule{border-top:2px solid #eee;}.article-content blockquote{border-left:5px solid #FF4C00;border-left-color:#FF4C00;color:#656565;padding:0 0 0 25px;margin:1em 0 1em 25px;}.article__splash-custom{position:relative;}.body hr{display:none;}.article-content .media-caption{color:#9a9a9a;font-size:1.4rem;line-height:2;}.giphy-image{margin-bottom:0;}.article-body a{word-wrap:break-word;}.article-content .giphy-image__credits-wrapper{margin:0;}.article-content .giphy-image__credits{color:#000;font-size:1rem;}.article-content .image-media,.article-content .giphy-image .media-photo-credit{display:block;}.tags{color:#FF4C00;margin:0 -5px;}.tags__item{margin:5px;display:inline-block;}.tags .tags__item{line-height:1;}.slideshow .carousel-control{overflow:hidden;}.shortcode-media .media-caption,.shortcode-media .media-photo-credit{display:block;}@media (min-width:768px){.tags{margin:0 -10px;}.tags__item{margin:10px;}.article-content__comments-wrapper{border-bottom:1px solid #d2d2d2;margin-bottom:20px;padding-bottom:40px;}}.subscription-widget{background:#FF4C00;padding:30px;}.subscription-widget .module-headline__text{text-align:center;font-size:2rem;font-weight:400;color:#fff;}.subscription-widget .social-links{margin-left:-10px;margin-right:-10px;text-align:center;font-size:0;}.subscription-widget .social-links__link{display:inline-block;vertical-align:middle;width:39px;height:39px;color:#fff;box-sizing:border-box;border-radius:50%;font-size:20px;margin:0 5px;line-height:35px;background:transparent;border:2px solid #fff;border-color:#fff;}.subscription-widget .social-links__link:hover{color:#FF4C00;border-color:#FF4C00;background:transparent;}.subscription-widget .social-links__link .fa-instagram{margin:5px 0 0 1px;}.subscription-widget__site-links{margin:30px -5px;text-align:center;font-size:.8em;}.subscription-widget__site-link{padding:0 5px;color:inherit;}.newsletter-element__form{text-align:center;position:relative;max-width:500px;margin-left:auto;margin-right:auto;}.newsletter-element__submit,.newsletter-element__input{border:0;padding:10px;font-size:1.6rem;font-weight:500;height:40px;line-height:20px;margin:0;}.newsletter-element__submit{background:#262626;color:#fff;position:absolute;top:0;right:0;}.newsletter-element__submit:hover{opacity:.9;}.newsletter-element__input{background:#f4f4f4;width:100%;color:#8f8f8f;padding-right:96px;box-sizing:border-box;}.gdpr-cookie-wrapper{position:relative;left:0;right:0;padding:.5em;box-sizing:border-box;}.gdpr-cookie-controls{text-align:right;}.runner-authors-list{margin-top:0;margin-bottom:0;padding-left:0;list-style-type:none;}.runner-authors-author-wrapper{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:flex-start;align-items:stretch;align-content:stretch;}.runner-authors-avatar-thumb{display:inline-block;border-radius:100%;width:55px;height:55px;background-repeat:no-repeat;background-position:center;background-size:cover;}.runner-authors-author-info{width:calc(100% - 55px);}.runner-author-name-container{padding:0 6px;}.rm-breadcrumb__list{margin:0;padding:0;}.rm-breadcrumb__item{list-style-type:none;display:inline;}.rm-breadcrumb__item:last-child .rm-breadcrumb__separator{display:none;}.rm-breadcrumb__item:last-child .rm-breadcrumb__link,.rm-breadcrumb__link.disabled{pointer-events:none;color:inherit;}.social-tab-i .share-fb:after,.social-tab-i .share-tw:after{content:none;}.share-buttons .social-tab-i a{margin-right:0;}.share-buttons .social-tab-i li{line-height:1px;float:left;}.share-buttons .social-tab-i ul{margin:0;padding:0;list-style:none;}.share-tab-img{max-width:100%;padding:0;margin:0;position:relative;overflow:hidden;display:inline-block;}.share-buttons .social-tab-i{position:absolute;bottom:0;right:0;margin:0;padding:0;z-index:1;list-style-type:none;}.close-share-mobile,.show-share-mobile{background-color:rgba(0,0,0,.75);}.share-buttons .social-tab-i.show-mobile-share-bar .close-share-mobile,.share-buttons .social-tab-i .show-share-mobile,.share-buttons .social-tab-i .share{width:30px;height:30px;line-height:27px;padding:0;text-align:center;display:inline-block;vertical-align:middle;}.share-buttons .social-tab-i.show-mobile-share-bar .show-share-mobile,.share-buttons .social-tab-i .close-share-mobile{display:none;}.share-buttons .social-tab-i .icons-share{vertical-align:middle;display:inline-block;font:normal normal normal 14px/1 FontAwesome;color:white;}.social-tab-i .icons-share.fb:before{content:'\f09a';}.social-tab-i .icons-share.tw:before{content:'\f099';}.social-tab-i .icons-share.pt:before{content:'\f231';}.social-tab-i .icons-share.tl:before{content:'\f173';}.social-tab-i .icons-share.em:before{content:'\f0e0';}.social-tab-i .icons-share.sprite-shares-close:before{content:'\f00d';}.social-tab-i .icons-share.sprite-shares-share:before{content:'\f1e0';}@media only screen and (max-width:768px){.share-tab-img .social-tab-i{display:block;}.share-buttons .social-tab-i .share{display:none;}.share-buttons .social-tab-i.show-mobile-share-bar .share{display:block;}.social-tab-i li{float:left;}}@media only screen and (min-width:769px){.social-tab-i .close-share-mobile,.social-tab-i .show-share-mobile{display:none !important;}.share-tab-img .social-tab-i{display:none;}.share-tab-img:hover .social-tab-i{display:block;}.share-buttons .social-tab-i .share{width:51px;height:51px;line-height:47px;}.share-buttons .social-tab-i{margin:5px 0 0 5px;top:0;left:0;bottom:auto;right:auto;display:none;}.share-buttons .social-tab-i .share{display:block;}}.accesibility-hidden{border:0;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,1px);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;background:#000;color:#fff;}body:not(.rm-non-critical-loaded) .follow-button{display:none;}.posts-custom .posts-wrapper:after{content:"";display:block;margin-bottom:-20px;}.posts-custom .widget{margin-bottom:20px;width:100%;}.posts-custom .widget__headline,.posts-custom .social-date{display:block;}.posts-custom .social-date{color:#a4a2a0;font-size:1.4rem;}.posts-custom[data-attr-layout_headline] .widget{vertical-align:top;}.posts-custom[data-attr-layout_headline="top"] .widget{vertical-align:bottom;}.posts-custom .posts-wrapper{margin-left:0;margin-right:0;font-size:0;line-height:0;}.posts-custom .widget{display:inline-block;}.posts-custom article{margin:0;box-sizing:border-box;font-size:1.6rem;line-height:1.66;}.posts-custom[data-attr-layout_columns="2"] article,.posts-custom[data-attr-layout_columns="3"] article,.posts-custom[data-attr-layout_columns="4"] article{margin:0 10px;}.posts-custom[data-attr-layout_columns="2"] .posts-wrapper,.posts-custom[data-attr-layout_columns="3"] .posts-wrapper,.posts-custom[data-attr-layout_columns="4"] .posts-wrapper{margin-left:-10px;margin-right:-10px;}@media (min-width:768px){.posts-custom[data-attr-layout_columns="2"] .widget{width:50%;}.posts-custom[data-attr-layout_columns="3"] .widget{width:33.3333%;}.posts-custom[data-attr-layout_columns="4"] .widget{width:25%;}}.posts-custom .widget__headline{font-size:1em;font-weight:700;word-wrap:break-word;}.posts-custom .widget__section{display:block;}.posts-custom .widget__head{position:relative;}.posts-custom .widget__head .widget__body{position:absolute;padding:5%;bottom:0;left:0;box-sizing:border-box;width:100%;background:rgba(0,0,0,0.4);background:linear-gradient(transparent 5%,rgba(0,0,0,0.5));}.posts-custom .widget__head .social-author__name,.posts-custom .widget__head .main-author__name,.posts-custom .widget__head .social-author__social-name,.posts-custom .widget__head .main-author__social-name,.posts-custom .widget__head .widget__headline,.posts-custom .widget__head .widget__subheadline{color:white;}.posts-custom .widget__subheadline *{display:inline;}.posts-custom .main-author__avatar,.posts-custom .social-author__avatar{float:left;border-radius:50%;margin-right:8px;height:30px;width:30px;min-width:30px;overflow:hidden;position:relative;}.posts-custom .main-author__name,.posts-custom .social-author__name{color:#1f1f1f;font-size:1.4rem;font-weight:700;line-height:1.66;display:inline;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;position:relative;}.posts-custom .main-author__social-name,.posts-custom .social-author__social-name{color:#757575;display:block;font-size:1.2rem;line-height:0.8em;}.posts-custom .main-author__name:hover,.posts-custom .social-author__name:hover,.posts-custom .main-author__social-name:hover,.posts-custom .social-author__social-name:hover{color:#FF4C00;}.posts-custom[data-attr-layout_carousel] .posts-wrapper:after{margin-bottom:0 !important;}.posts-custom[data-attr-layout_carousel] .widget{margin-bottom:0 !important;}.posts-custom[data-attr-layout_carousel][data-attr-layout_columns="1"] .posts-wrapper:not(.slick-initialized) .widget:not(:first-child),.posts-custom[data-attr-layout_carousel]:not([data-attr-layout_columns="1"]) .posts-wrapper:not(.slick-initialized){display:none !important;}.posts-custom .slick-arrow{position:absolute;top:0;bottom:0;width:7%;max-width:60px;min-width:45px;min-height:60px;height:15%;color:white;border:0;margin:auto 10px;background:#FF4C00;z-index:1;cursor:pointer;font-size:1.6rem;line-height:1;opacity:0.9;}.posts-custom .slick-prev{left:0;}.posts-custom .slick-next{right:0;}.posts-custom .slick-arrow:before{position:absolute;left:0;right:0;width:13px;bottom:0;top:0;margin:auto;height:16px;}.posts-custom .slick-arrow:hover{background:#FF4C00;opacity:1;}.posts-custom .slick-dots{display:block;padding:10px;box-sizing:border-box;text-align:center;margin:0 -5px;}.posts-custom .slick-dots li{display:inline-block;margin:0 5px;}.posts-custom .slick-dots button{font-size:0;width:10px;height:10px;display:inline-block;line-height:0;border:0;background:#FF4C00;border-radius:7px;padding:0;margin:0;vertical-align:middle;outline:none;}.posts-custom .slick-dots .slick-active button,.posts-custom .slick-dots button:hover{background:#FF4C00;}.posts-custom hr{display:none;}.posts-custom{font-family:Theinhardt-Regular,Helvetica,Arial,sans-serif;}.posts-custom blockquote{border-left:5px solid #FF4C00;border-left-color:#FF4C00;color:#656565;padding:0 0 0 25px;margin:1em 0 1em 25px;}.posts-custom .media-caption{color:#9a9a9a;font-size:1.4rem;line-height:2;}.posts-custom a{word-wrap:break-word;}.posts-custom .giphy-image__credits-wrapper{margin:0;}.posts-custom .giphy-image__credits{color:#000;font-size:1rem;}.posts-custom .body .image-media,.posts-custom .body .giphy-image .media-photo-credit{display:block;}.posts-custom .widget__shares.enable-panel .share-plus,.posts-custom .widget__shares:not(.enable-panel) .hide-button{display:none;}.posts-custom .widget__shares{margin-left:-10px;margin-right:-10px;font-size:0;}.posts-custom .widget__shares a{display:inline-block;padding:5px;line-height:0;width:25px;height:25px;border-radius:50%;margin:0 10px;font-size:1.5rem;text-align:center;position:relative;vertical-align:middle;color:white;}.posts-custom .widget__shares a:hover{color:white;}.posts-custom .widget__shares i{position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;height:1em;}.infinite-scroll-wrapper:not(.rm-loading){width:1px;height:1px;}.infinite-scroll-wrapper.rm-loading{width:1px;}.rm-loadmore-placeholder.rm-loading{display:block;width:100%;}.post-splash-custom,.post-splash-custom .widget__head{position:relative;}.post-splash-custom .widget__head .widget__body{position:absolute;padding:5%;bottom:0;left:0;box-sizing:border-box;width:100%;background:rgba(0,0,0,.4);background:-webkit-linear-gradient(transparent 5%,rgba(0,0,0,.5));background:-o-linear-gradient(transparent 5%,rgba(0,0,0,.5));background:-moz-linear-gradient(transparent 5%,rgba(0,0,0,.5));background:linear-gradient(transparent 5%,rgba(0,0,0,.5));}.post-splash-custom .headline{font-size:2rem;font-weight:700;position:relative;}.post-splash-custom .post-controls{position:absolute;top:0;left:0;z-index:2;}.post-splash-custom hr{display:none;}.post-splash-custom .widget__section{display:block;}.post-splash-custom .post-date{display:block;}.post-splash-custom .photo-credit p,.post-splash-custom .photo-credit a{font-size:1.1rem;margin:0;}.post-splash-custom .widget__subheadline *{display:inline;}.post-splash-custom .widget__image .headline,.post-splash-custom .widget__image .photo-credit,.post-splash-custom .widget__image .photo-credit p,.post-splash-custom .widget__image .photo-credit a,.post-splash-custom .widget__image .post-date{color:#fff;}@media (min-width:768px){.post-splash-custom .headline{font-size:3.6rem;}}.post-splash-custom .widget__shares.enable-panel .share-plus,.post-splash-custom .widget__shares:not(.enable-panel) .hide-button{display:none;}.post-splash-custom .widget__shares{margin-left:-10px;margin-right:-10px;font-size:0;}.post-splash-custom .widget__shares a{display:inline-block;padding:5px;line-height:0;width:25px;height:25px;border-radius:50%;margin:0 10px;font-size:1.5rem;text-align:center;position:relative;vertical-align:middle;color:white;}.post-splash-custom .widget__shares a:hover{color:white;}.post-splash-custom .widget__shares i{position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;height:1em;}.post-authors{font-size:1.1em;line-height:1;padding-bottom:20px;margin-bottom:20px;color:#9a9a9a;border-bottom:1px solid #d2d2d2;}.post-authors__name,.post-authors__date{display:inline-block;vertical-align:middle;}.post-authors__name{font-weight:600;}.post-authors__date{margin-left:7px;}.post-authors__fb-like{float:right;overflow:hidden;}.post-authors__fb-like[fb-xfbml-state='rendered']:before{content:'Like us on Facebook';line-height:20px;display:inline-block;vertical-align:middle;margin-right:15px;}.post-authors__list{list-style:none;display:inline-block;vertical-align:middle;margin:0;padding:0;}.post-author{display:inline;}.post-author__avatar{z-index:0;border-radius:100%;object-fit:cover;width:50px;height:50px;}.post-author__avatar,.post-author__name{display:inline-block;vertical-align:middle;}.post-author__bio p{margin:0;}.post-pager{display:table;width:100%;}.post-pager__spacing{display:table-cell;padding:0;width:5px;}.post-pager__btn{display:table-cell;font-size:1.6rem;background:#FF4C00;color:white;cursor:pointer;line-height:1em;padding:1.6rem;font-weight:700;text-align:center;}.post-pager__btn:hover{background:#FF4C00;color:white;}.post-pager__btn .fa{transition:padding 200ms;}.post-pager__btn:hover .fa{padding:0 5px;}.post-pager__spacing:first-child,.post-pager__spacing:last-child{display:none;}.arrow-link{font-weight:600;font-size:1.5rem;color:#FF4C00;margin:0 -.5rem;text-align:right;position:relative;}.arrow-link__anchor span{vertical-align:middle;margin:0 .5rem;}.list{display:block;margin-left:-1em;margin-right:-1em;padding:0;}.list__item{display:inline-block;padding:1em;}.logo__anchor{display:block;font-size:0;}.logo__image.with-bounds{max-width:190px;max-height:100px;}@media (min-width:768px){.logo__image.with-bounds{max-width:350px;}}.widget__head .rm-lazyloadable-image{width:100%;}.crop-16x9{padding-bottom:56.25%;}.crop-3x2{padding-bottom:66.6666%;}.crop-2x1{padding-bottom:50%;}.crop-1x2{padding-bottom:200%;}.crop-3x1{padding-bottom:33.3333%;}.crop-1x1{padding-bottom:100%;}.rm-crop-16x9 > .widget__img--tag,.rm-crop-16x9 > div:not(.rm-crop-spacer),.rm-crop-3x2 > .widget__img--tag,.rm-crop-3x2 > div:not(.rm-crop-spacer),.rm-crop-2x1 > .widget__img--tag,.rm-crop-2x1 > div:not(.rm-crop-spacer),.rm-crop-1x2 > .widget__img--tag,.rm-crop-1x2 > div:not(.rm-crop-spacer),.rm-crop-3x1 > .widget__img--tag,.rm-crop-3x1 > div:not(.rm-crop-spacer),.rm-crop-1x1 > .widget__img--tag,.rm-crop-1x1 > div:not(.rm-crop-spacer),.rm-crop-custom > .widget__img--tag,.rm-crop-custom > div:not(.rm-crop-spacer){position:absolute;top:0;left:0;bottom:0;right:0;height:100%;width:100%;object-fit:contain;}.rm-crop-16x9 > .rm-crop-spacer,.rm-crop-3x2 > .rm-crop-spacer,.rm-crop-2x1 > .rm-crop-spacer,.rm-crop-1x2 > .rm-crop-spacer,.rm-crop-3x1 > .rm-crop-spacer,.rm-crop-1x1 > .rm-crop-spacer,.rm-crop-custom > .rm-crop-spacer{display:block;}.rm-crop-16x9 > .rm-crop-spacer{padding-bottom:56.25%;}.rm-crop-3x2 > .rm-crop-spacer{padding-bottom:66.6666%;}.rm-crop-2x1 > .rm-crop-spacer{padding-bottom:50%;}.rm-crop-1x2 > .rm-crop-spacer{padding-bottom:200%;}.rm-crop-3x1 > .rm-crop-spacer{padding-bottom:33.3333%;}.rm-crop-1x1 > .rm-crop-spacer{padding-bottom:100%;}.share-plus{background-color:#afafaf;}.share-plus:hover{background-color:#aaaaaa;}.share-facebook,.share-fb{background-color:#1777f2;}.share-facebook:hover,.share-fb:hover{background-color:#318bff;}.share-twitter,.share-tw{background-color:#50abf1;}.share-twitter:hover,.share-tw:hover{background-color:#00a8e5;}.share-apple{background-color:#000000;}.share-apple:hover{background-color:#333333;}.share-linkedin{background-color:#0077b5;}.share-linkedin:hover{background:#006da8;}.share-pinterest{background-color:#ce1e1f;}.share-pinterest:hover{background:#bb2020;}.share-googleplus{background-color:#df4a32;}.share-googleplus:hover{background-color:#c73c26;}.share-reddit{background-color:#ff4300;}.share-email{background-color:#5e7286;}.share-email:hover{background:#48596b;}.share-tumblr{background-color:#2c4762;}.share-tumblr:hover{background-color:#243c53;}.share-sms{background-color:#ff922b;}.share-sms:hover{background-color:#fd7e14;}.share-whatsapp{background-color:#4dc247;}.share-instagram{background-color:#3f729b;}.share-instagram:hover{background-color:#4B88B9;}.share-youtube{background-color:#cd201f;}.share-youtube:hover{background-color:#EA2524;}.share-linkedin{background-color:#0077b5;}.share-linkedin:hover{background-color:#005d8e;}.share-slack{background-color:#36C5F0;}.share-slack:hover{background-color:#0077b5;}.share-openid{background-color:#F7931E;}.share-openid:hover{background-color:#E6881C;}.share-st{background-color:#eb4924;}.share-copy-link{background-color:#159397;}.listicle-slideshow__thumbnails{margin:0 -0.5%;overflow:hidden;white-space:nowrap;min-height:115px;}.listicle-slideshow__thumbnail{width:19%;margin:0.5%;display:inline-block;cursor:pointer;}.listicle-slideshow-pager{display:none;}.rm-non-critical-loaded .listicle-slideshow-pager{display:contents;}.rm-top-sticky-flexible{position:fixed;z-index:4;top:0;left:0;width:100%;transform:translate3d(0px,0px,0px);}.rm-top-sticky-stuck{position:relative;}.rm-top-sticky-stuck .rm-top-sticky-floater{position:fixed;z-index:4;top:0;left:0;width:100%;transform:translate3d(0px,-200px,0px);}.rm-top-sticky-stuck.rm-stuck .rm-top-sticky-floater{transform:translate3d(0px,0px,0px);}.osano-cm-dialog{background-color:#1A1A1A;color:#BFBFBF;padding:44px 20px 24px 20px;font-size:18px;line-height:28px;font-family:"Favorit-Pro",sans-serif}.osano-cm-info,.osano-cm-info-views{background:#1A1A1A;color:#BFBFBF;font-size:18px;line-height:28px;font-family:"Favorit-Pro",sans-serif;box-shadow:unset}.osano-cm-header,.osano-cm-info-dialog-header{background:#1A1A1A;font-size:20px;color:#fff}.osano-cm-link{color:#f2f2f2}.osano-cm-close{color:#efefef;stroke:#efefef}.osano-cm-close:hover,.osano-cm-close:focus{background-color:#1a1a1a;border-color:#1a1a1a;color:#fff;stroke:#fff;outline:none}.osano-cm-link:focus{color:unset}.osano-cm-buttons button.osano-cm-manage{border-radius:4px;font-family:"Favorit-Mono",sans-serif;font-size:12px;letter-spacing:0.75px;padding:8px 12px 5px;text-transform:uppercase;line-height:1.4;background-color:#ff4c00;color:white;border:none;margin-top:12px}.osano-cm-buttons button:hover,.osano-cm-buttons button:active{background-color:#A32700;color:#ffffff}.osano-cm-close{stroke-width:1px;border-radius:50%;border-style:solid;border-width:2px;box-sizing:initial;cursor:pointer;height:20px;line-height:normal;margin:16px;min-height:20px;min-width:20px;order:0;outline:none;overflow:hidden;padding:0;text-decoration:none;transition-timing-function:ease-out;width:20px;z-index:2}.osano-cm-link{cursor:pointer;text-decoration:none;transition-duration:0.2s;transition-property:color;transition-timing-function:ease-out}.osano-cm-link:hover,.osano-cm-link:active{cursor:pointer;text-decoration:none;color:#FF4C00}.osano-cm-close:focus,.osano-cm-close:hover{stroke-width:2px;transform:unset}.osano-cm-link:focus{font-weight:normal}.osano-cm-toggle__switch{background-color:#b8b8b8}.osano-cm-toggle__input:checked + .osano-cm-toggle__switch{background-color:#ff4c00;border-color:#ff4c00}.osano-cm-toggle__input:checked:focus + .osano-cm-toggle__switch,.osano-cm-toggle__input:checked:hover + .osano-cm-toggle__switch{background-color:#ff4c00;border-color:#ff4c00}.osano-cm-toggle__input:disabled:checked + .osano-cm-toggle__switch,.osano-cm-toggle__input:disabled:checked:focus + .osano-cm-toggle__switch,.osano-cm-toggle__input:disabled:checked:hover + .osano-cm-toggle__switch{background-color:#ff4c00;border-color:#ff4c00;opacity:0.5}.osano-cm-button{background-color:#ff4b00;border:1px solid #ff4b00;color:#ffffff;border-radius:4px;font-family:"Favorit-Mono",sans-serif;font-size:12px;letter-spacing:0.75px;padding:8px 12px 5px;text-transform:uppercase;line-height:normal;margin-right:8px}.osano-cm-button:hover{background-color:#A32700;border:1px solid #A32700}.osano-cm-disclosure__toggle,.osano-cm-expansion-panel__toggle{color:#f2f2f2;cursor:pointer}.osano-cm-drawer-toggle .osano-cm-label{font-size:18px;line-height:1.375em;margin:0 auto 0 0;font-weight:normal;color:white;font-family:"Favorit-Pro"}.osano-cm-disclosure__toggle:focus,.osano-cm-expansion-panel__toggle:focus{color:#ff4b00}.osano-cm-disclosure__toggle:hover,.osano-cm-disclosure__toggle:active,.osano-cm-expansion-panel__toggle:hover,.osano-cm-expansion-panel__toggle:active{color:#ff4b00}.osano-cm-disclosure--collapse{border-bottom:1px solid #4a4a4a;padding-bottom:1em}.osano-cm-widget{display:none}.osano-cm-disclosure__toggle:focus,.osano-cm-disclosure__toggle:hover{text-decoration:none}@media screen and (min-width:768px){.osano-cm-dialog{padding:32px 32px 32px 32px}.osano-cm-dialog--type_bar .osano-cm-button{flex:0.3 0.5 70%;margin:0.25em 0.5em;width:auto}}.osano-cm-save{width:40%;float:right;margin:0 16px 24px 0}.osano-cm-powered-by{clear:both;margin-bottom:0}.rblad-ieee_welcome_interstitial{margin-bottom:0;height:0}.rblad-ieee_welcome_interstitial .rbl-ad:before,[id^="google_ads_"]:before{content:none!important}@media (max-width:727px){.top-leader-container.top-leader-container{min-height:147px}.rbl-ad{display:flex;flex-direction:column;align-items:center;justify-content:center}.rblad-ieee_in_content .rbl-ad,.rblad-ieee_in_content_new .rbl-ad,.rblad-ieee_infinite_new .rbl-ad,.rblad-ieee_infinite_leaderboard .rbl-ad,.rblad-ieee_infinite_leaderboard,.after_main_article_content{min-height:370px;min-width:350px}.feature_post_full + div{min-height:400px;box-sizing:border-box}.rblad-ieee_top_leaderboard .rbl-ad{min-height:180px;min-width:350px}}@media (min-width:1440px){.after_main_article_content,.rblad-ieee_infinite_new,.rblad-ieee_in_content,.feature_post_full + div,.article_column .rbl-ad,.rblad-ieee_infinite_leaderboard,.rblad-ieee_infinite_leaderboard .rbl-ad{box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;align-items:center;min-width:790px}.after_main_article_content{min-height:320px}.rblad-ieee_infinite_new{min-height:125px}.rblad-ieee_in_content{min-height:384px}.feature_post_full + div{min-height:344px}.article_column .rbl-ad{min-height:320px}.rblad-ieee_infinite_leaderboard,.rblad-ieee_infinite_leaderboard .rbl-ad{min-height:280px;min-width:970px}.rblad-ieee_top_leaderboard .rbl-ad{min-height:120px}.top-leader-container.top-leader-container,.rblad-ieee_top_leaderboard.rblad-ieee_top_leaderboard{min-width:970px}}.sidebar_repeat_ad.sidebar_repeat_ad{margin-top:0}.top-leader-container.top-leader-container,.rblad-ieee_top_leaderboard.rblad-ieee_top_leaderboard{height:180px;padding:0!important;margin-top:-10px!important}.sidebar_repeat_ad.sidebar_repeat_ad{justify-content:flex-start}.rbl-ad{width:100%}.sidebar_repeat_ad .rbl-ad-gpt>div{text-align:left!important}.rblad-ieee_in_content{padding-top:20px;padding-bottom:40px;border-top:1px solid lightgray;border-bottom:1px solid lightgray;display:flex;justify-content:center;clear:both}.ad-in-content.ad-in-content{border:0}@font-face{font-family:'Favorit-Mono';font-weight:300;font-style:normal;font-display:swap;src:url('https://partners.rebelmouse.com/IEEE/FavoritMono/ABCFavoritMono-Light.woff2') format('woff2')}@font-face{font-family:'Favorit-Mono';font-weight:400;font-style:normal;font-display:swap;src:url('https://partners.rebelmouse.com/IEEE/FavoritMono/ABCFavoritMono-Regular.woff2') format('woff2')}@font-face{font-family:'Favorit-Pro-Light';font-weight:300;font-style:normal;font-display:swap;src:url('https://partners.rebelmouse.com/IEEE/ABCFavoritProFullWeb/ABCFavoritPro-Light.woff2') format('woff2')}@font-face{font-family:'Favorit-Pro';font-weight:700;font-style:normal;font-display:swap;src:url('https://partners.rebelmouse.com/IEEE/ABCFavoritProFullWeb/ABCFavoritPro-Bold.woff2') format('woff2')}@font-face{font-family:'Ivar-Headline';font-weight:400;font-style:normal;font-display:swap;src:url('https://partners.rebelmouse.com/IEEE/IvarCompleteWeb/IvarHeadline-Regular.woff2') format('woff2')}@font-face{font-family:'Favorit-Pro';font-weight:400;font-style:normal;font-display:swap;src:url('https://partners.rebelmouse.com/IEEE/ABCFavoritProFullWeb/ABCFavoritPro-Regular.woff2') format('woff2')}@font-face{font-family:'Ivar-Headline-Bold';font-weight:400;font-style:normal;font-display:swap;src:url('https://partners.rebelmouse.com/IEEE/IvarCompleteWeb/IvarHeadline-Bold.woff2') format('woff2')}.homepage-logo{display:inline;font-size:1.6rem}.lightbox--shown.lightbox--shown .image-media.media-caption,.lightbox--shown.lightbox--shown .image-media.media-photo-credit{display:none}.headline__h1{font-family:"Favorit-Pro-Light",sans-serif;font-size:42px;line-height:44px;font-weight:300;letter-spacing:-0.5px;padding:16px 16px 0px 16px;margin:0}body>#myframe{position:absolute}.widget.tag-type-webinar .widget__headline-text,.widget.tag-type-whitepaper .widget__headline-text{text-transform:capitalize}@media (min-width:1568px){.main{border-left:1px solid #bdbdbd;border-right:1px solid #bdbdbd}}[id^="google_ads_"]{margin:0 auto!important}[id^="google_ads_"]:before{content:"Advertisement";text-transform:uppercase;display:block;font-size:10px;color:#595959;font-family:"Favorit-Mono",sans-serif;padding-bottom:0px;letter-spacing:1px}.stick_in_parent{top:40px!important}.sidebar_repeat_ad{align-items:flex-start!important}.ad-in-content{padding-top:40px;padding-bottom:40px;border-top:1px solid lightgray;border-bottom:1px solid lightgray;display:flex;justify-content:center}.content{width:auto;max-width:none}.search__close{float:right;position:relative;right:30px;padding-top:3px}.search__close:before,.search__close:after{position:absolute;left:14px;content:" ";height:25px;border-left:2px solid}.search__close:before{transform:rotate(45deg)}.search__close:after{transform:rotate(-45deg)}.search-form{position:relative;right:0;margin-left:20px}.search-form__open{font-size:16px;line-height:53px;height:53px;width:53px;text-align:center;bottom:0}.search-form .search-form__submit{position:absolute;display:block;margin-left:3px;top:0;height:32px;z-index:1}.show-search .search-form__submit{color:#fff;position:absolute;right:0;padding:17px;top:0;display:initial}.topbar_sticky{margin:0}.topbar_sticky .sticky-target.sticky-active{z-index:2;width:100%;top:0}@media (max-width:767px){.menu-opened .menu-global{margin-top:53px}.menu-opened .rebelbar__menu-toggle .fa-bars:before{content:"\f00d"}.cta-member__right-column{margin-top:18px;margin-left:16px}}@media (min-width:768px){.container{box-sizing:border-box;padding:0 30px;margin:0 auto}.scrolled .rebelbar .container{padding:15px 30px 10px!important}.welcome-ad-cont{margin-bottom:32px}}#sidebar_1 div{padding:16px}.arrow-link,.custom-field-PodcastTime{display:none}.menu-global{display:none!important}.infinite-scroll-wrapper:not(.rm-loading){margin:0}.main,.all-content-wrapper{background-color:#ecece9;overflow:inherit}body:not(.section-podcast,.section-podcasts,.section-video,.section-chatbot,.section-fixing-the-future){background:#ecece9}.popup_links .list .list__item:nth-child(1){background:#ff4c00;border:1px solid #ff4c00}.popup_links .list .list__item:nth-child(2){border:1px solid #595959!important;margin-left:15px}.popup_links .list .list__item:nth-child(1):hover{background:#a32700}.popup_links .list .list__item:nth-child(2):hover{border:1px solid #bfbfbf!important}.articles-count{margin:0}.posts-custom .social-date,.posts-custom .time-to-read,.updated_post .social-date-modified,.posts-custom .custom-field-TimeofRead{font-family:"Favorit-Mono",sans-serif;text-transform:uppercase;display:inline-block;padding-right:9px;font-size:12px;letter-spacing:0.5px;line-height:16px;margin:0;vertical-align:middle}.posts-custom .social-date,.posts-custom .time-to-read,.article_post.updated_post .social-date-modified,.posts-custom .custom-field-TimeofRead{color:#404040}.posts-custom .time-to-read,.posts-custom .custom-field-TimeofRead{border-left:1px solid #a6a6a6;padding-left:7px}.story_teaser .widget .row .col{margin:0}.story_teaser .widget{padding-bottom:20px}.story_teaser.infinite .widget{border-bottom:1px solid #bfbfbf;margin:0;padding:16px 6px}.story_teaser.not_infinite .widget:not(:last-child){border-bottom:1px solid #bfbfbf;margin-bottom:0px}.dark_layout .story_teaser.infinite .widget{border-bottom:1px solid #404040}.widget .widget__headline-text,.widget .widget__subheadline-text{text-decoration:underline;text-decoration-color:transparent;text-decoration-thickness:1px;text-underline-offset:3px;transition-duration:300ms;transition-property:text-decoration-color}.featured_post .widget .widget__headline-text,.featured_post .widget .widget__subheadline-text,.fullwidth_post .widget .widget__headline-text,.fullwidth_post .widget .widget__subheadline-text,.story_teaser .widget .widget__headline-text,.story_teaser .widget .widget__subheadline-text{text-underline-offset:5px}.widget .widget__subheadline-text{font-weight:normal}.widget .widget__headline:hover .widget__headline-text,.widget .widget__headline:hover + .widget__subheadline .widget__subheadline-text{text-decoration-color:#ff4c00;color:inherit}.widget:hover .widget__headline a{color:inherit}.current_post .widget .widget__headline-text,.current_post .widget .widget__subheadline-text,.feature_post_full .widget .widget__subheadline-text{text-decoration:none}.icon-close:before,.icon-close:after{position:absolute;left:14px;content:" ";height:29px;border-left:2px solid;color:#f2f2f2}.icon-close:before{transform:rotate(45deg)}.icon-close:after{transform:rotate(-45deg)}.footer{color:#8c8c8c}.dark_top_bar,.footer{background-color:#0d0d0d}.rebelbar-wrapper_static,.rebelbar-wrapper{background:#ecece9;border-bottom:1px solid #bdbdbd}.rebelbar-wrapper div .text-element:nth-child(2){color:#0d0d0d}.rebel-use-info-wrapper button{width:24px;height:24px;border-radius:40px;border:none;display:inline-block;vertical-align:middle;background-size:105%}.rebel-user-info{display:inline-block}.menu-item__title{font-family:Favorit-Pro,sans-serif;font-size:18px;margin-right:16px;letter-spacing:-0.011111111111111112em;white-space:nowrap;line-height:32px}.menu-item__title:before,.topbar-sticky .rebelbar__menu-toggle:before{content:"";display:inline-block;vertical-align:bottom;border-left:1px solid #d9d9d9;height:32px;margin-right:16px}.dark_layout .menu-item__title:before,.dark_layout .topbar-sticky .rebelbar__menu-toggle:before{border-left:1px solid #404040}.menu-item__title:after{content:"";margin-left:8px;vertical-align:middle;display:inline-block;width:13px;height:10px;transition:all 0.3s ease;background-repeat:no-repeat;background-size:100% auto}.menu-item:hover .menu-item__title:after{transform:rotate(180deg);position:relative;top:-2px}.menu-item{cursor:pointer}.menu-dropdown:before{content:"TOPICS";color:#737373;font-family:"Favorit-Mono",sans-serif;font-size:12px;letter-spacing:0.75px;line-height:16px;padding-top:19px;display:block}.menu-dropdown{padding:0 16px;background:#fff;box-sizing:border-box;position:absolute;z-index:2;box-shadow:0 5px 5px #00000017;min-width:231px;transition:all 0.2s ease-out;max-height:0;overflow:hidden}.menu-dropdown .list{padding-bottom:10px}.menu-dropdown .list__item{color:#0d0d0d}.menu-dropdown .list__item:before{content:"";background:#ff4c00;vertical-align:baseline;width:0;height:0;border-radius:50%;display:inline-block;transition:all 200ms ease}.menu-dropdown .list__item.active:before,.menu-dropdown .list__item:hover:before{transition:all 200ms ease;width:13px;height:13px;margin-right:5px}.menu-item:hover .menu-dropdown{max-height:471px}.Top_hugeMenu .rebelbar__menu-toggle{border:none!important;padding:9px 0;position:relative;float:right}.notification-counter{background:#fa8;font-family:"Favorit-Mono",sans-serif;padding:0px 8px;border-radius:40px;font-size:12px;padding-top:3px;float:left;margin-top:3px;height:16px;line-height:16px}.user-info__dropdown-wrapper{display:none;right:32px;top:40px;width:224px;box-sizing:border-box;padding:24px 16px 12px;z-index:100;background:#fff;position:absolute;font-family:"Favorit-Pro",sans-serif;font-size:18px;letter-spacing:-0.011111111111111112em;line-height:22px;text-transform:capitalize}.user-menu-container:hover .user-info__dropdown-wrapper{display:block}.user-info__dropdown{padding:0;margin:0;display:none}.user-info__dropdown-wrapper .user-info__dropdown{display:block}.user-info__dropdown li,.member-link{padding-bottom:12px;list-style:none}.member-link{display:block}.user-info__dropdown li a,.member-link{color:#0d0d0d}.dark_layout .member-link{color:#d9d9d9}.user-info__dropdown .title strong{font-weight:400}.user-info__dropdown .title a:first-child{cursor:text}.river-notification{border-bottom:1px solid #e6e6e6;padding-bottom:16px;padding-top:2px}.river-notification .content-wrp .date,.river-notification .aside{display:none}.river-notification .content-wrp{font-size:14px;letter-spacing:-0.014285714285714287em;line-height:18px}.is_unread .title:before{content:"\f111";font-family:"FontAwesome";color:#ffaa88;padding-right:8px;font-size:11px;vertical-align:text-top}.river-notification .content-wrp a{font-weight:bold}.user-info__dropdown .profile_link:hover:before{content:"\f111";font-family:"FontAwesome";color:#ff4c00;padding-right:5px;float:left}#user_avatar{border-radius:50%;max-width:24px}#user_name{display:inline-block;color:white;font-family:"Favorit-Mono",sans-serif;text-transform:initial;font-size:14px;color:#bfbfbf;padding:0 10px;margin-top:6px;vertical-align:middle}@media (max-width:767px){#user_name{margin-top:0}}.toggle-user-dropdown:after{content:"";box-sizing:border-box;height:8px;width:8px;border:1px solid #bfbfbf;border-bottom:0;border-right:0;transform:scaleX(-1) rotate(-135deg);margin-top:-4px;margin-left:9px;vertical-align:super;display:inline-block}.user-menu-container{display:inline-block;padding:2px 0px;vertical-align:middle}.toggle-user-dropdown{position:relative;top:6px}.user-info__dropdown .mark-all-as-read{text-align:right;font-size:9px;line-height:16px;cursor:pointer;border-top:1px solid #e6e6e6;margin-top:12px;padding:18px 0 21px;text-transform:lowercase;position:relative}.user-info__dropdown .mark-all-as-read:before{content:"NOTIFICATIONS";float:left;font-size:12px;font-family:"Favorit-Mono",sans-serif;text-transform:uppercase;letter-spacing:0.0625em;color:#737373;cursor:initial;position:absolute;left:0;top:18px}.user-info__dropdown-wrapper .notification-counter{float:right;position:relative;top:26px;cursor:text;z-index:1}.user-info__dropdown-wrapper .notification-counter:not(.hidden) + .user-info__dropdown .mark-all-as-read{padding-top:35px;padding-bottom:7px}.user-info__dropdown .title{margin:0}.user-menu-container:hover .toggle-user-dropdown:after{margin-top:0;transform:scaleX(1) rotate(45deg);position:relative;top:4px}.user-menu-container:hover>.rebel-use-info-wrapper .user-info__dropdown{display:block}.rebelbar__menu-toggle svg g g{fill:#0d0d0d}.dark_layout .rebelbar__menu-toggle svg g g{fill:#d9d9d9}.dark_layout .mobile_search_icon path{stroke:#d9d9d9}.dark_layout #mobile_search_icon svg g g,.dark_layout #search_modal svg g g{stroke:#d9d9d9}.dark_layout .search__close:before,.dark_layout .search__close:after{color:#d9d9d9}.dark_layout .user-info__dropdown-wrapper{background:#404040}.dark_layout .user-info__dropdown-wrapper a,.dark_layout .user-info__dropdown{color:#d9d9d9}.dark_layout .river-notification{border-bottom:1px solid #595959}.rebelbar__menu-toggle{min-width:32px;line-height:32px;white-space:nowrap}.rebelbar__menu-toggle svg{margin-top:-4px}.dark_layout .site_logo svg g{fill:#f2f2f2}.dark_layout .site_logo .text-element{color:#d9d9d9}.dark_layout .search-form .search-form__submit svg g{stroke:#d9d9d9}.dark_layout,.dark_layout .rebelbar-wrapper,.dark_layout .rebelbar-wrapper_static{background:#1a1a1a;border-bottom:1px solid #404040}.dark_layout .dark_top_bar{background-color:#262626;border-bottom:1px solid #404040}.dark_layout .menu-dropdown{background:#404040}.dark_layout .rebelbar-wrapper div .text-element:nth-child(2),.dark_layout .list__item{color:#d9d9d9}.dark_layout .fa-search:before,.dark_layout .module-headline__text,.dark_layout .rebelbar-wrapper .text-element{color:#f2f2f2}.dark_layout .menu-item__title{color:#d9d9d9}.dark_layout .search-form__text-input{background:#404040;color:#f2f2f2}.bottom_menu_links .list__item:not(:last-child){border-right:1px solid #404040;padding:0px 7.5px}.bottom_menu_links .list__item:first-child{padding-left:0px;padding-right:15.5px}.js-hidden-panel.active + .featured_columns .sticky_column{top:0px!important}.js-hidden-panel:not(.active) ~ .featured_columns .sticky_column{top:135px!important}.js-hidden-panel:not(.active) ~ .featured_columns .sticky_column .container_head_sticky{top:115px!important}#mobile_search_icon.fa-search:before{padding-right:15px;vertical-align:sub}#search_modal{position:absolute;top:106px;left:0;width:100%;z-index:999;background:#ecece9;border-bottom:1px solid #bfbfbf;padding:16px;box-sizing:border-box}#search_modal.on-search-page{position:static;margin-bottom:0}.dark_layout #search_modal{border-bottom:1px solid #404040;background:#1a1a1a}#search_mobile{font-family:"Favorit-Pro",sans-serif;height:30px;width:72%;border-radius:5px;border:0;padding:0 10px}.dark_layout #search_mobile{background:#404040}#search_form button{background:transparent;border:0;vertical-align:middle;padding-left:20px}.search-form__text-input{position:initial;background:white;font-family:"Favorit-Pro",sans-serif;color:#0d0d0d;height:32px;width:130px;border-radius:4px;display:inline-block;font-size:16px;padding:2px 20px 0 30px;box-sizing:border-box}_:-ms-fullscreen,:root .search-form__text-input{position:static}_:-ms-fullscreen,:root .video-row .story_teaser .widget__headline,_:-ms-fullscreen,:root .video-row .widget__subheadline,_:-ms-fullscreen,:root .video-row .popular_widget .widget__headline{color:rgba(255,76,0,1)!important}_:-ms-fullscreen,:root .video-row .story_teaser .widget__headline a.widget__headline-text{text-decoration:none;color:white!important}_:-ms-fullscreen,:root .video-row .story_teaser .widget__subheadline .widget__subheadline-text{text-decoration:none;color:#999999!important}_:-ms-fullscreen,:root .video-row .popular_widget .widget__headline .widget__headline-text{text-decoration:none;color:white!important}_:-ms-fullscreen,:root .video-row .story_teaser .widget__body:hover .widget__headline,_:-ms-fullscreen,:root .video-row .widget__body:hover .widget__subheadline,_:-ms-fullscreen,:root .video-row .popular_widget .widget__headline:hover{text-decoration:underline}_:-ms-fullscreen,:root .story_teaser .widget__subheadline,_:-ms-fullscreen,:root .story_teaser .widget__headline{color:rgba(255,76,0,1)!important}_:-ms-fullscreen,:root .story_teaser .widget__headline a.widget__headline-text{text-decoration:none;color:#0d0d0d!important}_:-ms-fullscreen,:root .story_teaser .widget__subheadline .widget__subheadline-text{text-decoration:none;color:#595959!important}_:-ms-fullscreen,:root .story_teaser .widget__body:hover .widget__headline,_:-ms-fullscreen,:root .story_teaser .widget__body:hover .widget__subheadline{text-decoration:underline}_:-ms-fullscreen,:root .fullwidth_post .widget__headline.h1,_:-ms-fullscreen,:root .widget__subheadline{display:inline}_:-ms-fullscreen,:root .featured_columns .bigger-teaser-headline .widget__headline.h1,_:-ms-fullscreen,:root .featured_columns .bigger-teaser-headline .widget__subheadline{display:inline}_:-ms-fullscreen,:root .menu-opened .huge-menu{display:block}@media screen and (min-width:1024px){_:-ms-fullscreen,:root .section-the-next-pandemic .story_teaser .widget .widget__head{width:32.5%}_:-ms-fullscreen,:root .section-the-next-pandemic .story_teaser .widget .widget__body{width:66.5%}_:-ms-fullscreen,:root .section-the-institute .story_teaser .widget .col:first-child{width:34.7%!important}_:-ms-fullscreen,:root .section-the-institute .story_teaser .widget .col:last-child{width:63.3%!important}}.search-form__text-input:active,.search-form__text-input:focus{border:1px solid #ff4c00;color:#0d0d0d;caret-color:#0a7aff}.dark_layout .search-form__text-input:active,.dark_layout .search-form__text-input:focus{background:#d9d9d9}.dark_layout .search-form__text-input:active + .search-form__submit svg g,.dark_layout .search-form__text-input:focus + .search-form__submit svg g{stroke:#0d0d0d}.search-form__text-input::placeholder,.search-form__text-input:-ms-input-placeholder,.search-form__text-input::-ms-input-placeholder,.dark_layout .search-form__text-input:active::placeholder,.dark_layout .search-form__text-input:focus::placeholder,.dark_layout .search-form__text-input:active:-ms-input-placeholder,.dark_layout .search-form__text-input:focus::-ms-input-placeholder,.dark_layout .search-form__text-input:active:-ms-input-placeholder,.dark_layout .search-form__text-input:focus::-ms-input-placeholder{color:#8c8c8c}.dark_layout .search-form__text-input::placeholder,.dark_layout .search-form__text-input:-ms-input-placeholder,.dark_layout .search-form__text-input::-ms-input-placeholder{color:#bfbfbf}.widget_column .sticky-target.legacy.sticky-active{top:0px;z-index:0}.featured_columns .row{overflow:inherit;margin:0!important}.featured_columns .row .home_column .story_teaser .widget{padding:24px 32px 24px 22px}.featured_columns .row .home_column,.featured_columns .row .sticky_column,.featured_columns .row .scroll_column,.featured_columns .row .widget_column{padding:0!important}.featured_columns .row .section_column{padding:0px 0px 20px!important}.widget_column .sticky-target.legacy.sticky-active{width:calc(100% - 75%);top:0px;z-index:0}.featured_columns .row .scroll_column{float:right}.featured_columns .widget .row .col{margin-bottom:0}.scroll_column .row .col{margin-bottom:20px}.scroll_column .widget .widget__headline-text{color:#0d0d0d;font-family:Favorit-Pro,sans-serif;font-size:24px;font-weight:bold;letter-spacing:-0.2px;line-height:26px}.scroll_column .widget:hover .widget__headline a{color:#0d0d0d}@media (min-width:992px) and (max-width:1023px){.widget_column.col.l3{width:25%}.article_column.col.l9,.section_column.col.l9{width:75%}}.like-button{display:inline-block;margin:0;margin-top:-4px;line-height:normal;font-size:18px;vertical-align:middle}.like-label{display:none}.like-btn.like,.like-btn.unlike{color:#a6a6a6;border-left:1px solid;padding-left:4px;font-size:14px}.fa-heart:before,.fa-heart-o:before{visibility:hidden}.like-btn.like .heart{background-repeat:no-repeat;background-position:bottom;cursor:pointer;background-position:center 0.23em}.like-btn.unlike .heart,.like-btn.like .heart:active,.dark_layout .like-btn.like .heart:active,.widget.tag-type-podcast .like-btn.like .heart:active{background-repeat:no-repeat;background-position:center 0.23em}.dark_layout .like-btn.like .heart,.widget.tag-type-podcast .like-btn.like .heart{background-position:center 0.25em}.all-related-sections{display:flex;flex-wrap:wrap}.all-related-sections a{display:none}.all-related-sections a[href*="/topic/"],.all-related-sections a[href*="/type/"]{display:inline;padding:1px 8px 5px 8px;margin-right:7px;border:1px solid transparent;border-left:1px solid #bfbfbf;border-bottom:1px solid #bfbfbf;text-transform:uppercase;font-size:12px;line-height:1;letter-spacing:0.0625em;font-family:"Favorit-Mono",sans-serif;margin-bottom:10px;transition-duration:200ms;transition-property:all}.all-related-sections a[href$="/topic/"],.all-related-sections a[href$="/type/"],.all-related-sections a[href*="/topic/"]:not([href$="/topic/"]) ~ [href*="/topic/"]{display:none}.all-related-sections a[href*="/type/"]{color:#404040;order:1}.all-related-sections a[href*="/type/"]:hover{background-color:#d9d9d9;border:1px solid #d9d9d9;box-shadow:0px -4px 0px #d9d9d9;color:#404040}.popular_widget .all-related-sections a[href*="/type/"]{color:#bfbfbf;order:1}.popular_widget .all-related-sections a[href*="/type/"]:hover{background-color:#d9d9d9;border:1px solid #d9d9d9;box-shadow:0px -4px 0px #d9d9d9;color:#bfbfbf}.all-related-sections a[href*="/topic/"]{order:2}.FillDark .all-related-sections a[href*="/type/"],.dark_layout .all-related-sections a[href*="/type/"],.trending_stories_carousel .all-related-sections a[href*="/type/"]{color:#bfbfbf}.FillDark .all-related-sections a[href*="/topic/"],.FillDark .all-related-sections a[href*="/type/"],.dark_layout .all-related-sections a[href*="/topic/"],.dark_layout .all-related-sections a[href*="/type/"],.trending_stories_carousel .all-related-sections a[href*="/topic/"],.trending_stories_carousel .all-related-sections a[href*="/type/"]{border-left:1px solid #404040;border-bottom:1px solid #404040}.FillDark .time-to-read,.FillDark .like-btn.like,.FillDark .like-btn.unlike,.trending_stories_carousel .like-btn.like,.trending_stories_carousel .like-btn.unlike{border-left:1px solid #404040}.FillDark .all-related-sections a[href*="/type/"]:hover,.dark_layout .all-related-sections a[href*="/type/"]:hover,.trending_stories_carousel .all-related-sections a[href*="/type/"]:hover{background-color:#404040;border:1px solid #404040;box-shadow:0px -4px 0px #404040}.all-related-sections a[href*="/topic/"]:hover{border:1px solid #ff4c00;background-color:#ff4c00;box-shadow:0px -4px 0px #ff4c00;color:white}.all-related-sections a[href*="/topic/the-institute"]{color:#005690}.all-related-sections a[href*="/topic/the-institute"]:hover{border:1px solid #005690;background-color:#005690;color:white!important;box-shadow:0 -4px 0 #005690}.widget.tag-type-ti .widget__headline:hover .widget__headline-text,.widget.tag-type-ti .widget__headline:hover + .widget__subheadline .widget__subheadline-text{text-decoration-color:#005690}@media (min-width:1024px){.all-related-sections a[href*="/topic/"],.all-related-sections a[href*="/type/"]{margin-bottom:10px}}.fullwidth_post .widget__subheadline-text:before,.featured_post .widget__subheadline-text:before,.article_post .widget__subheadline-text:before,.story_teaser .widget__subheadline-text:before{content:"";display:inline-block;vertical-align:middle;background-repeat:no-repeat;background-position:center;background-size:100% auto;margin-left:4px;margin-right:5px;height:1em;width:8px;width:0.25em;margin-top:-0.1em}.fullwidth_post{margin-bottom:0}.fullwidth_post .widget .row{margin:0}.fullwidth_post .widget .row .col{padding:0;margin-bottom:10px}.fullwidth_post .widget__body{max-width:50%;position:absolute;bottom:0;padding:32px;margin:32px 32px 20px 32px;height:fit-content;z-index:1}.fullwidth_post.TopLeft .widget__body{top:0;left:0}.fullwidth_post.TopRight .widget__body{top:0;right:0}.fullwidth_post.BottomLeft .widget__body{bottom:0;left:0}.fullwidth_post.BottomRight .widget__body{bottom:0;right:0}.fullwidth_post .widget__head .widget__body{max-width:100%;margin:0;height:auto;background:transparent!important;border:0!important}.fullwidth_post .widget__body{border:1px solid rgba(242,242,242,0.4)}.fullwidth_post .widget:after{content:"";position:absolute;top:25%;left:0;right:0;bottom:0;background:linear-gradient(180deg,rgba(13,13,13,0) 0%,#0d0d0d 100%)}.fullwidth_post .social-date,.fullwidth_post .time-to-read,.fullwidth_post .widget .widget__subheadline{color:#bfbfbf}.fullwidth_post:not(.FillDark,.FillLight) .all-related-sections a[href*="/type/"],.fullwidth_post:not(.FillDark,.FillLight) .all-related-sections a[href*="/topic/"]{color:#bfbfbf;border:solid rgba(191,191,191,0.4);border-width:0 0 1px 1px}.fullwidth_post:not(.FillDark,.FillLight) .all-related-sections a[href*="/type/"]:hover,.fullwidth_post:not(.FillDark,.FillLight) .all-related-sections a[href*="/topic/"]:hover{border-color:#f2f2f2;background:transparent;box-shadow:none}.fullwidth_post .widget .widget__headline{color:#f2f2f2}.fullwidth_post:not(.FillDark,.FillLight) .widget__headline:hover .widget__headline-text,.fullwidth_post:not(.FillDark,.FillLight) .widget__headline:hover + .widget__subheadline .widget__subheadline-text{text-decoration-color:#f2f2f2}.fullwidth_post.TextDarkFillTransparent{border-color:#bfbfbf}.fullwidth_post.TextDarkFillTransparent .social-date,.fullwidth_post.TextDarkFillTransparent .time-to-read,.fullwidth_post.TextDarkFillTransparent .all-related-sections a[href*="/type/"],.fullwidth_post.TextDarkFillTransparent .all-related-sections a[href*="/topic/"]{color:#404040}.fullwidth_post.TextDarkFillTransparent .widget .widget__headline,.fullwidth_post.TextDarkFillTransparent .widget:hover .widget__headline{color:#0d0d0d}.fullwidth_post.TextDarkFillTransparent .widget__subheadline{color:#595959}.fullwidth_post.TextDarkFillTransparent .all-related-sections a[href*="/type/"],.fullwidth_post.TextDarkFillTransparent .all-related-sections a[href*="/topic/"]{border-left:1px solid rgba(64,64,64,0.4);border-bottom:1px solid rgba(64,64,64,0.4)}.fullwidth_post.FillDark .widget__body{background:#1a1a1a;border:0}.fullwidth_post.FillDark .widget:after{background:none}.fullwidth_post.FillDark .social-date,.fullwidth_post.FillDark .time-to-read,.fullwidth_post.FillDark .all-related-sections a[href*="/type/"]{color:#a6a6a6}.fullwidth_post.FillDark .widget .widget__headline,.fullwidth_post.FillDark .widget:hover .widget__headline{color:#f2f2f2}.fullwidth_post.FillDark .widget .widget__subheadline{color:#8c8c8c}.fullwidth_post.FillLight .widget__body{background:#ecece9;border:0}.fullwidth_post.FillLight .widget:after{background:none}.fullwidth_post.FillLight .social-date,.fullwidth_post.FillLight .time-to-read,.fullwidth_post.FillLight .all-related-sections a[href*="/type/"]{color:#404040}.fullwidth_post.FillLight .widget .widget__headline,.fullwidth_post.FillLight .widget:hover .widget__headline{color:#0d0d0d}.fullwidth_post.FillLight .widget__subheadline{color:#595959}.fullwidth_post.Transparent .widget:after{background:none}.fullwidth_post.DarkBottom .widget:after{background:linear-gradient(180deg,rgba(13,13,13,0) 0%,#0d0d0d 100%)}.fullwidth_post.DarkTop .widget:after{background:linear-gradient(0deg,rgba(13,13,13,0) 0%,#0d0d0d 100%);top:0;bottom:25%}.fullwidth_post.DarkLeft .widget:after{background:linear-gradient(270deg,rgba(13,13,13,0) 0%,#0d0d0d 100%);top:0;right:25%}.fullwidth_post.DarkRight .widget:after{background:linear-gradient(90deg,rgba(13,13,13,0) 0%,#0d0d0d 100%);top:0;left:25%;right:0}.fullwidth_post.LightBottom .widget:after{background:linear-gradient(180deg,rgba(236,236,233,0) 0%,#ecece9 100%)}.fullwidth_post.LightTop .widget:after{background:linear-gradient(0deg,rgba(236,236,233,0) 0%,#ecece9 100%);top:0;bottom:25%}.fullwidth_post.LightLeft .widget:after{background:linear-gradient(270deg,rgba(236,236,233,0) 0%,#ecece9 100%);top:0;right:25%}.fullwidth_post.LightRight .widget:after{background:linear-gradient(90deg,rgba(236,236,233,0) 0%,#ecece9 100%);top:0;left:25%;right:0}@media (max-width:1023px){.fullwidth_post.mb-2:not(.Transparent,.FillLight,.FillDark) .widget:after{background:linear-gradient(180deg,rgba(13,13,13,0) 0%,#0d0d0d 100%);top:20%;bottom:0;left:0;right:0}.fullwidth_post.LightBottom .widget:after,.fullwidth_post.LightTop .widget:after,.fullwidth_post.LightLeft .widget:after,.fullwidth_post.LightRight .widget:after{background:linear-gradient(180deg,rgba(236,236,233,0) 0%,#ecece9 100%)}.fullwidth_post.mb-2:not(.Transparent,.FillLight,.FillDark){padding-bottom:20%;background:#0d0d0d}.fullwidth_post.LightBottom,.fullwidth_post.LightTop,.fullwidth_post.LightLeft,.fullwidth_post.LightRight{background:#ecece9}.fullwidth_post .widget__body{max-width:100%}.fullwidth_post .widget .widget__body{padding:16px;margin:16px;top:auto;left:0;right:0;bottom:0}.fullwidth_post:not(.Transparent,.FillLight,.FillDark) .widget .widget__body{bottom:-20vw}}.fullwidth_post .widget__subheadline:before{content:""}.article_post .widget__headline-text,.article_post .widget__subheadline-text{font-size:24px;letter-spacing:-0.010416666666666666em;line-height:24px}.fullwidth_post .widget__headline,.featured_post .widget__headline-text,.article_post .widget__headline-text{font-family:Ivar-Headline-Bold,serif}.fullwidth_post .widget__subheadline-text,.featured_post .widget__subheadline-text,.article_post .widget__subheadline-text{font-family:Ivar-Headline,serif}.fullwidth_post .widget__headline,.fullwidth_post .widget__subheadline-text,.featured_post .widget__headline-text,.featured_post .widget__subheadline-text{font-size:32px;letter-spacing:-0.2px;line-height:32px}@media (min-width:768px){.article_post .widget__headline-text,.article_post .widget__subheadline-text{font-size:32px;letter-spacing:-0.0046875em;line-height:32px}.fullwidth_post .widget__headline,.fullwidth_post .widget__subheadline-text,.featured_post .widget__headline-text,.featured_post .widget__subheadline-text{font-size:42px;line-height:42px}}@media (min-width:1024px){.fullwidth_post .widget__headline,.fullwidth_post .widget__subheadline-text,.featured_post .widget__headline-text,.featured_post .widget__subheadline-text,.article_post .widget__headline-text,.article_post .widget__subheadline-text{font-size:48px;letter-spacing:-0.25px;line-height:48px}.dark_layout .article_post .widget__headline-text,.dark_layout .article_post .widget__subheadline-text{letter-spacing:-1.25px}.listicle-slideshow .rebellt-item-media-container>img.rm-shortcode,.rebellt-item-media-container .share-tab-img>img,.rebellt-item-media-container .product-image-container>img{width:auto}}.dark_layout .article_post .widget__headline-text{font-family:"Favorit-Pro",sans-serif}.dark_layout .article_post .widget__subheadline-text{font-family:"Favorit-Pro-Light",sans-serif}.featured_post .widget__headline,.fullwidth_post .widget__headline,.article_post .widget__headline,.story_teaser .widget__headline{display:contents}.featured_post .widget__headline:before,.article_post .widget__headline:before,.fullwidth_post .widget__headline:before,.story_teaser .widget__headline:before{content:"";display:block;margin:8px}.featured_post .widget__subheadline:after,.article_post .widget__subheadline:after,.fullwidth_post .widget__subheadline:after,.story_teaser .widget__subheadline:after{content:"";display:block;margin:5px}.individual_podcast .widget__subheadline:after{margin-bottom:16px}.fullwidth_post.BorderLight .widget:hover .widget__headline a,.fullwidth_post.FillDark .widget:hover .widget__headline a,.fullwidth_post.BorderLight .widget .widget__headline a,.fullwidth_post.FillDark .widget .widget__headline a{color:#f2f2f2}.fullwidth_post .widget__subheadline,.featured_post .widget__subheadline,.article_post .widget__subheadline,.story_teaser .widget__subheadline{color:#595959;display:contents}.fullwidth_post.BorderLight .widget__subheadline,.fullwidth_post.BorderLight .widget__subheadline:before{color:#bdbdbd}.story_teaser .widget__body,.story_teaser .widget__headline-text,.story_teaser .widget__subheadline-text{font-size:24px;letter-spacing:-0.15px;line-height:26px}.story_teaser .widget__headline-text{font-family:Ivar-Headline-Bold,serif}.story_teaser .widget__subheadline{font-family:Ivar-Headline,serif}@media (min-width:768px){.story_teaser .widget__body,.story_teaser .widget__headline-text,.story_teaser .widget__subheadline-text{font-size:32px;line-height:32px}}@media (min-width:1024px) and (max-width:1151px){.story_teaser .widget__body,.story_teaser .widget__headline-text,.story_teaser .widget__subheadline-text{font-size:42px;line-height:42px;letter-spacing:-0.2px}.section_column:not(.bigger-teaser-headline) .story_teaser .widget__body,.section_column:not(.bigger-teaser-headline) .story_teaser .widget__headline-text,.section_column:not(.bigger-teaser-headline) .story_teaser .widget__subheadline-text{font-size:28px;line-height:28px}}@media (min-width:1151px){.story_teaser .widget__body,.story_teaser .widget__headline-text,.story_teaser .widget__subheadline-text{font-size:42px;line-height:42px;letter-spacing:-0.2px}.section_column:not(.bigger-teaser-headline) .story_teaser .widget__body,.section_column:not(.bigger-teaser-headline) .story_teaser .widget__headline-text,.section_column:not(.bigger-teaser-headline) .story_teaser .widget__subheadline-text{font-size:36px;line-height:36px;letter-spacing:-0.004722222222222222em}}.fullwidth_post.BorderDark .widget:hover .widget__headline a,.fullwidth_post.FillLight .widget:hover .widget__headline a,.post-custom .widget:hover .widget__headline a,.featured_post .widget:hover .widget__headline a,.featured_post .widget__body:hover .widget__headline a,.article_post .widget:hover .widget__headline a,.article_post .widget__body:hover .widget__headline a,.story_teaser .widget:hover .widget__headline a,.story_teaser .widget__body:hover .widget__headline a{color:#0d0d0d}.dark_layout .article_post .widget:hover .widget__headline a,.dark_layout .article_post .widget__body:hover .widget__headline a{color:#e6e6e6}a[rel="orange_button"],.mktoForm.mktoHasWidth.mktoLayoutLeft .mktoButtonRow .mktoButtonWrap.mktoSkip .mktoButton{border-radius:4px;background-color:#ff4c00;color:#f2f2f2!important;padding:8px 12px;font-family:"Favorit-Mono",sans-serif;letter-spacing:0.0625em;text-transform:uppercase;font-size:12px}a[rel="orange_button"]:hover,.mktoButton:hover{color:white!important;background:#a32700;text-decoration:none}a[rel="gray_button"]{border-radius:4px;background-color:#404040;color:#f2f2f2;padding:8px 12px;font-family:"Favorit-Mono",sans-serif;letter-spacing:0.75px;text-transform:uppercase;font-size:12px}a[rel="gray_button"]:hover{background:#595959}.widget__show-more{text-align:center;padding-bottom:45px}.show-less,.show-more{color:#0d0d0d;font-family:"Favorit-Pro",sans-serif;font-size:16px;letter-spacing:-0.1px;transition-duration:300ms;transition-property:all}.show-less,.show-more:hover{color:#ff4c00}.show-less{display:none}.dark_layout .widget__headline{color:#e6e6e6}.dark_layout .widget__subheadline{color:#999999}.dark_layout .article_post .social-author:before,.dark_layout .article_post .social-author__name,.dark_layout .article_post .social-date__text{color:#a6a6a6}.dark_layout .posts-custom .social-date{color:#a6a6a6;padding-left:0;padding-right:8px}.dark_layout .posts-custom .social-author + .social-date,.dark_layout .posts-custom .custom-field-PodcastEpisode + .social-date,.dark_layout .posts-custom .custom-field-PodcastVideoTime + .social-date{padding-left:8px}.dark_layout .like-btn.like,.dark_layout .like-btn.unlike{border-left:1px solid #404040}.dark_layout .like-btn.like .heart:before{color:#bfbfbf}.dark_layout .story_teaser .widget:hover .widget__headline a,.dark_layout .story_teaser .widget__headline:hover a{color:inherit}.custom-field-PodcastEpisode,.custom-field-PodcastVideoTime{font-family:"Favorit-Mono",sans-serif;color:#a6a6a6;text-transform:uppercase;display:inline-block;font-size:12px;letter-spacing:0.75px;line-height:16px;padding-right:7px;margin:0;vertical-align:middle}.custom-field-PodcastVideoTime{padding:0 10px;border-left:1px solid #404040;border-right:1px solid #404040}.custom-field-PodcastEpisode:before{content:"Episode "}.section-podcast,.section-podcasts,.section-video,.section-chatbot,.section-fixing-the-future{background:#1a1a1a}.section-video .story_teaser .widget__headline-text,.section-podcast .story_teaser .widget__headline-text,.section-podcasts .story_teaser .widget__headline-text{font-family:"Favorit-Pro",sans-serif;font-weight:500}.section-video .story_teaser .widget__subheadline-text,.section-podcast .story_teaser .widget__subheadline-text,.section-podcasts .story_teaser .widget__subheadline-text{font-family:"Favorit-Pro-Light",sans-serif;font-weight:300}.section-podcast .story_teaser .tag-fixing-the-future .widget__head>a,.section-podcasts .story_teaser .tag-fixing-the-future .widget__head>a,.widget.tag-fixing-the-future .widget__head>a{border-radius:5px;background-position:center;background-repeat:no-repeat;background-size:cover;display:block}.section-podcast .story_teaser .tag-chatbot-podcast .widget__head>a,.section-podcasts .story_teaser .tag-chatbot-podcast .widget__head>a,.widget.tag-chatbot-podcast .widget__head>a{border-radius:5px;background-position:center;background-repeat:no-repeat;background-size:cover;display:block}.section-podcast .story_teaser .widget__head img,.section-podcasts .story_teaser .widget__head img,.widget.tag-type-podcast .widget__head img{visibility:hidden}@media (max-width:992px){.top_menu_links .list .list__item:not(:nth-child(1)){display:none}}@media (max-width:767px){.widget.tag-type-podcast .widget__head,.section-podcast .posts-custom .widget__head,.section-podcasts .posts-custom .widget__head{width:20%;float:right;padding:0 0 0 8px}.topbar .search-form,.topbar .main-menu-el{display:none}.menu-opened .menu-global{margin-top:100px}.section_column{margin-bottom:20px!important}.widget.tag-type-podcast{padding-bottom:46px!important}.featured_post .widget__subheadline:after,.article_post .widget__subheadline:after,.fullwidth_post .widget__subheadline:after,.story_teaser .widget__subheadline:after{margin:0px}.tag-type-podcast .widget__subheadline:after{margin:7px}.section-podcast .story_teaser .widget__headline-text,.section-podcasts .story_teaser .widget__headline-text,.section-podcast .story_teaser .widget__subheadline-text,.section-podcasts .story_teaser .widget__subheadline-text{letter-spacing:-0.03125em}.scroll_column .posts-custom .widget__headline{line-height:21px}.scroll_column .widget .widget__headline-text{font-size:18px;letter-spacing:-0.15px;line-height:21px}.section-podcast .story_teaser .widget .widget__image,.section-podcasts .story_teaser .widget .widget__image{border-radius:5px}.scroll_column .all-related-sections{display:none!important}.Top_hugeMenu .rebelbar__menu-toggle{padding:0}}@media (min-width:768px){.featured_columns .row .scroll_column{border-left:1px solid #bdbdbd}.section_column .story_teaser .widget{padding:16px 10px 16px 22px;margin:0}.section_column .story_teaser .all-related-sections{padding-top:8px}.page_headline_container .module-headline{padding:0px 0px 10px 32px}}@media (min-width:768px){#welcome_ad{min-width:640px;min-height:480px}.menu-opened .all-content-wrapper{-webkit-transform:translate(-320px,0);transform:translate(-320px,0);transform:translate3d(-320px,0,0)}.menu-global{right:0;-webkit-transform:translate(320px,0);transform:translate(320px,0);transform:translate3d(320px,0,0)}.search-form{padding:0 16px 0;margin:0}.user-menu-container{margin-right:16px}.featured_columns .story_teaser .widget .row .rm-col-center{padding:0 22px 0 10px}.footer .list a:last-child{padding-left:7.5px}.search-form__text-input{width:200px}}@media (min-width:1568px){.main,.rebelbar-wrapper,.dark_top_bar{max-width:1568px;margin:auto}.widget_column .sticky-target.legacy.sticky-active{max-width:392px}}.ftr-copy:first-letter {font-size:1.3em;margin:0 0 0 2px}.rebelbar-wrapper_static{padding:14px 16px 2px 16px;transition:all 300ms}.topbar-sticky.active .rebelbar-wrapper_static{position:fixed;width:100%;top:0;box-sizing:border-box;z-index:1}.topbar-sticky.active .js-hidden-panel.active + .rebelbar-wrapper_static{transform:translate3d(0,-100%,0)}.topbar__sticky-headline,.topbar__static-headline{display:none}.topbar__sticky-headline{max-width:calc(100% - 214px);box-sizing:border-box}.topbar__sticky-headline .text-element{width:100%;white-space:nowrap;text-overflow:ellipsis;box-sizing:border-box;overflow:hidden;height:100%}.topbar__sticky-headline--post{font-family:"Ivar-Headline-Bold",serif}@media (min-width:768px){.rebelbar-wrapper_static{padding:20px 32px 5px}.topbar-sticky.active .js-hidden-panel:not(.active) + .rebelbar-wrapper_static{padding-top:13px}.topbar-sticky.active .rebelbar-wrapper_static{max-width:1568px;margin:0 auto}.topbar-sticky.active .js-hidden-panel:not(.active) + .rebelbar-wrapper_static .topbar__sticky-headline + .topbar__static-headline{display:none}.topbar-sticky.active .js-hidden-panel:not(.active) + .rebelbar-wrapper_static .topbar__sticky-headline{display:inline-block;vertical-align:text-bottom;padding-left:16px}.topbar__static-headline{font:normal 12px/0.8 "Favorit-Mono",sans-serif;letter-spacing:0.0625em}.topbar__sticky-headline--post{letter-spacing:-0.010416666666666666em;font:bold 24px/24px "Ivar-Headline-Bold",serif;height:26px;position:relative;top:3px}_::-webkit-full-page-media,_:future,:root .topbar__sticky-headline--post{top:5px}.topbar__sticky-headline--section{font:normal 24px/1 "Favorit-Pro-Light",sans-serif;position:relative;top:4px;margin-left:8px}.topbar__sticky-headline--section:before{content:"";display:block;border-left:1px solid #d9d9d9;height:32px;transform:skewX(-15deg);position:absolute;top:-3px;left:6px}}@media (min-width:1024px){.search-form__text-input{width:282px}.topbar__sticky-headline--post{margin-left:8px}.topbar__sticky-headline--post:before{content:"";display:block;border-left:1px solid #d9d9d9;height:32px;transform:skewX(-15deg);position:absolute;top:-4px;left:6px}}@media (min-width:1366px){.topbar__static-headline{display:inline-block;vertical-align:text-bottom;padding-left:16px}}.hide-text.hide-text{font-size:0!important}[data-source-type="multi"] .freeze,[data-attr-source="filtered"] .freeze{display:none!important}@media (max-width:767px){.feature_post_full.current_post .posts-custom .social-author__name{display:inline-flex}}.intro-text:first-letter {color:inherit;padding-top:16px;padding-bottom:16px}.intro-text{padding-top:16px;padding-bottom:16px}.pull-quote em,.ieee-pullquote em,.ieee-pullquote-fullwidth em,.ieee-pullquote-left em{font-family:"Favorit-Pro"!important}.body-description .pull-quote a{text-decoration:unset}.body-description small.image-media.media-caption a{text-decoration:unset}.body-description .ieee-pullquote-fullwidth a{text-decoration:unset}.body-description small.image-media.media-photo-credit a{text-decoration:unset}.body-description h2 a,.body-description h3 a,.body-description h4 a{text-decoration:unset}.body-description h2 em,.body-description h3 em{font-family:"Favorit-Pro"}.body-description h4 em,.body-description h5 em{font-family:"Favorit-Mono"}p.shortcode-media.shortcode-media-youtube .rm-shortcode{margin-bottom:8px}p.shortcode-media.shortcode-media-youtube{line-height:18px}figure.xlrg{line-height:18px}.body-description strong em,.body-description em strong{font-family:IvarText}.pull-quote strong,.ieee-pullquote strong,.ieee-pullquote-fullwidth strong,.ieee-pullquote-left strong,.pull-quote b,.ieee-pullquote b,.ieee-pullquote-fullwidth b,.ieee-pullquote-left b{display:block;line-height:16px;font-family:"Favorit-Mono",sans-serif;color:#0d0d0d;font-size:12px;letter-spacing:0.75px;line-height:16px;font-weight:400;text-transform:uppercase;padding-top:16px}@media (min-width:1586px){.rebellt-item.parallax p{width:80%;margin:0 auto}}.ieee-sidebar-small .rblad-ieee_in_content,.ieee-sidebar-medium .rblad-ieee_in_content,.ieee-sidebar-large .rblad-ieee_in_content{display:none}a.shortcode-media-lightbox__toggle.shortcode-media-controls__button.material-icons{display:none}small.image-media.media-caption em{font-family:inherit}.widget__body .photo-credit a{color:unset}.read_also_posts .rm-col-right.col{padding:0 0 0 16px}u{text-underline-offset:1px;text-decoration-thickness:1px;text-underline-position:from-font;color:inherit}@media (max-width:767px){u{text-underline-offset:0px}}.widget__body>.body,.widget__body.clearfix.sm-mt-1 .js-scroll-trigger,.widget__body.clearfix.sm-mt-1 #utm_campaign{margin-top:0}.social-author{font-size:0;margin-top:15px}.posts-custom .social-author:before{margin-right:5px}.tags .tags__item.tags__item,.dark_layout .tags .tags__item.tags__item{margin:0 5px 12px 0}.tags{font-size:0}.tag-type-webinar .photo-credit,.tag-type-webinar .photo-caption,.tag-type-whitepaper .photo-credit,.tag-type-whitepaper .photo-caption{display:none}.ad-in-content [id^="google_ads_"]{padding-bottom:12px}.dark_layout .ad-in-content{border-top:1px solid #404040;border-bottom:1px solid #404040}.feature_post_full .row.px10,.feature_post_full.DarkGray .row.px10{margin-left:0;margin-right:0}.feature_post_full .row.px10>.col,.feature_post_full.DarkGray .row.px10>.col{padding-left:0;padding-right:0}.custom-field-pdf-version{border-top:1px solid #bdbdbd;font-size:0;padding:16px 20px 16px;margin:0px -13px 0}.custom-field-pdf-version:before{content:"PDF VERSION";font-family:"Favorit-Mono",sans-serif;text-transform:uppercase;font-size:12px;letter-spacing:0.75px;line-height:12px;display:block;padding-bottom:24px;color:#404040;text-align:left}.rm-shortcode[href*=".pdf"]:before,.rm-shortcode[href*="javascript"]:before,.pdf-button:before{content:"Download PDF \2193";font-size:initial;color:#f2f2f2;font:400 12px/32px "Favorit-Mono",sans-serif;letter-spacing:0.0625em;height:32px;border-radius:4px;background-color:#ff4c00;text-transform:uppercase;display:inline-flex;justify-content:center;padding:0 16px;line-height:34px}.rm-shortcode[href*=".pdf"],.rm-shortcode[href*="javascript"]{font-size:0;text-decoration:none}.feature_post_full .custom-field-pdf-version{border:0;float:right;margin:0 32px 0 0;padding:0}.feature_post_full .custom-field-pdf-version:before{content:none}.feature_post_full .custom-field-pdf-version .rm-shortcode[href*=".pdf"]:before,.feature_post_full .custom-field-pdf-version .rm-shortcode[href*="javascript"]:before{background-color:transparent;border:1px solid;border-color:white;color:white}.feature_post_full.LightGreen .custom-field-pdf-version .rm-shortcode[href*=".pdf"]:before,.feature_post_full.LightGreen .custom-field-pdf-version .rm-shortcode[href*="javascript"]:before,.feature_post_full.Yellow .custom-field-pdf-version .rm-shortcode[href*=".pdf"]:before,.feature_post_full.Yellow .custom-field-pdf-version .rm-shortcode[href*="javascript"]:before{border-color:#0d0d0d;color:#0d0d0d}@media (min-width:375px) and (max-width:1120px){.feature_post_full .social-date-modified + .time-to-read{display:inline-block;width:fit-content;border-left:0;margin-left:24px}}@media (min-width:375px) and (max-width:425px){.social-date-modified{border-left:1px solid #a6a6a6;padding-left:8px}.updated_post .posts-custom .time-to-read{border-left:0;padding-left:0}.feature_post_full .social-date-modified + .time-to-read{margin-left:16px}}@media (min-width:992px) and (max-width:1024px){.feature_post_full .social-date-modified{width:48%}}@media (min-width:768px) and (max-width:1023px){.custom-field-pdf-version{padding:0;margin:0;position:absolute;right:32px;top:2px;border:0}.custom-field-pdf-version:before{position:absolute;left:-100px;top:12px}.feature_post_full .custom-field-pdf-version{top:unset;margin:0;transform:translateY(32px)}.feature_post_full.Vertical .widget__body:first-child{position:relative}.infinite_scroll.article_post .custom-field-pdf-version{position:relative;text-align:right;margin-top:-47px}.infinite_scroll.article_post .custom-field-pdf-version:before{position:absolute;top:12px;right:159px;left:initial}}@media (max-width:767px){.feature_post_full .custom-field-pdf-version{top:unset;margin:0 16px 0 0;transform:translateY(66px)}.infinite_scroll.article_post .custom-field-pdf-version{border-top:0;padding:16px 28px 16px}}@media (min-width:1024px){.posts-custom .social-author{margin-bottom:-2px!important}.custom-field-pdf-version{margin:0 -10px 24px;border:0;padding:0 0 24px;border-bottom:1px solid #bdbdbd}.infinite_scroll.article_post .custom-field-pdf-version{position:sticky;top:199px;height:0;width:calc(100% - 80%);margin:0;padding-bottom:92px}.infinite_scroll .custom-field-pdf-version + .tags{top:292px}.infinite_scroll .custom-field-pdf-version + .tags + .body{margin-top:-246px}.infinite_scroll .custom-field-pdf-version + .tags:before{padding-top:24px}}.post-partial .widget__headline-text{pointer-events:none}.share-media-panel{display:none}.photo-caption p{margin:0}p.caption{color:#262626;font-family:"Favorit-Mono",sans-serif;font-size:14px;letter-spacing:0.1px}.shortcode-media-rebelmouse-image{line-height:0.6em!important}.media-caption,.posts-custom .media-caption,.photo-caption{color:#262626;font-family:"Favorit-Mono",sans-serif;font-size:14px;letter-spacing:0.1px;display:inline;line-height:18px;padding-right:5px}.media-photo-credit,.photo-credit{color:#737373;font-size:12px;font-family:"Favorit-Mono",sans-serif;text-transform:uppercase;letter-spacing:1px;margin-top:5px;line-height:18px}.photo-credit,.photo-caption p{display:inline}.feature_post_full .photo-credit{padding:8px 0}.feature_post_full .photo-caption{padding-right:0}@media screen and (min-width:768px){.feature_post_full .photo-caption{}}.sm-mt-1:not(:empty):before{margin-bottom:0px}.shortcode-media-rebelmouse-image img{width:100%}.posts-custom .body .image-media,.posts-custom .body .image-media p,.posts-custom .body .media-photo-credit p{display:inline}.rm-float-left img{padding-bottom:8px;margin-top:-16px}.rebellt-item p.caption{line-height:20px}.shortcode-media-rebelmouse-image img{display:block;margin-bottom:8px}.articles-count{margin:0}.body-description{color:#0d0d0d;font-family:"IvarText","Ivar-Headline",serif;font-size:24px;letter-spacing:0;line-height:36px;margin-bottom:44px}.rebellt-item em{font-family:"IvarText","Ivar-Headline",serif}.body-description>p:first-child strong{text-transform:uppercase;font-family:"Favorit-Pro"}.body-description a,.body-description a u{text-decoration:underline;text-underline-position:from-font;text-decoration-color:#ff4c00;color:inherit}.body-description .horizontal-rule{border-top:1px solid #bdbdbd}.body-description a:hover{color:#ff4c00}.widget.tag-type-ti .body-description a{text-decoration-color:#005690}.widget.tag-type-ti .body-description a:hover{color:#005690}.body-description em{font-family:"IvarTextItalic"}.body-description h2{font-family:"Favorit-Pro",sans-serif;font-size:32px;letter-spacing:-0.5px;line-height:36px;font-weight:400}.body-description h3,.body-description h1[data-role="headline"]{font-family:"Favorit-Pro",sans-serif;font-size:24px;letter-spacing:-0.25px;line-height:28px;font-weight:400}.body-description h4{font-family:"Favorit-Mono",sans-serif;font-size:18px;font-weight:bold;letter-spacing:1px;line-height:22px;text-transform:uppercase}.body-description h5{font-family:"Favorit-Mono",sans-serif;font-size:16px;letter-spacing:1px;line-height:20px;font-weight:bold;text-transform:uppercase}.rebellt-item{line-height:20px}.rebellt-item p,.rebellt-item blockquote{line-height:36px}.feature_post_full .rm-col-center{margin-bottom:0}.feature_post_full .posts-custom .social-author{margin:0;line-height:14px;vertical-align:middle}.posts-custom .social-author:before{content:"By ";font-family:"Favorit-Mono",sans-serif;color:#404040;text-transform:uppercase;font-size:12px;letter-spacing:0.75px;font-weight:normal;display:inline-block}.updated_post .social-date-modified:before{content:"Updated "}.updated_post .social-date:before{content:"Published "}.posts-custom .main-author__avatar,.posts-custom .social-author__avatar{display:none}.posts-custom .main-author__name,.posts-custom .social-author__name{font-family:"Favorit-Mono",sans-serif;color:#404040;text-transform:uppercase;padding-right:8px;font-size:12px;letter-spacing:0.75px;font-weight:normal;text-decoration:underline}.around-the-web{margin-top:32px}.around-the-web__headline,.from-your-site__headline{font-size:0;line-height:0;padding:16px 0}.from-your-site__headline,.around-the-web__headline{border-top:1px solid #bfbfbf}.around-the-web__headline:before,.from-your-site__headline:before{font-size:12px;font-weight:400;letter-spacing:0.75px;line-height:16px;color:#404040;font-family:"Favorit-Mono",sans-serif;text-transform:uppercase}.around-the-web__headline:before{content:"Around the web"}.from-your-site__headline:before{content:"More from Spectrum"}.from-your-site__item,.around-the-web__item{padding:16px 0 24px 0!important;border-bottom:1px solid #bfbfbf;line-height:normal;font-family:"Favorit-Pro",sans-serif}.from-your-site__item:last-child,.around-the-web__item:last-child{border-bottom:none}.from-your-site__item a,.around-the-web__item a{margin:0;text-decoration:none}.around-the-web__link:hover,.from-your-site__link:hover{color:#0d0d0d!important;text-decoration-color:#ff4c00}.from-your-site__link:after,.around-the-web__link:after{content:"";border-right:10px solid #ecece9;margin-left:-10px}.article-content__comments-wrapper{border-bottom:1px solid #bfbfbf}.article-content__comments-wrapper{position:relative}.comment-header{position:absolute;top:0;right:0;padding:13px 0 10px!important}.comment-sort{text-transform:uppercase;color:#404040;font-family:"Favorit-Mono",sans-serif;font-size:12px!important;letter-spacing:0.75px;line-height:16px}.comment--sort{text-transform:uppercase;color:#404040;font-family:"Favorit-Mono",sans-serif;font-size:12px;letter-spacing:0.75px;line-height:16px;background:transparent;border:none;vertical-align:baseline;margin:0 0 0 8px;padding:0;border:0;-webkit-appearance:none}.comment-headline:before{content:"Reader responses";text-transform:uppercase;color:#404040;font-family:"Favorit-Mono",sans-serif;font-size:12px;letter-spacing:0.75px;line-height:16px;visibility:visible}.comment-headline{visibility:hidden}.talk--load_more__replies,.comment--show--replies,.comment--hide--replies{background:#ecece8;border:1px solid #bfbfbf;text-transform:uppercase;padding:6px 8px 4px;font-family:"Favorit-Mono",sans-serif;letter-spacing:0.75px;line-height:16px}.talk--messages{font-family:"Favorit-Pro",sans-serif}.comment--item-avatar img{width:80px;height:80px}.comment--item-date{font-family:"Favorit-Mono",sans-serif;text-transform:uppercase}.comment-item--publish{font-family:"Favorit-Mono",sans-serif;letter-spacing:0.75px;line-height:16px;border:1px solid #bfbfbf;background:#ecece8;color:#404040;padding:3px 12px 0px}.comment-item--publish:hover,.comment--hide--replies:hover,.comment--show--replies:hover{background:#d9d9d9;color:inherit}.feature_wrapper .topbar{margin-bottom:0!important}.feature_post_full .widget__shares.share-panel{margin:0;float:right;padding:0 32px;border:0;display:inline-block;text-align:right}.feature_post_full .widget__shares a{color:white!important}.feature_post_full .widget__shares a i.fa-twitter{-webkit-mask-image:unset;-webkit-mask-box-image:none;background-color:transparent}.feature_post_full .widget__shares i.fa-twitter:before{content:"";background-size:contain;width:20px;height:20px;display:block;margin:0 auto;position:relative}.feature_post_full.DarkGray,.feature_post_full.Green,.feature_post_full.LightGreen,.feature_post_full.Yellow,.feature_post_full.Red,.feature_post_full.Purple,.feature_post_full.Pink,.feature_post_full.Blue,.feature_post_full.LightBlue,.feature_post_full.DarkBlue1,.feature_post_full.DarkBlue2,.feature_post_full.Green .time-to-read,.feature_post_full.Red .time-to-read,.feature_post_full.Blue .time-to-read,.feature_post_full.LightBlue .time-to-read,.feature_post_full.Pink .time-to-read,.feature_post_full.Purple .time-to-read,.feature_post_full.DarkBlue1 .time-to-read,.feature_post_full.DarkBlue2 .time-to-read{color:#ffffff}.feature_post_full .widget:hover .widget__headline a{color:inherit;text-decoration:none}.feature_post_full .all-related-sections{padding:0 32px}.feature_post_full .widget__headline{font-family:"Favorit-Pro-Light",sans-serif;color:white;font-size:92px;font-weight:300;letter-spacing:-3px;line-height:84px;text-transform:uppercase;padding:0 32px}.feature_post_full .widget__subheadline{font-family:"Favorit-Pro-Light",sans-serif;font-size:24px;font-weight:300;letter-spacing:-0.25px;line-height:28px;padding:0 32px 248px;border-bottom:1px solid #4096c8;margin-bottom:14px}.feature_post_full .widget .widget__body:first-child{padding:24px 0px 30px 0px;margin-bottom:0}.feature_post_full .all-related-sections a[href*="/topic/"],.feature_post_full .all-related-sections a[href*="/type/"]{color:white}.feature_post_full .widget .widget__head{margin-bottom:0}.feature_post_full .widget .widget__body:last-child{background:#ecece8;border-bottom:1px solid #bdbdbd;padding-top:8px;padding-left:16px;padding-right:16px;line-height:18px}.feature_post_full .social-author{padding-left:32px}.feature_post_full .social-author:before,.feature_post_full .social-author__name,.feature_post_full .social-date{color:white}.feature_post_full .social-date{padding-left:8px}.feature_post_full .like-btn.like,.feature_post_full .like-btn.unlike{border-left-color:#4096c8}.feature_post_full .widget .widget__body:first-child,.feature_post_full.DarkGray .widget .widget__body:first-child{background:#1a1a1a}.feature_post_full.DarkGray .all-related-sections a[href*="/topic/"],.feature_post_full.DarkGray .all-related-sections a[href*="/type/"]{border-left-color:#404040;border-bottom-color:#404040;color:#bfbfbf}.feature_post_full .widget__subheadline,.feature_post_full.DarkGray .widget__subheadline{color:#bfbfbf;border-bottom:1px solid #404040}.feature_post_full.DarkGray .social-author:before,.feature_post_full.DarkGray .social-author__name,.feature_post_full.DarkGray .social-date,.feature_post_full.DarkGray .social-date-modified{color:#a6a6a6}.feature_post_full.DarkGray .like-btn.like,.feature_post_full.DarkGray .like-btn.unlike{border-left-color:#404040}.feature_post_full.DarkGray .social-date,.feature_post_full.DarkGray .social-date-modified{padding-left:16px}.feature_post_full.DarkGray .time-to-read{border-left:1px solid #404040;color:#a6a6a6}.feature_post_full.Green .widget .widget__body:first-child{background:#007d6a}.feature_post_full.Green .widget__subheadline{border-bottom:1px solid #27c3ae;color:#d2f9f3}.feature_post_full.Green .all-related-sections a[href*="/topic/"],.feature_post_full.Green .all-related-sections a[href*="/type/"]{border-left-color:#27c3ae;border-bottom-color:#27c3ae}.feature_post_full.LightGreen .widget .widget__body:first-child{background:#27c3ae;color:#0d0d0d}.feature_post_full.LightGreen .widget__headline,.feature_post_full.LightGreen .social-author:before,.feature_post_full.LightGreen .social-author__name,.feature_post_full.LightGreen .social-date,.feature_post_full.LightGreen .social-date-modified,.feature_post_full.LightGreen .time-to-read{color:#0d0d0d}.feature_post_full.LightGreen .widget__subheadline{border-bottom:1px solid #007d6a;color:#004238}.feature_post_full.LightGreen .all-related-sections a[href*="/topic/"],.feature_post_full.LightGreen .all-related-sections a[href*="/type/"]{border-left-color:#007d6a;border-bottom-color:#007d6a;color:#0d0d0d}.feature_post_full.LightGreen .like-btn.like,.feature_post_full.LightGreen .like-btn.unlike,.feature_post_full.LightGreen .time-to-read,.feature_post_full.LightGreen .social-date,.feature_post_full.LightGreen .social-date-modified{border-left-color:#007d6a}.feature_post_full.LightGreen .widget__shares a{color:#0d0d0d!important}.feature_post_full.Yellow .widget .widget__body:first-child{background:#ffbc00}.feature_post_full.Yellow .widget__headline,.feature_post_full.Yellow .social-author:before,.feature_post_full.Yellow .social-author__name,.feature_post_full.Yellow .social-date__text,.feature_post_full.Yellow .time-to-read,.feature_post_full.Yellow .social-date,.feature_post_full.Yellow .social-date-modified{color:#0d0d0d}.feature_post_full.Yellow .widget__subheadline{border-bottom:1px solid #c38500;color:#704d00}.feature_post_full.Yellow .all-related-sections a[href*="/topic/"],.feature_post_full.Yellow .all-related-sections a[href*="/type/"]{border-left-color:#704d00;border-bottom-color:#704d00;color:#0d0d0d}.feature_post_full.Yellow .widget__shares a{color:#0d0d0d!important}.feature_post_full.Red .widget .widget__body:first-child{background:#a32700}.feature_post_full.Red .widget__subheadline{border-bottom:1px solid #ffaa88;color:#ffded1}.feature_post_full.Red .all-related-sections a[href*="/topic/"],.feature_post_full.Red .all-related-sections a[href*="/type/"]{border-left-color:#ffaa88;border-bottom-color:#ffaa88}.feature_post_full.Red .social-date{border-left:1px solid #ffaa88}.feature_post_full.Red .social-date-modified,.feature_post_full.Red .time-to-read,.feature_post_full.Red .like-btn.like,.feature_post_full.Red .like-btn.unlike{border-left-color:#ffaa88}.feature_post_full.Purple .widget .widget__body:first-child{background:#362ba6}.feature_post_full.Purple .widget__subheadline{border-bottom:1px solid #8d8cd6;color:#d8d6ff}.feature_post_full.Purple .all-related-sections a[href*="/topic/"],.feature_post_full.Purple .all-related-sections a[href*="/type/"]{border-left-color:#8d8cd6;border-bottom-color:#8d8cd6}.feature_post_full.Pink .widget .widget__body:first-child{background:#ca3674}.feature_post_full.Pink .widget__subheadline{border-bottom:1px solid #fa5f9f;color:#ffcce1}.feature_post_full.Pink .all-related-sections a[href*="/topic/"],.feature_post_full.Pink .all-related-sections a[href*="/type/"]{border-left-color:#fa5f9f;border-bottom-color:#fa5f9f}.feature_post_full.Blue .widget .widget__body:first-child{background:#005690}.feature_post_full.Blue .all-related-sections a[href*="/topic/"],.feature_post_full.Blue .all-related-sections a[href*="/type/"]{border-left-color:#4096c8;border-bottom-color:#4096c8}.feature_post_full.Blue .widget__subheadline{color:#d0ebfb;border-bottom:1px solid #4096c8}.feature_post_full.Vertical .social-date{border-left:0}.feature_post_full.LightBlue .widget .widget__body:first-child{background:#4096c8}.feature_post_full.LightBlue .widget__subheadline{color:#d0ebfb;border-bottom:1px solid #bfbfbf}.feature_post_full.DarkBlue1 .widget .widget__body:first-child{background:#101341}.feature_post_full.DarkBlue2 .widget .widget__body:first-child{background:#313662}.feature_post_full.DarkBlue1 .widget__subheadline,.feature_post_full.DarkBlue2 .widget__subheadline{border-bottom:1px solid #898ba5;color:#dcdde4}.feature_post_full.DarkBlue1 .all-related-sections a[href*="/topic/"],.feature_post_full.DarkBlue1 .all-related-sections a[href*="/type/"],.feature_post_full.DarkBlue2 .all-related-sections a[href*="/topic/"],.feature_post_full.DarkBlue2 .all-related-sections a[href*="/type/"]{border-left-color:#898ba5;border-bottom-color:#898ba5}.feature_post_full.DarkBlue1 .social-date,.feature_post_full.DarkBlue2 .social-date{border-left:1px solid #898ba5}.feature_post_full .all-related-sections a[href*="/type/"]:hover{background:#595959;border:1px solid #595959;box-shadow:0px -4px 0px #595959;color:#bfbfbf}.feature_post_full .all-related-sections a[href*="/topic/"]:hover{border:1px solid #ff4c00;background-color:#ff4c00;color:white}.dark_layout .body-description em{font-family:inherit!important}.dark_layout .photo-caption,.dark_layout .photo-credit{font-family:"Favorit-Mono",sans-serif;font-size:14px;letter-spacing:0.1px;display:inline-block;padding-right:10px}.dark_layout .media-caption,.dark_layout .posts-custom .media-caption,.dark_layout .photo-caption{color:#bfbfbf}.dark_layout .media-photo-credit,.dark_layout .photo-credit{color:#737373}.dark_layout .photo-credit a{text-decoration:underline;color:inherit}.dark_layout .show-less,.dark_layout .show-more{color:#f2f2f2}.dark_layout .show-less:hover,.dark_layout .show-more:hover{color:#ff4c00}.dark_layout .body-description{color:#f2f2f2;font-family:"FavoritPro-Regular",sans-serif;font-size:24px;font-weight:300;letter-spacing:-0.25px;line-height:36px;margin-bottom:40px}.tags:before{content:"tags"}.widget__shares.share-panel:before,.tags:before,.dark_layout .widget__shares.share-panel:before,.dark_layout .tags:before{font-family:"Favorit-Mono",sans-serif;text-transform:uppercase;font-size:12px;letter-spacing:0.75px;line-height:12px;display:block;padding-bottom:24px;color:#404040;text-align:left}.dark_layout .time-to-read,.dark_layout .widget__shares.share-panel:before,.dark_layout .tags:before{color:#a6a6a6}.tags .tags__item,.dark_layout .tags .tags__item{border:1px solid transparent;display:inline-block;margin:0px;text-transform:uppercase;font-size:12px;font-family:"Favorit-Mono",sans-serif;white-space:nowrap;letter-spacing:0.0625em;line-height:1;padding:1px 8px 5px 8px}.tags .tags__item{border-left:1px solid #bfbfbf;border-bottom:1px solid #bfbfbf;color:#404040}.dark_layout .tags .tags__item{border-left:1px solid #404040;border-bottom:1px solid #404040;color:#bfbfbf}.tags__item[href$="/type-upcoming"],.tags__item[href$="/type-podcast"],.tags__item[href$="/type-video"],.tags__item[href$="/type-cover"],.tags__item[href$="/type-whitepaper"],.tags__item[href$="/type-webinar"],.tags__item[href$="/type-sponsored"],.tags__item[href$="/type-feature"],.tags__item[href$="/type-ti"],.tags__item[href$="/type-slideshow"],.tags__item[href$="/type-departments"]{display:none!important}.tags__item:hover{background-color:#d9d9d9;border:1px solid #d9d9d9;box-shadow:0px -4px 0px #d9d9d9}.dark_layout .tags__item:hover{background-color:#404040;border:1px solid #404040;box-shadow:0px -4px 0px #404040}.posts-custom .widget__shares a{color:#ff4c00;background:transparent;font-size:25px}.posts-custom .widget__shares a i.fa-twitter{-webkit-mask-image:unset;-webkit-mask-box-image:none;background-color:transparent}.posts-custom .widget__shares i.fa-twitter:before{content:"";background-size:contain;width:20px;height:20px;display:block;margin:0 auto;position:relative}.post-author-list{font-size:0;position:relative}.post-author{display:block;overflow:hidden}.post-author-list:before,.post-author + .post-author:before{font-family:"Favorit-Mono",sans-serif;text-transform:uppercase;font-size:12px;letter-spacing:0.0625em;line-height:12px;display:block;padding-bottom:16px;color:#404040}.post-author-list:before{content:"About the author"}.post-author:first-child + .post-author:before{content:"s";position:absolute;left:10.6em;top:0}.post-author__avatar{display:none}.post-author + .post-author{margin-top:16px;padding-top:16px;border-top:1px solid #bfbfbf}.post-author__name,.post-author__bio{color:#0d0d0d;font-size:18px;letter-spacing:-0.011111111111111112em;line-height:22px}.post-author__name{font-family:"Favorit-Pro",sans-serif;float:left;margin-right:5px}.post-author__bio{font-family:"Favorit-Pro-Light",sans-serif}.post-author__bio a:first-child{display:none}@media (max-width:767px){.current_post .tags{padding-bottom:36px}.featured_post .widget__headline-text,.featured_post .widget__subheadline-text,.article_post .widget__headline-text,.article_post .widget__subheadline-text,.fullwidth_post .widget__headline,.fullwidth_post .widget__subheadline-text{font-size:32px;letter-spacing:-0.15px;line-height:32px}.article_post .body{}.post-author{margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}.post-author-list:before{padding-bottom:24px}.post-partial.article__authors{padding-bottom:32px!important}.rebellt-item{line-height:16px}.rebellt-item p,.rebellt-item blockquote{line-height:28px}.comment-header{right:16px}.feature_post_full .body-description{padding:0}}.widget__shares a{font-size:20px!important;margin:0!important}.share-copy-link i svg{display:none}.share-copy-link i{content:" ";background-repeat:no-repeat;background-size:contain;background-position:center}.widget__shares a .fa-envelope:before{content:"";background-image:url("data:image/svg+xml,%3Csvg%20width='22px'%20height='16px'%20viewBox='0%200%2022%2016'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Ctitle%3EFF38D0EB-1E4A-449A-B5ED-D75AE92C6713%3C/title%3E%3Cg%20id='Podcast-pages'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3E%3Cg%20id='1376---Individual-podcast-episode'%20transform='translate(-71.000000,-513.000000)'%20stroke='%23FF4C00'%3E%3Cg%20id='Group-12'%20transform='translate(32.000000,509.000000)'%3E%3Cg%20id='Group-3'%20transform='translate(40.000000,5.000000)'%3E%3Crect%20id='Rectangle'%20x='0'%20y='0'%20width='20'%20height='14'%20rx='2'%3E%3C/rect%3E%3Cpath%20d='M0,2.15810473%20L8.76584115,9.03218556%20C9.49049293,9.60044989%2010.5095071,9.60044989%2011.2341588,9.03218556%20L20,2.15810473%20L20,2.15810473'%20id='Path-6'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;background-size:contain;padding:0 12px;vertical-align:middle}.widget.tag-type-ti .widget__shares a .fa-envelope:before{content:"";background-repeat:no-repeat;background-size:contain;padding:0 12px;vertical-align:middle}.widget.tag-type-ti .share-copy-link i{content:" ";background-repeat:no-repeat;background-size:contain;background-position:center}.widget.tag-type-ti .widget__shares a{color:#005690}table{display:block;overflow-x:auto;white-space:nowrap}table th,table td{border-collapse:collapse;padding:8px 16px;background:white;border:1px solid #d9d9d9;color:#0d0d0d;font-family:"Favorit-Mono",sans-serif;font-size:16px;letter-spacing:0;line-height:20px;text-align:left}table th{text-transform:uppercase;font-size:12px}.article__comments{margin-top:-20px}.listicle-slideshow .media-photo-credit i{font-style:normal!important}.listicle-slideshow{margin:32px 0}.listicle-slideshow .rebellt-item{display:flex;flex-direction:column}.listicle-slideshow h3,.listicle-slideshow h1{margin:0}.listicle-slideshow h3,.listicle-slideshow h1,.listicle-slideshow .rebellt-item-media-container{order:0}.listicle-slideshow [data-role="headline"]:empty{display:none}.listicle-slideshow .media-caption{order:1}.listicle-slideshow .media-photo-credit{order:2;font-size:12px}.listicle-slideshow__thumbnails{display:none}.listicle-slideshow__counter{font-family:"Favorit-Mono";font-size:14px;color:#262626;font-weight:bolder;text-shadow:0 0 #262626;display:flex;letter-spacing:0.1px}.listicle-slideshow__counter:before{content:"["}.listicle-slideshow__counter:after{content:"]"}.listicle-slideshow.listicle-slideshow .image-media.media-caption{text-indent:64px;margin-top:-18px}.listicle-slideshow-switch-page-btn i{visibility:hidden}.listicle-slideshow .listicle-slideshow-switch-page-btn{position:static;text-decoration:none;margin:0;line-height:20px;background-color:#404040;border-radius:50%;width:38px;height:38px;display:inline-flex;justify-content:center;align-items:center}.listicle-slideshow-switch-page-btn:before{content:"";height:21px;width:21px;display:inline-block;background-repeat:no-repeat;background-size:auto 100%}.rm-non-critical-loaded .listicle-slideshow-pager{display:block}a.listicle-slideshow-switch-page-btn.listicle-slideshow--prev{margin-right:10px}.listicle-slideshow-pager .listicle-slideshow--prev:before{background-position:0 center}.listicle-slideshow-pager .listicle-slideshow--next:before{background-position:100% center}.listicle-slideshow .image-media{display:block!important;margin-top:0;padding:0}.listicle-slideshow .image-media p{margin:0}.ieee-sidebar-small p,.ieee-sidebar-medium p,.ieee-sidebar-large p,.listicle-slideshow p{line-height:inherit!important}.listicle-slideshow .rebellt-item-media-container{}.listicle-slideshow-pager{opacity:1;float:right;margin:16px 0}.listicle-slideshow .rebellt-item-media-container{padding-bottom:16px}.listicle-slideshow h3:empty{display:none}.feature_post_full.Vertical .posts-custom .social-author{display:block;padding:0 16px}.feature_post_full.Vertical .posts-custom .social-date{padding-left:32px;border:0}@media (min-width:768px){.feature_post_full.Vertical .posts-custom .social-author{padding:0 32px}.feature_post_full.Vertical .posts-custom .social-date{padding-left:32px}.container_feature_below .read_also_posts .widget .row .col{margin-bottom:0}.container_feature_below>.article__authors{margin-top:-10px}.container_feature_below .read_also_posts .posts-wrapper:after{margin-bottom:0}.infinite_scroll .posts-custom .social-date,.posts-custom .post-partial .social-date,.social-date-modified{border-left:1px solid #a6a6a6;padding-left:8px}.posts-custom .social-author{display:inline-block;vertical-align:bottom}.dark_layout .social-author.clearfix{vertical-align:text-bottom}.widget__shares.share-panel{border-bottom:1px solid #bfbfbf}.dark_layout .widget__shares.share-panel{border-bottom:1px solid #404040;padding-bottom:11px}.body-description h2{font-size:36px;letter-spacing:-0.49px;line-height:40px}.body-description h3,.body-description h1[data-role="headline"]{font-size:28px;line-height:32px}.body-description h4{font-size:20px;letter-spacing:0.83px;line-height:28px}.body-description h5{font-size:18px;letter-spacing:0.9px;line-height:18px}}@media (min-width:769px){.dark_layout .tags{margin-left:0}.feature_post_full .widget .widget__body:last-child .body-description{margin:72px auto 64px;border:1px solid #bfbfbf;padding:45px 40px;padding:calc(45px - 1em) 40px;max-width:768px;box-sizing:border-box}.feature_post_full.Vertical .col{display:flex;flex-wrap:wrap;justify-content:center}.feature_post_full.Vertical .widget__body:first-child,.feature_post_full.Vertical .widget__head{width:50%}.feature_post_full.Vertical .widget__head .widget__image{height:100%;padding:inherit!important}.rebellt-item.col3:not(.show_columns_on_mobile){padding:4px}.rebellt-item.col2:not(.show_columns_on_mobile){padding:8px}.read_also_posts .widget .rm-col-center{padding-right:22px}.container_feature_below .tags{margin:16px 0 0}.tags .tags__item{max-width:calc(100% - 32px);overflow:hidden;text-overflow:ellipsis}.listicle-slideshow .rebellt-item-media-container{padding-top:0}.listicle-slideshow-pager{position:absolute;opacity:1;top:auto;right:0}.listicle-slideshow .image-media{max-width:85%}}.read_also_posts .widget:not(:last-child){border-bottom:1px solid #bdbdbd}.read_also_posts .social-date{padding-left:0;border-left:none}.social-author__bio{display:none}.current_post_content .rm-col-center{padding:0!important}@media screen and (max-width:1023px){.post-author__name,.post-author__bio{font-size:16px;letter-spacing:-0.00625em;line-height:20px}.listicle-slideshow{position:relative}.listicle-slideshow__thumbnails{}.listicle-slideshow__thumbnail{width:8px;height:8px;background:#bfbfbf;border-radius:50%;margin:0 2px}.listicle-slideshow__thumbnail.active{background:#404040}.listicle-slideshow__thumbnail .image{display:none}i.icons-share.em.fa.fa-envelope{margin-top:9px}.feature_post_full .photo-credit{padding:8px 0}.feature_post_full .widget__headline{font-size:36px;line-height:36px;font-weight:300;letter-spacing:-1px;padding:0 16px}.feature_post_full .widget__subheadline{padding:0 16px 64px;font-size:18px;font-weight:300;letter-spacing:-0.2px;line-height:20px}.feature_post_full .social-author{padding-left:16px}.feature_post_full .widget .widget__body:first-child{padding:24px 0 16px 0}.feature_post_full .widget__shares.share-panel{text-align:left;padding:0 16px;width:-webkit-fill-available;border-top:1px solid #404040;padding-top:16px;margin:16px 0 0;border-bottom:0}.feature_post_full.Blue .widget__shares.share-panel{border-top:1px solid #4096c8}.feature_post_full.LightBlue .widget__shares.share-panel{border-top:1px solid #bfbfbf}.feature_post_full.Red .widget__shares.share-panel{border-top:1px solid #fa8}.feature_post_full.Green .widget__shares.share-panel{border-top:1px solid #27c3ae}.feature_post_full.Pink .widget__shares.share-panel{border-top:1px solid #fa5f9f}.feature_post_full.Purple .widget__shares.share-panel{border-top:1px solid #8d8cd6}.feature_post_full.DarkBlue1 .widget__shares.share-panel,.feature_post_full.DarkBlue2 .widget__shares.share-panel{border-top:1px solid #898ba5}.tags .tags__item{line-height:2.3em}.body-description{font-size:18px;line-height:28px;padding:0 16px}.tags{border-top:1px solid #bfbfbf;padding:16px 16px 48px;margin:auto}.article-content__comments-wrapper{padding:0 16px 32px}.feature_post_full .social-date{padding-left:16px}.feature_post_full .all-related-sections,.current_post_content .body-description{padding:0 16px}.media-photo-credit,.photo-credit{padding:0 6px;line-height:18px}.current_post_content .media-photo-credit,.photo-credit{padding:0}.read_also_posts .rm-col-left{padding:0 16px 0 0!important}.read_also_posts .widget .row{margin:0}.infinite_scroll .widget .widget__body:first-child{padding:16px 16px 0!important}.infinite_scroll .widget .widget__body:nth-child(3){display:grid}.infinite_scroll .widget .rm-col-center{padding:0px}.infinite_scroll .tags{margin:0;order:2}.infinite_scroll .photo-credit{padding:6px 16px}.dark_layout .body-description{color:#d9d9d9;margin:0;letter-spacing:0;line-height:24px;font-size:18px;padding-top:24px!important}.dark_layout .current_post .body-description p:first-child{margin-top:0}.dark_layout .tags{border-top:none;padding:0px}.feature_post_full .photo-caption:before{margin-top:-12px}.feature_post_full .tags{margin:0 -16px}table th,table td{font-size:14px;line-height:18px}.article_post-shares-and-tags .tags{display:none!important}.posts-custom .widget__shares{margin-top:0;padding-bottom:10px}}@media (min-width:769px) and (max-width:1023px){.listicle-slideshow__thumbnails{}}@media (min-width:768px) and (max-width:1023px){.widget__shares.share-panel{border-bottom:0;padding:0px}.body-description p:last-child{padding-bottom:28px}.article_post--body-and-tags{margin-bottom:0}.tag_column{margin-bottom:0}.current_post_media .widget{padding:24px 22px!important}.infinite_scroll .widget__head,.current_post_media .widget__head{margin-top:32px}.tags{margin:0;padding-bottom:40px}.current_post_content .tags{padding-bottom:36px}.container_feature_below .tags{margin:16px 0 0}.infinite_scroll .widget{padding:0px!important}.infinite_scroll .widget .widget__image{margin:0 32px}.infinite_scroll .posts-custom .widget__shares{padding:10px 27px;border-top:1px solid #bfbfbf;border-bottom:1px solid #bfbfbf;margin:0}.dark_layout .infinite_scroll .posts-custom .widget__shares{border-color:#404040}.read_also_posts:before{padding:16px 32px}.read_also_posts .widget .rm-col-center{padding:0 22px 0 0}.feature_post_full .widget__headline{font-size:68px;line-height:64px;letter-spacing:-0.04411764705882353em}.body-description{font-size:20px;line-height:32px;padding:0 32px}.feature_post_full .all-related-sections,.widget .body-description,.feature_post_full .widget__subheadline,.feature_post_full .widget__headline,.tags,.article-content__comments-wrapper{padding-left:32px;padding-right:32px}.feature_post_full .widget__shares.share-panel,.tag_column .widget__shares{padding-left:27px;padding-right:27px}.read_also_posts .widget,.post-partial.article__authors,.infinite_scroll .widget .widget__body:first-child{padding-left:32px!important;padding-right:32px!important}.feature_post_full .posts-custom .social-author{padding-left:32px!important;display:inline-block}.feature_post_full .social-date{padding-left:8px}.featured_columns .widget_column{display:none}.container_feature_below .feature .col{margin-bottom:0}.comment-header{right:32px}.current_post_content .read_also_posts{margin-top:-22px}.feature_post_full .body-description{padding-left:16px;padding-right:16px}.featured_post .widget__headline-text,.featured_post .widget__subheadline-text,.article_post .widget__headline-text,.article_post .widget__subheadline-text,.fullwidth_post .widget__headline,.fullwidth_post .widget__subheadline-text{font-size:36px;letter-spacing:-0.2px;line-height:36px}}@media (min-width:1376px){.listicle-slideshow .rebellt-item-media-container{}}@media (min-width:768px) and (max-width:1375px){.listicle-slideshow .rebellt-item-media-container{}}@media (min-width:1024px){.read_also_posts{}.listicle-slideshow-switch-page-btn:before{height:21px;width:21px}.listicle-slideshow .listicle-slideshow-switch-page-btn{width:38px;height:38px}.rebellt-item-media-container .share-tab-img>img{max-height:calc(100vh - 60px);width:auto!important;margin:0 auto}.feature_post_full .photo-caption:before{height:8px}.current_post_content .body-description>p:first-child{margin-top:0}.body-description h2{font-size:42px;letter-spacing:-0.5px;line-height:44px}.body-description h3,.body-description h1[data-role="headline"]{font-size:32px;letter-spacing:-0.5px;line-height:36px}.body-description h4{font-size:24px;letter-spacing:1px;line-height:28px}.body-description h5{font-size:20px;letter-spacing:1px;line-height:18px}.widget__shares.share-panel{margin-bottom:30px;margin-top:30px;padding-bottom:20px}.dark_layout .widget__shares.share-panel{margin:15px 0 30px 0;padding-bottom:14px}.article_post .widget__shares.share-panel:before{content:"share this story"}.dark_layout .article_post .widget__shares.share-panel:before{content:"share this episode"}.infinite_scroll .widget__shares.share-panel{width:calc(100% - 80%);position:sticky;top:80px;margin:35px 0 24px;z-index:1}.infinite_scroll .tags{width:calc(100% - 80%);position:sticky;height:0;top:199px;z-index:0;margin-left:0px}.infinite_scroll .body{margin:-150px 0 0 23.2%}.article_column{border-right:1px solid #bdbdbd}.article_post--body-and-tags .tags{display:none!important}.feature_post_full.current_post .widget .widget__body:last-child .body-description{border-bottom:0;padding-bottom:calc(64px - 1em);margin-bottom:0}.feature_post_full .widget .widget__body:last-child{border-bottom:0;padding-left:32px;padding-right:32px}.feature_post_full.Vertical .widget .widget__body:last-child{width:inherit;margin-bottom:0}.container_feature_below{margin:0 auto 64px;border:solid #bfbfbf;border-width:0 1px 1px;padding:0 56px 29px;max-width:768px;box-sizing:border-box}.container_feature_below .tags{padding-top:16px;border-top:1px solid #bdbdbd;margin-top:0}.body-description a,.body-description a u{text-underline-offset:1px;text-decoration-thickness:1px}}@media (min-width:1376px){.feature_post_full .widget .widget__body:last-child .body-description{padding-left:64px;padding-right:64px;margin-top:96px;max-width:992px}.feature_post_full:not(.current_post) .body-description{margin-bottom:96px}.container_feature_below{padding-left:64px;padding-right:64px;max-width:992px;margin-bottom:96px}}.feature_post_full .photo-caption{padding-right:0}.media-caption,.posts-custom .media-caption,.photo-caption{color:#262626;font-family:"Favorit-Mono",sans-serif;font-size:14px;letter-spacing:0.1px;display:inline;line-height:18px;padding-right:5px}.photo-credit,.photo-caption p{display:inline}.feature_post_full .photo-credit{padding:8px 0}.feature_post_full .photo-caption{padding-right:0}@media (max-width:767px){.feature_post_full .body-description{padding:0}.feature_post_full.Vertical .posts-custom .social-date{padding-left:16px;border:0}.article_post.infinite_scroll .photo-caption{padding:0 16px}.feature_post_full .social-date-modified{padding-left:16px}}@media (min-width:768px) and (max-width:1023px){.feature_post_full .body-description{padding-left:16px;padding-right:16px}.article_post.infinite_scroll .photo-caption{padding:0 16px}}@media (max-width:1023px){.feature_post_full .photo-caption:before{margin-top:-12px}.feature_post_full .tags{margin:0 -16px}}@media (min-width:1024px){.feature_post_full .photo-caption:before{height:8px}}.feature_post_full.DarkGray .like-btn.like,.feature_post_full.DarkGray .like-btn.unlike,.feature_post_full.DarkGray .time-to-read,.feature_post_full.DarkGray .social-date-modified,.feature_post_full.DarkGray .social-date{border-left:1px solid #404040}.feature_post_full.Yellow .like-btn.like,.feature_post_full.Yellow .like-btn.unlike,.feature_post_full.Yellow .time-to-read,.feature_post_full.Yellow .social-date-modified,.feature_post_full.Yellow .social-date{border-left:1px solid #c38500}.feature_post_full.DarkBlue1 .like-btn.like,.feature_post_full.DarkBlue1 .like-btn.unlike,.feature_post_full.DarkBlue1 .time-to-read,.feature_post_full.DarkBlue1 .social-date,.feature_post_full.DarkBlue1 .social-date-modified,.feature_post_full.DarkBlue2 .like-btn.like,.feature_post_full.DarkBlue2 .like-btn.unlike,.feature_post_full.DarkBlue2 .time-to-read,.feature_post_full.DarkBlue2 .social-date,.feature_post_full.DarkBlue2 .social-date-modified{border-left:1px solid #898ba5}.feature_post_full.Green .like-btn.like,.feature_post_full.Green .like-btn.unlike,.feature_post_full.Green .time-to-read,.feature_post_full.Green .social-date,.feature_post_full.Green .social-date-modified{border-left:1px solid #27c3ae}.feature_post_full.LightBlue .like-btn.like,.feature_post_full.LightBlue .like-btn.unlike,.feature_post_full.LightBlue .time-to-read,.feature_post_full.LightBlue .social-date,.feature_post_full.LightBlue .social-date-modified{border-left:1px solid #b0d7ed}.feature_post_full.Purple .social-date,.feature_post_full.Purple .time-to-read,.feature_post_full.Purple .like-btn.like,.feature_post_full.Purple .like-btn.unlike,.feature_post_full.Purple .social-date-modified{border-left:1px solid #8d8cd6}.feature_post_full.Pink .time-to-read,.feature_post_full.Pink .like-btn.like,.feature_post_full.Pink .like-btn.unlike,.feature_post_full.Pink .social-date,.feature_post_full.Pink .social-date-modified{border-left:1px solid #fa5f9f}.feature_post_full.Blue .time-to-read,.feature_post_full.Blue .like-btn.like,.feature_post_full.Blue .like-btn.unlike,.feature_post_full.Blue .social-date,.feature_post_full.Blue .social-date-modified{border-left-color:#4096c8}p.ieee-sidebar-medium{width:40%;clear:both;max-width:40%;margin-bottom:0;margin-top:0;display:block}@media (max-width:767px){p.ieee-sidebar-medium{width:auto;max-width:100%}}@media (min-width:769px){.rebellt-item .fl-scrolly-caption p{font-family:"Favorit-Pro";font-size:2.2rem;line-height:2.6rem}}.ieee-image-small .media-photo-credit p{line-height:inherit}.ieee-sidebar-left h4,.ieee-sidebar-fullwidth h4,.ieee-sidebar-left h5,.ieee-sidebar-fullwidth h5{margin-bottom:8px}.feature_post_full .ieee-sidebar-large ol li{padding:4px 6px;margin:0 0 0 16px;line-height:inherit!important}.has_voting .vote-down .vote-container:before{content:"No";display:block;font-family:"Favorit-Pro";font-size:16px;padding:16px 8px 4px 8px;color:#0d0d0d}.has_voting .vote-up .vote-container:before{content:"Yes";display:block;font-family:"Favorit-Pro";font-size:16px;padding:16px 8px 4px 8px;color:#0d0d0d}.has_voting .number-container{font-family:"Favorit-Mono";padding:8px}.has_voting .up_down_voting--wrp{margin:0 0 0 8px}.vote-down.disabled.voted .vote-container:before{content:"No";display:block;font-family:"Favorit-Pro";font-size:16px;padding:16px 8px 4px 8px;color:#ffffff}.vote-up.disabled.voted .vote-container:before{content:"Yes";display:block;font-family:"Favorit-Pro";font-size:16px;padding:16px 8px 4px 8px;color:#ffffff}.has_voting .votes{padding:4px 0 0 0}@media (max-width:767px){.ieee-sidebar-fullwidth-columns.col2:nth-of-type(1){margin-bottom:0}.ieee-sidebar-fullwidth-columns.col2:nth-of-type(2){margin-top:0}.ieee-sidebar-fullwidth-columns.col2:nth-of-type(1) ul{margin-bottom:0}.ieee-sidebar-fullwidth-columns.col2:nth-of-type(2) ul{margin-top:0}.rebellt-item{margin:0!important}.rebellt-item.is--mobile,.rebellt-item.is--tablet{margin-bottom:0}.pull-quote p,.ieee-pullquote p,.ieee-pullquote-fullwidth p,.ieee-pullquote-left p{margin-top:0!important;line-height:40px}.body-description .rebellt-item em{line-height:inherit}}.body-description .rebellt-item em{line-height:inherit}.ieee-sidebar-left p em,.ieee-sidebar-medium p em,.ieee-sidebar-small p em,.ieee-sidebar-fullwidth p em,.ieee-sidebar-large p em,.ieee-sidebar-fullwidth-columns p em,.ieee-sidebar-list-left p em,.ieee-factbox-left p em,.ieee-statbox-left p em,.ieee-number-list-left p em,.ieee-thumbnail-left p em{font-family:"Favorit-Pro"}.body-description .ieee-sidebar-medium em{font-family:unset}.ieee-thumbnail-left>div:first-of-type{float:left;width:100px;padding-right:12px}.ieee-thumbnail-left p:first-of-type{clear:both;padding-top:12px}.post__last-point,.ieee-end-mark{content:"";display:inline-block;width:0.6em;height:0.6em;margin:0 0 0 5px;background-color:#FF4C00}.rebellt-item ol,.rebellt-item ul{line-height:36px}.posts-custom .body .image-media.media-caption p{line-height:18px}pre{font-family:"Favorit-Mono",sans-serif;background:#ddd;padding:10px;border-radius:4px;font-size:12px;letter-spacing:0.75px;line-height:16px;color:#404040}.rebellt-item.ieee-image-small .image-media.media-caption p,.rebellt-item.ieee-image-medium .image-media.media-caption p,.rebellt-item.ieee-image-large .image-media.media-caption p{line-height:18px}.ieee-sidebar-left,.ieee-sidebar-right,.ieee-sidebar-medium,.ieee-sidebar-small,.ieee-sidebar-fullwidth,.ieee-sidebar-large,.ieee-sidebar-fullwidth-columns,.ieee-sidebar-list-left,.ieee-sidebar-list-right,.ieee-factbox-left,.ieee-factbox-right,.ieee-statbox-left,.ieee-statbox-right,.ieee-number-list-left{color:#0D0D0D;font-family:"Favorit-Pro",sans-serif;font-size:16px;letter-spacing:-0.1px;line-height:20px;background:white;padding:16px 16px 32px}.listicle-slideshow-headline{margin:16px 0!important}.ieee-sidebar-right .media-caption p,.ieee-sidebar-right .media-photo-credit p,.ieee-sidebar-left .media-caption p,.ieee-sidebar-left .media-photo-credit p,.ieee-sidebar-fullwidth .media-caption p{display:contents}.ieee-sidebar-right p,.ieee-sidebar-left p,.ieee-sidebar-fullwidth p,.ieee-sidebar-fullwidth-columns p,.ieee-sidebar-list-left p,.ieee-sidebar-list-right p,.ieee-number-list-left p,.ieee-factbox-left p,.ieee-factbox-right p,.ieee-statbox-left p,.ieee-statbox-right p{line-height:20px}.ieee-sidebar-fullwidth-columns p strong,.ieee-sidebar-left p strong,.ieee-sidebar-right p strong,.ieee-sidebar-list-left p strong,.ieee-sidebar-list-right p strong{display:inline-block;padding-top:16px}.ieee-statbox-left,.ieee-statbox-right{padding-bottom:24px}.ieee-sidebar-fullwidth h3,.ieee-sidebar-large h3,.ieee-sidebar-medium h3,.ieee-sidebar-small h3,.ieee-sidebar-fullwidth-columns h3,.ieee-number-list-left h3,.ieee-statbox-left h3,.ieee-statbox-right h3,.ieee-sidebar-left h3,.ieee-sidebar-right h3,.ieee-sidebar-list-left h3,.ieee-sidebar-list-right h3{font-family:"Favorit-Pro-Light",sans-serif;margin:0 0 24px;font-size:32px;font-weight:300;letter-spacing:-0.5px;line-height:36px}.ieee-sidebar-fullwidth-columns h3,.ieee-sidebar-fullwidth-columns p,.ieee-sidebar-left p{margin:8px 0 0}.ieee-factbox-left h3,.ieee-factbox-right h3{color:#0D0D0D;font-family:"Favorit-Mono",sans-serif;font-size:48px;font-weight:300;letter-spacing:-1.5px;line-height:48px;margin:8px 0 0 0}.ieee-factbox-left p,.ieee-factbox-right p{margin-top:14px}.ieee-statbox-left strong,.ieee-statbox-right strong{color:#404040;font-family:"Favorit-Mono",sans-serif;font-size:12px;letter-spacing:0.75px;text-transform:uppercase;font-weight:inherit}.ieee-statbox-left p,.ieee-statbox-right p{margin:8px 0}.ieee-statbox-left p:nth-child(2n + 3):not(:last-child),.ieee-statbox-right p:nth-child(2n + 3):not(:last-child){margin-bottom:24px}.ieee-sidebar-list-left p strong,.ieee-sidebar-list-right p strong{border-top:1px solid #d9d9d9;display:inherit;padding-top:8px}.ieee-sidebar-list-left p{margin:0;padding-top:8px}.ieee-sidebar-list-left h3{margin-bottom:20px}.ieee-sidebar-list-left p:nth-child(odd){margin-bottom:16px}.ieee-number-list-left h4{border-bottom:1px solid #d9d9d9;color:#8c8c8c;font-family:"Favorit-Mono",sans-serif;font-size:32px;font-weight:300;letter-spacing:0;line-height:36px;margin:0}.ieee-number-list-left{padding-bottom:24px}.ieee-number-list-left p{margin:8px 0}.ieee-number-list-left h4:not(:nth-child(2)){margin:24px 0 0 0}.pull-quote,.ieee-pullquote,.ieee-pullquote-fullwidth,.ieee-pullquote-left{color:#ff4c00;font-family:"Favorit-Pro",sans-serif;font-size:32px;font-weight:bold;letter-spacing:-1px;line-height:40px!important;margin-top:32px!important}.pull-quote p,.ieee-pullquote p,.ieee-pullquote-fullwidth p,.ieee-pullquote-left p{margin-top:0}.pull-quote:before,.ieee-pullquote:before,.ieee-pullquote-fullwidth:before,.ieee-pullquote-left:before{content:"";display:block;width:40px;height:25px;margin-left:-10px;margin-bottom:16px;background-repeat:no-repeat;background-size:100% auto;background-image:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMzVweCIgaGVpZ2h0PSIyNHB4IiB2aWV3Qm94PSIwIDAgMzUgMjQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8dGl0bGU+M0YzOTZFNkItMjAwRC00MzRFLTg3OEEtNDlBMkI5MkREMjA2PC90aXRsZT4KICAgIDxnIGlkPSJDb21wb25lbnRzIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0iOTkyLS0tUHVsbC1xdW90ZSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIzLjAwMDAwMCwgLTUxOC4wMDAwMDApIiBzdHJva2U9IiNGRjRDMDAiIHN0cm9rZS13aWR0aD0iNCI+CiAgICAgICAgICAgIDxnIGlkPSJHcm91cCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMjMuMDAwMDAwLCA1MTUuMDAwMDAwKSI+CiAgICAgICAgICAgICAgICA8ZyBpZD0iR3JvdXAtMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMC4wMDAwMDAsIDUuMDAwMDAwKSI+CiAgICAgICAgICAgICAgICAgICAgPHBvbHlsaW5lIGlkPSJIZWQvZGVrLXNlcGFyYXRvci1Db3B5LTIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDkuODk5NDk1LCA5Ljg5OTQ5NSkgcm90YXRlKDQ1LjAwMDAwMCkgdHJhbnNsYXRlKC05Ljg5OTQ5NSwgLTkuODk5NDk1KSAiIHBvaW50cz0iMi44OTk0OTQ5NCAyLjg5OTQ5NDk0IDE2Ljg5OTQ5NDkgMi44OTk0OTQ5NCAxNi44OTk0OTQ5IDE2Ljg5OTQ5NDkiPjwvcG9seWxpbmU+CiAgICAgICAgICAgICAgICAgICAgPHBvbHlsaW5lIGlkPSJIZWQvZGVrLXNlcGFyYXRvci1Db3B5LTMiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDIxLjg5OTQ5NSwgOS44OTk0OTUpIHJvdGF0ZSg0NS4wMDAwMDApIHRyYW5zbGF0ZSgtMjEuODk5NDk1LCAtOS44OTk0OTUpICIgcG9pbnRzPSIxNC44OTk0OTQ5IDIuODk5NDk0OTQgMjguODk5NDk0OSAyLjg5OTQ5NDk0IDI4Ljg5OTQ5NDkgMTYuODk5NDk0OSI+PC9wb2x5bGluZT4KICAgICAgICAgICAgICAgIDwvZz4KICAgICAgICAgICAgPC9nPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+")}.ieee-pullquote-left .caption,.ieee-pullquote-fullwidth .caption{line-height:16px;color:#737373;font-size:12px;letter-spacing:0.75px;line-height:16px;font-weight:400;text-transform:uppercase;width:66%}.ieee-pullquote-left .caption strong,.ieee-pullquote-fullwidth .caption strong{color:#0d0d0d;font-weight:inherit}.widget.tag-type-ti .pull-quote,.widget.tag-type-ti .ieee-pullquote,.widget.tag-type-ti .ieee-pullquote-fullwidth,.widget.tag-type-ti .ieee-pullquote-left{color:#005690}.widget.tag-type-ti .pull-quote:before,.widget.tag-type-ti .ieee-pullquote:before,.widget.tag-type-ti .ieee-pullquote-fullwidth:before,.widget.tag-type-ti .ieee-pullquote-left:before{background-image:url("data:image/svg+xml,%3Csvg%20width='62px'%20height='40px'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg%20id='Page-1'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3E%3Cg%20id='1568---Feature-article-pull-quote'%20transform='translate(-144.000000,-286.000000)'%20stroke='%23005690'%20stroke-width='5'%3E%3Cg%20id='Group'%20transform='translate(144.758053,243.000000)'%3E%3Cg%20id='Group-3'%20transform='translate(0.000000,44.977510)'%3E%3Cpolyline%20id='Hed/dek-separator'%20transform='translate(17.522490,17.522490)%20rotate(45.000000)%20translate(-17.522490,-17.522490)'%20points='5.24194695%205.0224901%2029.8030332%205.0224901%2029.8030332%2030.0224901'%3E%3C/polyline%3E%3Cpolyline%20id='Hed/dek-separator-Copy'%20transform='translate(39.567470,18.522490)%20rotate(45.000000)%20translate(-39.567470,-18.522490)'%20points='27.2869272%206.0224901%2051.8480135%206.0224901%2051.8480135%2031.0224901'%3E%3C/polyline%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}blockquote,.posts-custom blockquote{border-left:2px solid #D9D9D9;border-left-color:#D9D9D9;color:#0D0D0D;font-family:"IvarTextItalic",sans-serif;font-style:italic}.ieee-sidebar-right ol li,.ieee-sidebar-left ol li,.ieee-sidebar-fullwidth ol li,.ieee-sidebar-fullwidth-columns ol li,.ieee-sidebar-list-left ol li,.ieee-sidebar-list-right ol li,.ieee-number-list-left ol li,.ieee-factbox-left ol li,.ieee-factbox-right ol li,.ieee-statbox-left ol li,.ieee-statbox-right ol li,.ieee-sidebar-right ul li,.ieee-sidebar-left ul li,.ieee-sidebar-fullwidth ul li,.ieee-sidebar-fullwidth-columns ul li,.ieee-sidebar-list-left ul li,.ieee-sidebar-list-right ul li,.ieee-number-list-left ul li,.ieee-factbox-left ul li,.ieee-factbox-right ul li,.ieee-statbox-left ul li,.ieee-statbox-right ul li{line-height:20px;padding:8px 0}.ieee-sidebar-small .shortcode-media,.ieee-sidebar-medium .shortcode-media,.ieee-sidebar-large .shortcode-media,.ieee-sidebar-small p.shortcode-media-rebelmouse-image.rm-float-left,.ieee-sidebar-medium p.shortcode-media-rebelmouse-image.rm-float-left,.ieee-sidebar-large p.shortcode-media-rebelmouse-image.rm-float-left{width:100%}.ieee-sidebar-large{display:flow-root;margin-bottom:48px}figcaption{color:#262626;font-family:"Favorit-Mono",sans-serif;font-size:14px;letter-spacing:0.1px;display:inline!important;line-height:normal}.ee-ul{padding-left:0;margin:0}.ieee-sidebar-large .ee-ul li,.ieee-sidebar-medium .ee-ul li,.ieee-sidebar-small .ee-ul li{list-style:none;padding:8px 0}.ieee-sidebar-large .ee-ul li:not(:last-child),.ieee-sidebar-medium .ee-ul li:not(:last-child),.ieee-sidebar-small .ee-ul li:not(:last-child){border-bottom:1px solid #d9d9d9}ol,ul{padding-left:1em;margin:49px 0 47px}ul li{padding:12px 0}ol li{padding:12px 0 12px 5px}.article_post :not(.ieee-sidebar-large) ol,.article_post :not(.ieee-sidebar-large) ul,.feature_post_full :not(.ieee-sidebar-large) ol,.feature_post_full :not(.ieee-sidebar-large) ul{padding-left:2em;margin:16px 0 4px}.shortcode-media-brightcove,.shortcode-media-facebook,.shortcode-media-imgur,.shortcode-media-rebelmouse-image,.shortcode-media-rebelmouse-proxy-image,.shortcode-media-twitter_embed{display:inline-block}@media (min-width:769px){.ieee-sidebar-fullwidth-columns.rebellt-item.col2{padding:16px;display:table-cell!important}.shortcode-media-rebelmouse-image.rm-float-right,.shortcode-media-rebelmouse-image.rm-float-left{width:50%}.ieee-image-small{width:45%;float:left;margin-right:32px;margin-bottom:16px}.ieee-image-medium{width:70%}.ieee-statbox-left,.ieee-statbox-right,.ieee-sidebar-small{width:25%}.ieee-pullquote-left,.ieee-sidebar-left,.ieee-number-list-left,.ieee-statbox-left,.ieee-factbox-left,.ieee-sidebar-list-left,.ieee-sidebar-medium,.ieee-sidebar-small{float:left;margin-right:32px;margin-bottom:5px}.ieee-sidebar-right,.ieee-statbox-right,.ieee-factbox-right,.ieee-sidebar-list-right{float:left;margin-right:32px;margin-bottom:5px}.ieee-sidebar-fullwidth-columns.rebellt-item.col2{vertical-align:top;padding:16px 16px 40px}.ieee-sidebar-fullwidth-columns[data-basename*="particle"]{padding-top:60px!important}.feature_post_full.Red .social-date{border-left:1px solid #FFAA88}.feature_post_full.Blue .social-date{border-left:1px solid #4096c8}.feature_post_full.Pink .social-date{border-left:1px solid #FA5F9F}.feature_post_full.Purple .social-date{border-left:1px solid #8D8CD6}.feature_post_full.LightGreen .social-date{border-left-color:#007D6A}.feature_post_full.DarkBlue1 .social-date,.feature_post_full.DarkBlue2 .social-date{border-left:1px solid #898BA5}}@media (min-width:769px) and (max-width:1023px){.ieee-pullquote-left,.ieee-sidebar-medium,.ieee-sidebar-left,.ieee-sidebar-right,.ieee-number-list-left,.ieee-sidebar-list-left,.ieee-sidebar-list-right,.ieee-factbox-left,.ieee-factbox-right{width:30%}}@media (max-width:768px){.ieee-sidebar-right p{margin-top:24px}.article_post :not(.ieee-sidebar-large) ol,.article_post :not(.ieee-sidebar-large) ul,.article_post :not(.ieee-sidebar-medium) ol,.article_post :not(.ieee-sidebar-medium) ul,.article_post :not(.ieee-sidebar-small) ol,.article_post :not(.ieee-sidebar-small) ul,.article_post ul:not(around-the-web__list){margin:37px 0 35px}.ieee-sidebar-fullwidth-columns.col2{display:block!important}.ieee-sidebar-fullwidth-columns[data-basename*="particle"]{padding:1px 16px 32px!important}}@media (min-width:1024px){.article_post :not(.ieee-sidebar-large) ul li,.article_post :not(.ieee-sidebar-large) ol li,.feature_post_full :not(.ieee-sidebar-large) ul li,.feature_post_full :not(.ieee-sidebar-large) ol li{line-height:36px}blockquote,.posts-custom blockquote{padding:0 16px;margin:32px 0}.ieee-pullquote-left,.ieee-sidebar-medium,.ieee-sidebar-left,.ieee-sidebar-right,.ieee-number-list-left,.ieee-sidebar-list-left,.ieee-sidebar-list-right,.ieee-factbox-left,.ieee-factbox-right{width:40%}}@media (min-width:768px) and (max-width:1023px){blockquote,.posts-custom blockquote{padding:0 16px;margin:40px 0}.article_post :not(.ieee-sidebar-large) ul li,.article_post :not(.ieee-sidebar-large) ol li,.feature_post_full :not(.ieee-sidebar-large) ul li,.feature_post_full :not(.ieee-sidebar-large) ol li{padding:4px 0;line-height:28px}.article_post :not(.ieee-sidebar-large) ol,.article_post :not(.ieee-sidebar-large) ul,.article_post ul:not(around-the-web__list){margin:40px 0}}@media (max-width:767px){.feature_post_full .social-date.social-date{border-left:none}blockquote,.posts-custom blockquote{padding:0 16px;margin:32px 0}.article_post :not(.ieee-sidebar-large) ul li,.article_post :not(.ieee-sidebar-large) ol li,.feature_post_full :not(.ieee-sidebar-large) ul li,.feature_post_full :not(.ieee-sidebar-large) ol li{padding:4px 4px;line-height:28px}.article_post :not(.ieee-sidebar-large) ol,.article_post :not(.ieee-sidebar-large) ul,.article_post ul:not(around-the-web__list){margin:16px 0 4px}.ieee-sidebar-fullwidth-columns h3,.ieee-sidebar-left h3{margin:0 0 11px;font-size:24px;font-weight:300;letter-spacing:-0.25px;line-height:28px}.pull-quote p,.ieee-pullquote p,.ieee-pullquote-fullwidth p,.ieee-pullquote-left p,p.pull-quote{margin-bottom:16px}.ieee-pullquote-left .caption,.ieee-pullquote-fullwidth .caption{margin-bottom:32px}.shortcode-media{margin:32px 0 16px}.ieee-sidebar-medium,.ieee-sidebar-large,.pull-quote p,.ieee-pullquote p,.ieee-pullquote-fullwidth p,.ieee-pullquote-left p,p.pull-quote,.pull-quote,.ieee-pullquote,.ieee-pullquote-fullwidth,.ieee-pullquote-left,.rebellt-item{margin:32px 0}.ieee-sidebar-small .shortcode-media,.ieee-sidebar-medium .shortcode-media,.ieee-sidebar-large .shortcode-media,.ieee-sidebar-small .shortcode-media,.ieee-sidebar-medium .shortcode-media,.ieee-sidebar-large .shortcode-media{margin:16px 0}}@media (max-width:768px){.ieee-number-list-left h4{font-size:24px;letter-spacing:-0.25px;line-height:28px}}@media (max-width:768px){.ieee-sidebar-fullwidth-columns.col2{display:block!important;padding-bottom:0px!important}.ieee-sidebar-fullwidth-columns.col2 + .ieee-sidebar-fullwidth-columns.col2,.ieee-sidebar-fullwidth-columns[data-basename*="particle"]{padding:1px 16px 32px!important}}@media (min-width:768px){.article_post :not(.ieee-sidebar-large) ul li,.article_post :not(.ieee-sidebar-large) ol li,.feature_post_full :not(.ieee-sidebar-large) ul li,.feature_post_full :not(.ieee-sidebar-large) ol li{padding:4px 6px}}.article_post .ieee-sidebar-fullwidth ol{list-style-position:inside;padding:0;margin:0}.article_post .ieee-sidebar-fullwidth ol li{line-height:20px;padding:16px 0px}.around-the-web__list{padding:0!important;margin:0!important}@media (max-width:1023px){.ieee-sidebar-fullwidth h3,.ieee-sidebar-large h3,.ieee-sidebar-medium h3,.ieee-sidebar-small h3,.ieee-sidebar-fullwidth-columns h3,.ieee-number-list-left h3,.ieee-statbox-left h3,.ieee-statbox-right h3,.ieee-sidebar-left h3,.ieee-sidebar-right h3,.ieee-sidebar-list-left h3,.ieee-sidebar-list-right h3{font-size:24px;letter-spacing:-0.25px;line-height:28px}}:root{}.talk--messages,.talk-linked-comment{font-family:"Favorit-Pro",sans-serif}@media screen and (max-width:767px){.comment--item-text{overflow:inherit;background:transparent;padding:0;border-radius:5px;margin-bottom:0}.comment--item-avatar.comment--item-avatar img{margin-right:17px}.comment--item-message.comment--item-message{margin:32px 0 5px 0}.talk-linked-comment .comment--item,.talk--messages .comment--item{margin:0 -16px;position:relative;padding:16px 16px 0 16px}.comment--item-message.comment--item-message p{margin:40px 0 0}.talk--messages .comment--custom-field-member-badges{overflow:auto;margin-top:-1px}}.article__comments .comment-item--publish{background:#ff4c00;border:none;padding-top:1px;transition:all 0.3s}.article__comments .comment-item--publish:hover{background:#A32700}.article__comments .comment--item-date{font-size:0px;line-height:0}.article__comments .comment--item-date::after{content:attr(data-date);font-size:12px;display:block;line-height:1.2}.talk--load_more-wrp.has_load_more.loaded.rm-preact:not(:empty):after{content:"";background:linear-gradient(180deg,rgba(236,236,233,0) 0%,rgba(236,236,233,0.8) 20%,#ECECE9 100%);border:0;display:block;height:200px;margin-top:-263px;position:absolute;width:100%}.talks--load_more:after{content:"\2193";padding-left:8px;font-size:16px}.talks--load_more:before{content:"See all responses";font-size:16px}.talks--load_more.talks--load_more{font-size:0}.article-content__comments-wrapper .talk--messages .material-icons.status-rejected.selected{display:none!important}.talk--load_more-wrp.has_load_more.loaded.rm-preact:not(:empty):after{content:"";background:linear-gradient(180deg,rgba(236,236,233,0) 0%,rgba(236,236,233,0.8) 20%,#ECECE9 100%);border:0;display:block;height:200px;margin-top:-263px;position:absolute;width:100%}.talks--load_more:before{content:"See all responses";font-size:16px}.talks--load_more.talks--load_more{font-size:0}.comment--custom-field-member-badges,.comment--custom-field-grade{display:inline;font-family:"Favorit-Mono",sans-serif;font-size:12px;letter-spacing:0.75px;padding:2px 4px 0px;width:fit-content;white-space:nowrap;vertical-align:middle}.comment--item-toolbar{background:white!important}.comment--custom-field-grade{visibility:hidden}.comment--custom-field-grade:before{padding:2px 4px 0px;visibility:visible}.comment--custom-field-member-badges[data-value="IEEE GRADUATE STUDENT MEMBER"]{background:#D2F9F3;color:#004238}.comment--custom-field-grade[data-value="GSM"]:before{background:#D2F9F3;color:#004238;content:"IEEE GRADUATE STUDENT MEMBER"}.comment--custom-field-member-badges[data-value="IEEE STUDENT MEMBER"]{background:#D7F2C2;color:#114200}.comment--custom-field-grade[data-value="StM"]:before{background:#D7F2C2;color:#114200;content:"IEEE STUDENT MEMBER"}.comment--custom-field-member-badges[data-value="IEEE ASSOCIATE MEMBER"]{background:#D0EBFB;color:#002E4D}.comment--custom-field-grade[data-value="AM"]:before{background:#D0EBFB;color:#002E4D;content:"IEEE ASSOCIATE MEMBER"}.comment--custom-field-member-badges[data-value="IEEE MEMBER"]{background:#DCDDE4;color:#02032C}.comment--custom-field-grade[data-value="M"]:before,.comment--custom-field-grade[data-value="SA MBR"]:before{background:#DCDDE4;color:#02032C;content:"IEEE MEMBER"}.comment--custom-field-grade[data-value="LM"]:before{background:#DCDDE4;color:#02032C;content:"IEEE LIFE MEMBER"}.comment--custom-field-member-badges[data-value="IEEE SENIOR MEMBER"]{background:#D8D6FF;color:#160F57}.comment--custom-field-grade[data-value="SM"]:before{background:#D8D6FF;color:#160F57;content:"IEEE SENIOR MEMBER"}.comment--custom-field-grade[data-value="LS"]:before{background:#D8D6FF;color:#160F57;content:"IEEE LIFE SENIOR MEMBER"}.comment--custom-field-member-badges[data-value="IEEE FELLOW"]{background:#FFCCE1;color:#6B0F36}.comment--custom-field-grade[data-value="F"]:before{background:#FFCCE1;color:#6B0F36;content:"IEEE FELLOW"}.comment--custom-field-grade[data-value="LF"]:before{background:#FFCCE1;color:#6B0F36;content:"IEEE LIFE FELLOW"}.comment--custom-field-grade[data-value="H"]:before{background:#FFCCE1;color:#6B0F36;content:"IEEE HONORARY MEMBER"}.comment--custom-field-member-badges[data-value="STAFF EDITOR"]{background:#FFDED1;color:#521400}.comment--custom-field-member-badges[data-value="CONTRIBUTOR"]{background-color:#FFF0CC;color:#704D00}.dark_layout .comment--custom-field-member-badges[data-value="IEEE GRADUATE STUDENT MEMBER"],.dark_layout .comment--custom-field-grade[data-value="GSM"]:before,.dark_layout .comment--custom-field-member-badges[data-value="IEEE STUDENT MEMBER"],.dark_layout .comment--custom-field-grade[data-value="StM"]:before,.dark_layout .comment--custom-field-member-badges[data-value="IEEE ASSOCIATE MEMBER"],.dark_layout .comment--custom-field-grade[data-value="AM"]:before,.dark_layout .comment--custom-field-member-badges[data-value="IEEE MEMBER"],.dark_layout .comment--custom-field-grade[data-value="H"]:before,.dark_layout .comment--custom-field-grade[data-value="LM"]:before,.dark_layout .comment--custom-field-grade[data-value="M"]:before,.dark_layout .comment--custom-field-grade[data-value="SA MBR"]:before,.dark_layout .comment--custom-field-member-badges[data-value="IEEE SENIOR MEMBER"],.dark_layout .comment--custom-field-grade[data-value="LS"]:before,.dark_layout .comment--custom-field-grade[data-value="SM"]:before,.dark_layout .comment--custom-field-member-badges[data-value="IEEE FELLOW"],.dark_layout .comment--custom-field-grade[data-value="F"]:before,.dark_layout .comment--custom-field-grade[data-value="LF"]:before,.dark_layout .comment--custom-field-member-badges[data-value="STAFF EDITOR"],.dark_layout .comment--custom-field-member-badges[data-value="CONTRIBUTOR"]{color:white}.dark_layout .comment--custom-field-member-badges[data-value="IEEE GRADUATE STUDENT MEMBER"],.dark_layout .comment--custom-field-grade[data-value="GSM"]:before{background:#007D6A}.dark_layout .comment--custom-field-member-badges[data-value="IEEE STUDENT MEMBER"],.dark_layout .comment--custom-field-grade[data-value="StM"]:before{background:#316E1C}.dark_layout .comment--custom-field-member-badges[data-value="IEEE ASSOCIATE MEMBER"],.dark_layout .comment--custom-field-grade[data-value="AM"]:before{background:#005690}.dark_layout .comment--custom-field-member-badges[data-value="IEEE MEMBER"],.dark_layout .comment--custom-field-grade[data-value="H"]:before,.dark_layout .comment--custom-field-grade[data-value="LM"]:before,.dark_layout .comment--custom-field-grade[data-value="M"]:before,.dark_layout .comment--custom-field-grade[data-value="SA MBR"]:before{background:#313662}.dark_layout .comment--custom-field-member-badges[data-value="IEEE SENIOR MEMBER"],.dark_layout .comment--custom-field-grade[data-value="LS"]:before,.dark_layout .comment--custom-field-grade[data-value="SM"]:before{background:#362BA6}.dark_layout .comment--custom-field-member-badges[data-value="IEEE FELLOW"],.dark_layout .comment--custom-field-grade[data-value="F"]:before,.dark_layout .comment--custom-field-grade[data-value="LF"]:before{background:#CA3674}.dark_layout .comment--custom-field-member-badges[data-value="STAFF EDITOR"]{background:#A32700}.dark_layout .comment--custom-field-member-badges[data-value="CONTRIBUTOR"]{background-color:#9E6C00}.talks--load_more{background:transparent!important;border:none!important;color:#0D0D0D!important;text-transform:inherit!important;font-size:16px;font-weight:700!important;letter-spacing:-0.1px;font-family:"Favorit-Pro-Light",sans-serif}.dark_layout .talks--load_more{color:#F2F2F2!important}.talks--load_more:after{content:"\2193";padding-left:8px;font-size:16px}.talks--load_more:hover{color:#FF4C00!important}.comment--item-message{margin:16px 0 5px 0}.comment--item-word-count-user{background:white;margin-left:-6px}.comment--item.rejected-comment .comment--item__reply,.comment--item.proposed-comment .comment--item__reply{margin-left:-8px}.input__star_rating,.author-rating,.talk__author__desc,.comment--item-word-count-min,.comment--item--short-bio,.comment--item--action .comment-action-icon,.comment--hide--replies svg,.comment--show--replies svg{display:none}.comment--item--action .admin-controls svg{display:block}a.comment--item__reply:after,a.comment--item__share:after{vertical-align:text-top;color:#404040;font-family:"Favorit-Mono",sans-serif;font-size:12px;letter-spacing:0.75px;line-height:16px;font-weight:100}a.comment--item__reply:after{content:"REPLY"}a.comment--item__share:after{content:"SHARE"}.comment--item__share{margin-right:0!important}a.comment--item__like:after,a.comment--item__dislike:after{content:"";vertical-align:middle;display:inline-block;width:13px;height:10px;transition:all 0.3s ease;background-repeat:no-repeat;background-size:100% auto}a.comment--item__like:after{transform:rotate(180deg);position:relative;top:-2px}.comment--item--action>div:not(.admin-controls){display:flex}.comment--item--action div a.comment--item__like{border-left:0;border-right:1px solid #BFBFBF;order:0;margin-left:-8px!important}.comment--item--action div a.comment--item__dislike{order:1}.comment--item--action .comment--item__reply{order:2}.comment--item--action .comment--item__share{order:3}a.comment--item__like:hover:after,a.comment--item__dislike:hover:after{filter:opacity(1)}.comment--item__like.selected,.comment--item__dislike.selected{background:#ff4c007a}a.comment--hide--replies,a.comment--show--replies{font-size:0}a.comment--hide--replies:after,a.comment--show--replies:after,a.comment--show--replies .comment--count{vertical-align:bottom;text-transform:capitalize;color:#0D0D0D;font-family:"Favorit-Pro",sans-serif;font-size:16px;letter-spacing:-0.1px;line-height:24px}a.comment--show--replies:after{content:"Show Responses";color:#0D0D0D;font-family:"Favorit-Pro",sans-serif;font-size:16px;letter-spacing:-0.1px;line-height:24px}a.comment--hide--replies:after{content:"Hide Responses";color:#0D0D0D;font-family:"Favorit-Pro",sans-serif;font-size:16px;letter-spacing:-0.1px;line-height:24px}a.comment--show--replies .comment--count{float:right;padding-left:8px}a.comment--show--replies .comment--count:before{content:"("}a.comment--show--replies .comment--count:after{content:")"}.talk--load_more__replies,.comment--show--replies,.comment--hide--replies{padding:2px 8px 0 8px!important;background:#ecece9!important;border:none!important;z-index:3!important}.dark_layout .talk--load_more__replies,.dark_layout .comment--show--replies,.dark_layout .comment--hide--replies{background:#1A1A1A!important}.dark_layout .comment--hide--replies:after,.dark_layout .comment--show--replies:after,.dark_layout .comment--show--replies .comment--count{color:#f2f2f2}.comment--item-date{margin:7px 0 0 0;color:#404040;font-family:"Favorit-Mono",sans-serif;letter-spacing:0.75px;line-height:16px;font-weight:100;right:0!important}.comment--item--action a:hover{color:#FF4C00!important}.talk-linked-comment .comment--item,.talk--messages .comment--item{border-bottom:1px solid #BFBFBF!important}.dark_layout .talk-linked-comment .comment--item,.dark_layout .talk--messages .comment--item{border-bottom:1px solid #404040!important}.comment--item--action a{margin:16px 0!important;height:14px;line-height:16px;padding:0 8px}.comment--item--action a:not(:first-child){border-left:1px solid #BFBFBF}.dark_layout .comment--item--action a:not(:first-child){border-left:1px solid #262626}.comment--item-text-field{font-family:"Favorit-Pro",sans-serif}.dark_layout .comment--item-text-field{color:#fff}.dark_layout .comment--item-text-input,.dark_layout .redactor-box,.dark_layout .comment--item-toolbar{background:#404040!important}.dark_layout .comment--item-text-input{border-color:#404040}.dark_layout a.comment--item__reply:after,.dark_layout a.comment--item__share:after,.dark_layout .comment--item-date,.dark_layout .redactor-toolbar>li a,.dark_layout .redactor-editor p,.dark_layout .comment-headline:before,.dark_layout .comment-sort,.dark_layout .comment--sort{color:#A6A6A6!important}.dark_layout .comment--item-username{color:#F2F2F2}.dark_layout .comment--item-message p{color:#D9D9D9}.dark_layout .talk-linked-comment .comment--item,.dark_layout .talk--messages .comment--item{border-bottom:1px solid #262626}.dark_layout .article-content__comments-wrapper{border-bottom:1px solid #404040}.dark_layout .comment--item-word-count-user{background:#404040}.comment--item-text .comment--item-username{text-transform:capitalize;font-size:18px;font-weight:bold;letter-spacing:-0.2px;line-height:22px}.comment--item-message p{font-size:18px;letter-spacing:-0.2px;line-height:28px}.comment--item-avatar img{width:75px!important;height:75px!important}@media (max-width:1023px){.comment--item-message p{font-size:16px;line-height:24px;letter-spacing:-0.1px;margin:16px 0 0}.comment--item-avatar img{margin-right:7px}}@media screen and (max-width:768px){.talk--messages .comment--custom-field-member-badges,.talk--messages .comment--custom-field-grade,.comment--item-text .comment--item-username{display:block}.comment--item-date{right:0!important;position:relative!important}.replies.level-two{margin:0px}}.material-icons.status-featured,.material-icons.status-proposed,.material-icons.status-rejected{right:105px!important;top:16px!important}@media (min-width:769px){.rm-float-right{float:right;margin-left:32px}.rm-float-left{float:left;margin-right:32px}.rm-resized-container-10{width:10%}.rm-resized-container-15{width:15%}.rm-resized-container-20{width:20%}.rm-resized-container-25{width:25%}.rm-resized-container-30{width:30%}.rm-resized-container-35{width:35%}.rm-resized-container-40{width:40%}.rm-resized-container-45{width:45%}.rm-resized-container-50{width:50%}.rm-resized-container-55{width:55%}.rm-resized-container-60{width:60%}.rm-resized-container-65{width:65%}.rm-resized-container-70{width:70%}.rm-resized-container-75{width:75%}.rm-resized-container-80{width:80%}.rm-resized-container-85{width:85%}.rm-resized-container-90{width:90%}}.post-author-list .posts-custom .social-author{margin-top:0;position:relative;font-size:18px;width:100%}.post-author-list .posts-custom .social-author:before{content:""}.post-author-list .posts-custom .social-author__name{text-decoration:none;font-family:"Favorit-Pro",sans-serif;float:left;margin-right:5px;text-transform:none;padding-right:0}.post-author-list .social-author__bio{display:list-item;font-family:"Favorit-Pro-Light",sans-serif;list-style:none}.post-author-list .posts-custom .social-author__name,.post-author-list .social-author__bio{color:#0D0D0D;font-size:18px;letter-spacing:-0.011111111111111112em;line-height:22px}.post-author-list .social-author__bio p{margin:0;line-height:22px}.post-author-list .posts-custom .social-author__avatar{clear:both;display:block;float:none;height:0;width:0;position:revert}.post-author-list .social-author__bio a:first-child{display:none}.post-author-list:before{margin-bottom:-14px;padding-bottom:0}.post-author-list{padding:16px 0 48px 0;border-top:1px solid #BFBFBF;border-bottom:1px solid #BFBFBF}.container_feature_below .post-author-list{border-top:0;padding-top:6px}.container_feature_below .col{margin-bottom:0}.social-author__bio:not(:last-child){margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #BFBFBF}.social-author__bio + .social-author__avatar:before{content:"s";position:absolute;left:10.6em;top:2px;font-family:"Favorit-Mono",sans-serif;text-transform:uppercase;font-size:12px;letter-spacing:0.0625em;line-height:12px;display:block;padding-bottom:16px;color:#404040}.post-author-list .social-author__avatar.image .cover-all.image{width:0;height:0}@media screen and (max-width:1023px){.post-author-list .posts-custom .social-author__name,.post-author-list .social-author__bio p,.post-author-list .social-author__bio{font-size:16px;letter-spacing:-0.00625em;line-height:20px}}@media (min-width:768px) and (max-width:1023px){.post-author-list{padding-left:32px;padding-right:32px}}@media (min-width:0) and (max-width:767px){.container_feature_below .post-author-list.post-author-list{padding:28px 16px 52px 16px}.post-author-list.post-author-list{padding:16px 16px 32px 16px}.post-author-list .posts-custom .social-author{margin-top:8px;position:relative}.social-author__bio + .social-author__avatar:before{top:-6px}.post-author-list .social-author__bio{padding-left:16px;padding-right:16px;margin-left:-16px;margin-right:-16px}}#sTop_Bar_0_0_29_0_0_16 {margin:0;position:relative;z-index:200;}@media (min-width: 1024px) {#sTop_Bar_0_0_29_0_0_16 {margin-bottom:24px;}}#sTop_Bar_0_0_29_0_0_16_0 {align-items:center;position:relative;}.toggle-user-dropdown{top:0;font-size:0}.rebelbar__user-info .notification-counter:not(.user-info__dropdown-wrapper .notification-counter){position:relative;top:5px}#sElement_Bar_0_0_7_0_0_1 {margin:0;text-transform:uppercase;}@media (min-width: 1024px) {#sElement_Bar_0_0_7_0_0_1 {padding-top:6px;}}#sElement_Bar_0_0_7_0_0_1_0 {display:flex;margin:auto;padding:0 32px;justify-content:space-between;box-sizing:border-box;}@media (min-width: 0) and (max-width: 767px) {#sElement_Bar_0_0_7_0_0_1_0 {padding:0 16px;}}#sElement_Bar_0_0_7_0_0_1_0_0_0 {margin:0;}#sElement_Bar_0_0_7_0_0_1_0_0_0 a {color:#BFBFBF;font-size:12px;text-decoration:none;font-family:'Favorit-Mono',sans-serif;padding:16px 24px 16px 0px;letter-spacing:0.75px;line-height:10px;}#sElement_Bar_0_0_7_0_0_1_0_0_0 a:last-child {border:0;}#sElement_Bar_0_0_7_0_0_1_0_0_0 a:hover {text-decoration:underline;}@media (min-width: 0) and (max-width: 767px) {#sElement_Bar_0_0_7_0_0_1_0_0_0 a {padding-bottom:14px;}}#sElement_Bar_0_0_7_0_0_1_0_1_0_1_1 {display:inline-block;}#sElement_Bar_0_0_7_0_0_1_0_1_0_1_1_0 {margin:0;}#sElement_Bar_0_0_7_0_0_1_0_1_0_1_1_0 a {color:#BFBFBF;font-family:'Favorit-Mono',sans-serif;font-size:12px;line-height:10px;text-decoration:none;padding:16px 24px 16px 0px;letter-spacing:0.0625em;}#sElement_Bar_0_0_7_0_0_1_0_1_0_1_1_0 a:last-child {border:0;}#sElement_Bar_0_0_7_0_0_1_0_1_0_1_1_0 a:hover {text-decoration:underline;}@media (min-width: 0) and (max-width: 767px) {#sElement_Bar_0_0_7_0_0_1_0_1_0_1_1_0 a {padding:15px 0px 13px 16px;}}#sElement_Bar_0_0_7_0_0_1_0_1_1 {display:inline-block;}@media (min-width: 0) and (max-width: 767px) {#sElement_Bar_0_0_7_0_0_1_0_1_1 {display:none;}}.button-view-hidden{display:none}.section-frontpage .topbar-sticky:not(.active) .rebelbar-wrapper_static.announcement-show,.topbar-sticky.active .js-hidden-panel:not(.active) + .rebelbar-wrapper_static.announcement-show{padding-top:0}.rebelbar-wrapper_static.announcement-show{padding-top:0}.announcement-show .announcement-bar{display:flex}.announcement-bar{background:linear-gradient(45deg,#e9c52e,#d03033,#1e6d6a,#1e6d6a,#d03033,#fdcf0d);padding:0 62px 0 32px;margin:0 -32px 20px;display:none;justify-content:center}.topbar-sticky.active .js-hidden-panel:not(.active) + .rebelbar-wrapper_static.announcement-show .announcement-bar{margin-bottom:10px}.announcement-bar .formatted-text a{color:inherit}.announcement-bar .formatted-text,.announcement-bar .text-element a{font-family:"Favorit-Mono",sans-serif;font-weight:100;font-size:12px;text-align:center;display:inline-block}.announcement-bar .formatted-text{color:white!important;text-decoration:none;margin:2px 0 -2px;padding-left:15px;padding-right:15px}.announcement-bar .text-element a{display:inline-block;width:max-content;text-decoration-color:transparent;background-color:#FF4C00;border-radius:4px;line-height:100%;letter-spacing:0.0075em;text-transform:uppercase;margin:8px;color:#f2f2f2;padding:8px 12px;font-family:"Favorit-Mono",sans-serif;letter-spacing:0.0625em;text-transform:uppercase;font-size:12px}.announcement-bar .text-element a:hover{text-decoration:underline}.announcement-bar .text-element{line-height:0;align-self:center}.announcement-bar .icon-close:before,.announcement-bar .icon-close:after{position:absolute;left:12px;right:12px;content:" ";height:24px;border-left:1px solid;color:#0D0D0D}.announcement-bar .icon-close{position:absolute;width:24px;height:24px;align-self:center;right:32px;font-size:0}@media (max-width:767px){.announcement-bar .widget__subheadline{width:65%;text-align:left}.announcement-bar .icon-close{right:13px;top:calc(50% - 12px)}.announcement-bar{padding-left:16px;padding-right:46px;position:relative;margin:0 -16px 40px}.announcement-bar .text-element a{max-width:100px}.announcement-bar .formatted-text{padding-right:8px;padding-left:0}.announcement-bar .formatted-text,.announcement-bar .text-element a{font-size:11px;line-height:12px}.dark_top_bar{position:relative;z-index:1}}#s__TopBar_Second_Bar_0_0_41_0_0_0 {display:flex;justify-content:space-between;align-items:center;}@media (min-width: 0) and (max-width: 767px) {#s__TopBar_Second_Bar_0_0_41_0_0_0_0 {width:186px;}}.active .topbar__sticky-headline--post ~ .topbar__static-headline,.floating-shares{display:none}.active .floating-shares{font-size:0;display:inline-block;width:25px;height:25px;background-color:transparent;background-image:url("data:image/svg+xml,%3Csvg%20width='18px'%20height='20px'%20viewBox='0%200%2018%2020'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3E%3Cg%20transform='translate(-207.000000,-1593.000000)'%20stroke='%23FF4C00'%3E%3Cg%20id='Group-4-Copy'%20transform='translate(208.000000,1528.500000)'%3E%3Cg%20id='Group-12-Copy'%20transform='translate(0.000000,64.500000)'%3E%3Cg%20id='Group-2'%20transform='translate(0.000000,1.000000)'%3E%3Cpath%20d='M16,8%20L16,16%20C16,17.1045695%2015.1045695,18%2014,18%20L2,18%20C0.8954305,18%200,17.1045695%200,16%20L0,8%20L0,8'%20id='Path'%3E%3C/path%3E%3Cpolyline%20id='Path'%20transform='translate(8.000000,5.656854)%20rotate(-45.000000)%20translate(-8.000000,-5.656854)'%20points='4%201.65685425%2012%201.65685425%2012%209.65685425'%3E%3C/polyline%3E%3Cline%20x1='8'%20y1='0'%20x2='8'%20y2='12'%20id='Path-4'%3E%3C/line%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E")!important;background-position:center!important;background-repeat:no-repeat!important;cursor:pointer}.active .site_logo{display:flex}@media (min-width:768px){.active .site_logo{max-width:60%}}@media (max-width:1023px){.active .site_logo svg,.active .mobile_search_icon{display:none}.active .topbar__sticky-headline.topbar__sticky-headline--post{display:inline;width:calc(100% - 30px);max-width:100%}.active .site_logo{width:calc(100% - 50px)!important}}#s__TopBar_Second_Bar_0_0_41_0_0_0_0_1_0_1_0 {text-overflow:ellipsis;}#s__TopBar_Second_Bar_0_0_41_0_0_0_1 {display:flex;align-items:center;padding-bottom:6px;}#sElement_Menu_0_0_8_0_0_0_0_1_0 {padding-top:5px;}#sElement_Menu_0_0_8_0_0_0_0_1_0 a {display:table;font-size:18px;line-height:22px;white-space:initial;font-family:'Favorit-Pro', sans-serif;letter-spacing:-0.2px;padding:6px 20px;}.huge-menu{inset:0px;z-index:5000;position:fixed;top:0;left:0;right:0;bottom:0;margin:0 0 -20px;background-color:#1a1a1a;overflow-y:auto}.huge-menu .dark_layout{background:#1a1a1a;border:solid #404040;border-width:0 1px;box-sizing:border-box;margin:0 auto;max-width:1568px;padding-top:0}.huge-menu .top-menu .list__item.active:before,.huge-menu .top-menu .list__item:hover:before{font-size:16pt;transition:all 100ms ease;padding-right:10px}.huge-menu .top-menu--sm-links .list__item.active:before,.huge-menu .top-menu--sm-links .list__item:hover:before{font-size:12pt}.huge-menu .top-menu .list__item:before{content:"\f111";font-family:"FontAwesome";color:#ff4c00;font-size:0pt;vertical-align:top;transition:all 100ms ease}.huge-menu-opened{overflow:hidden}.huge-menu{display:none}.huge-menu-opened .huge-menu,.huge-menu-opened .topbar--sticky{display:block}.huge-menu-opened .topbar--sticky{position:fixed;left:0;right:0;top:0}.hm__close{position:absolute;right:0;top:0;width:28px;height:28px;color:#fff;transition:color 0.3s ease}.hm__close:before,.hm__close:after{position:absolute;left:14px;content:" ";height:29px;border-left:2px solid}.hm__close:before{transform:rotate(45deg)}.hm__close:after{transform:rotate(-45deg)}.huge-menu .module-headline__text{letter-spacing:0.75px;color:#8c8c8c;font-size:12px;font-family:"Favorit-Mono",sans-serif;text-transform:uppercase;line-height:24px;margin-bottom:5px;font-weight:normal}.huge-menu .list{margin:0}.huge-menu .list__item{padding-left:0;padding-right:0}.top-menu--sm-links .list{margin:0;padding-bottom:8px}.top-menu--sm-links .list__item{display:block;padding:2px 0;font:20px/28px "Favorit-Pro-Light",sans-serif;letter-spacing:-0.0125em}.huge-menu .social-links{margin-left:-16px;margin-right:-16px;display:flex;flex-direction:row;flex-wrap:wrap;justify-content:flex-start}.huge-menu .social-links__link{color:#bfbfbf;font-size:20px;background:transparent;padding:13px 8px 9px;width:auto;height:auto}.huge-menu .social-links__link:hover{color:#ff4c00}.huge-menu .social-links__link>span{position:static}.huge-menu .social-links__link span.fa-twitter{-webkit-mask-image:unset;-webkit-mask-box-image:none;background-color:transparent}.huge-menu .social-links__link span.fa-twitter:before{content:"";background:url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15.1563 1.875H17.9141L11.8906 8.75781L18.9766 18.125H13.4297L9.08203 12.4453L4.11328 18.125H1.35156L7.79297 10.7617L1 1.875H6.6875L10.6133 7.06641L15.1563 1.875ZM14.1875 16.4766H15.7148L5.85547 3.4375H4.21484L14.1875 16.4766Z" fill="%23bfbfbf"/></svg>') no-repeat center;background-size:contain;width:20px;height:20px;display:block;margin:0 auto;position:relative}.huge-menu .social-links__link:hover span.fa-twitter:before{background:url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15.1563 1.875H17.9141L11.8906 8.75781L18.9766 18.125H13.4297L9.08203 12.4453L4.11328 18.125H1.35156L7.79297 10.7617L1 1.875H6.6875L10.6133 7.06641L15.1563 1.875ZM14.1875 16.4766H15.7148L5.85547 3.4375H4.21484L14.1875 16.4766Z" fill="%23ff4c00"/></svg>') no-repeat center}.huge-menu .social-links__link.share-instagram{font-size:18px;padding-left:4px}.huge-menu .fa-tumblr:before{font-family:"FontAwesome",sans-serif;content:"\f09e"}.huge-menu .fa-tiktok::before,.huge-menu .fa-threads::before{width:20px;height:20px;content:"";display:inline-flex;background-image:url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 448 512" xmlns="http://www.w3.org/2000/svg" fill="none"><path d="M448 209.9a210.1 210.1 0 0 1 -122.8-39.3V349.4A162.6 162.6 0 1 1 185 188.3V278.2a74.6 74.6 0 1 0 52.2 71.2V0l88 0a121.2 121.2 0 0 0 1.9 22.2h0A122.2 122.2 0 0 0 381 102.4a121.4 121.4 0 0 0 67 20.1z" fill-rule="nonzero" fill="%23bfbfbf"/></svg>');background-size:contain;background-repeat:no-repeat}.huge-menu .social-links__link:hover .fa-tiktok::before{background-image:url('data:image/svg+xml,<svg width="20" height="20" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" fill="none"><path d="M448 209.9a210.1 210.1 0 0 1 -122.8-39.3V349.4A162.6 162.6 0 1 1 185 188.3V278.2a74.6 74.6 0 1 0 52.2 71.2V0l88 0a121.2 121.2 0 0 0 1.9 22.2h0A122.2 122.2 0 0 0 381 102.4a121.4 121.4 0 0 0 67 20.1z" fill-rule="nonzero" fill="%23ff4c00"/></svg>')}.huge-menu .fa-threads::before{background-image:url('data:image/svg+xml, <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 448 512" fill="none"><path d="M331.5 235.7c2.2 .9 4.2 1.9 6.3 2.8c29.2 14.1 50.6 35.2 61.8 61.4c15.7 36.5 17.2 95.8-30.3 143.2c-36.2 36.2-80.3 52.5-142.6 53h-.3c-70.2-.5-124.1-24.1-160.4-70.2c-32.3-41-48.9-98.1-49.5-169.6V256v-.2C17 184.3 33.6 127.2 65.9 86.2C102.2 40.1 156.2 16.5 226.4 16h.3c70.3 .5 124.9 24 162.3 69.9c18.4 22.7 32 50 40.6 81.7l-40.4 10.8c-7.1-25.8-17.8-47.8-32.2-65.4c-29.2-35.8-73-54.2-130.5-54.6c-57 .5-100.1 18.8-128.2 54.4C72.1 146.1 58.5 194.3 58 256c.5 61.7 14.1 109.9 40.3 143.3c28 35.6 71.2 53.9 128.2 54.4c51.4-.4 85.4-12.6 113.7-40.9c32.3-32.2 31.7-71.8 21.4-95.9c-6.1-14.2-17.1-26-31.9-34.9c-3.7 26.9-11.8 48.3-24.7 64.8c-17.1 21.8-41.4 33.6-72.7 35.3c-23.6 1.3-46.3-4.4-63.9-16c-20.8-13.8-33-34.8-34.3-59.3c-2.5-48.3 35.7-83 95.2-86.4c21.1-1.2 40.9-.3 59.2 2.8c-2.4-14.8-7.3-26.6-14.6-35.2c-10-11.7-25.6-17.7-46.2-17.8H227c-16.6 0-39 4.6-53.3 26.3l-34.4-23.6c19.2-29.1 50.3-45.1 87.8-45.1h.8c62.6 .4 99.9 39.5 103.7 107.7l-.2 .2zm-156 68.8c1.3 25.1 28.4 36.8 54.6 35.3c25.6-1.4 54.6-11.4 59.5-73.2c-13.2-2.9-27.8-4.4-43.4-4.4c-4.8 0-9.6 .1-14.4 .4c-42.9 2.4-57.2 23.2-56.2 41.8l-.1 .1z" fill-rule="nonzero" fill="%23bfbfbf" /></svg>')}.huge-menu .social-links__link:hover .fa-threads::before{background-image:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 448 512" fill="none"><path d="M331.5 235.7c2.2 .9 4.2 1.9 6.3 2.8c29.2 14.1 50.6 35.2 61.8 61.4c15.7 36.5 17.2 95.8-30.3 143.2c-36.2 36.2-80.3 52.5-142.6 53h-.3c-70.2-.5-124.1-24.1-160.4-70.2c-32.3-41-48.9-98.1-49.5-169.6V256v-.2C17 184.3 33.6 127.2 65.9 86.2C102.2 40.1 156.2 16.5 226.4 16h.3c70.3 .5 124.9 24 162.3 69.9c18.4 22.7 32 50 40.6 81.7l-40.4 10.8c-7.1-25.8-17.8-47.8-32.2-65.4c-29.2-35.8-73-54.2-130.5-54.6c-57 .5-100.1 18.8-128.2 54.4C72.1 146.1 58.5 194.3 58 256c.5 61.7 14.1 109.9 40.3 143.3c28 35.6 71.2 53.9 128.2 54.4c51.4-.4 85.4-12.6 113.7-40.9c32.3-32.2 31.7-71.8 21.4-95.9c-6.1-14.2-17.1-26-31.9-34.9c-3.7 26.9-11.8 48.3-24.7 64.8c-17.1 21.8-41.4 33.6-72.7 35.3c-23.6 1.3-46.3-4.4-63.9-16c-20.8-13.8-33-34.8-34.3-59.3c-2.5-48.3 35.7-83 95.2-86.4c21.1-1.2 40.9-.3 59.2 2.8c-2.4-14.8-7.3-26.6-14.6-35.2c-10-11.7-25.6-17.7-46.2-17.8H227c-16.6 0-39 4.6-53.3 26.3l-34.4-23.6c19.2-29.1 50.3-45.1 87.8-45.1h.8c62.6 .4 99.9 39.5 103.7 107.7l-.2 .2zm-156 68.8c1.3 25.1 28.4 36.8 54.6 35.3c25.6-1.4 54.6-11.4 59.5-73.2c-13.2-2.9-27.8-4.4-43.4-4.4c-4.8 0-9.6 .1-14.4 .4c-42.9 2.4-57.2 23.2-56.2 41.8l-.1 .1z" fill-rule="nonzero" fill="%23ff4c00"/></svg>')}@media (min-width:768px){.sticky-active .topbar--sticky{display:block}}@media (max-width:768px){svg.site_logo_menu{width:199px;height:28px}.top-menu--big-links .module-headline__text{margin-top:10px;margin-bottom:0}.top-menu--big-links .list{margin-bottom:60px}}@media (min-width:1024px){.huge-menu .site_logo_menu{width:341px;height:auto}.Top_hugeMenu{padding:37px 32px 10px!important}.Top_hugeMenu .text-element{position:relative;top:-5px}.Top_hugeMenu .rebelbar__menu-toggle{padding:10px 0;right:-6px}.top-menu--sm-links .list{margin:0;padding-bottom:28px}.top-menu--sm-links .module-headline__text{margin-bottom:8px}.huge-menu .module-headline__text{margin-bottom:8px}}#s__Huge_Menu_Links_0_0_35_0_0_1_0 {margin:0;padding:16px 16px 12px 16px;}@media (min-width: 1024px) {#s__Huge_Menu_Links_0_0_35_0_0_1_0 {border-bottom:1px solid #404040;}}@media (min-width: 0) and (max-width: 767px) {#s__Huge_Menu_Links_0_0_35_0_0_1_0 {border-bottom:1px solid #404040;padding:13px 9px 7px 15px;}}#s__Huge_Menu_Links_0_0_35_0_0_1_0_0_1 {font-family:'Favorit-Mono', sans-serif;font-size:12px;font-weight:normal;letter-spacing:0.75px;line-height:20px;padding-left:16px;display:none;vertical-align:bottom;color: #D9D9D9;}@media (min-width: 1024px) {#s__Huge_Menu_Links_0_0_35_0_0_1_0_0_1 {display:inline-block;}}#s__Huge_Menu_Links_0_0_35_0_0_1_1 {padding:16px;margin:0;}@media (min-width: 1024px) {#s__Huge_Menu_Links_0_0_35_0_0_1_1 {padding:16px 32px;}}@media (min-width: 0) and (max-width: 767px) {#s__Huge_Menu_Links_0_0_35_0_0_1_1 {border-bottom:1px solid #404040;margin-bottom:0;}}#s__Huge_Menu_Links_0_0_35_0_0_1_1_1 {padding-top:10px;}@media (min-width: 1024px) {#s__Huge_Menu_Links_0_0_35_0_0_1_1_1 {padding-top:0;}}#s__Huge_Menu_Links_0_0_35_0_0_1_1_1 a {display:block;font-size:32px;line-height:36px;font-family:'Favorit-Pro-Light', sans-serif;letter-spacing:-0.015625em;padding:8px 0;}@media (min-width: 0) and (max-width: 767px) {#s__Huge_Menu_Links_0_0_35_0_0_1_1_1 a {font-size:28px;letter-spacing:-0.008928571428571428em;line-height:32px;}}#s__Huge_Menu_Links_0_0_35_0_0_1_2 {padding:0;margin:0;}@media (min-width: 1024px) {#s__Huge_Menu_Links_0_0_35_0_0_1_2 {border-left:1px solid #404040;border-right:1px solid #404040;margin-right:-1px;width:24.5%;padding-bottom:35px;}}@media (min-width: 0) and (max-width: 767px) {#s__Huge_Menu_Links_0_0_35_0_0_1_2 {border-right:1px solid #404040;}}#s__Huge_Menu_Links_0_0_35_0_0_1_2_0 {border-bottom:1px solid #404040;padding:16px;margin:0;}@media (min-width: 1024px) {#s__Huge_Menu_Links_0_0_35_0_0_1_2_0_1 {padding-bottom:22px;}}#s__Huge_Menu_Links_0_0_35_0_0_1_2_1 {padding:16px;}@media (min-width: 1024px) {#s__Huge_Menu_Links_0_0_35_0_0_1_2_1 {border-bottom:1px solid #404040;margin-bottom:0;}}@media (min-width: 0) and (max-width: 767px) {#s__Huge_Menu_Links_0_0_35_0_0_1_2_1_1 {padding-bottom:12px;}}#s__Huge_Menu_Links_0_0_35_0_0_1_2_2 {padding:16px;margin:0;}@media (min-width: 0) and (max-width: 767px) {#s__Huge_Menu_Links_0_0_35_0_0_1_2_2 {display:none;}}#s__Huge_Menu_Links_0_0_35_0_0_1_3 {padding:0;border-left:1px solid #404040;}@media (min-width: 1024px) {#s__Huge_Menu_Links_0_0_35_0_0_1_3 {width:25.5%;}}@media (min-width: 0) and (max-width: 767px) {#s__Huge_Menu_Links_0_0_35_0_0_1_3 {margin-bottom:0;padding-bottom:20px;border-left:0;}}#s__Huge_Menu_Links_0_0_35_0_0_1_3_0 {border-bottom:1px solid #404040;padding:16px;margin:0;display:none;}@media (min-width: 0) and (max-width: 767px) {#s__Huge_Menu_Links_0_0_35_0_0_1_3_0 {display:block;}}@media (min-width: 0) and (max-width: 767px) {#s__Huge_Menu_Links_0_0_35_0_0_1_3_0_1 {padding-bottom:13px;}}#s__Huge_Menu_Links_0_0_35_0_0_1_3_1 {padding:16px;border-bottom:1px solid #404040;margin:0;}@media (min-width: 0) and (max-width: 767px) {#s__Huge_Menu_Links_0_0_35_0_0_1_3_1 {border:none;}}#s__Huge_Menu_Links_0_0_35_0_0_1_3_2 {border-bottom:1px solid #404040;padding:16px 16px 35px;margin:0;}@media (min-width: 0) and (max-width: 767px) {#s__Huge_Menu_Links_0_0_35_0_0_1_3_2 {display:none;}}#s__Huge_Menu_Links_0_0_35_0_0_1_3_3 {padding:16px 32px 16px 16px;}@media (min-width: 0) and (max-width: 767px) {#s__Huge_Menu_Links_0_0_35_0_0_1_3_3 {display:none;}}#s__Huge_Menu_Links_0_0_35_0_0_1_3_3_1 {color:#D9D9D9;font-family:'Favorit-Mono', sans-serif;font-size:14px;font-weight:300;letter-spacing:0;line-height:20px;padding:5px 0 30px;}#s__Huge_Menu_Links_0_0_35_0_0_1_3_3_2 {display:inline-block;}#s__Huge_Menu_Links_0_0_35_0_0_1_3_3_3 {display:inline-block;padding-left:16px;}#s__Huge_Menu_Links_0_0_35_0_0_1_4 {padding:0;border-top:1px solid #404040;display:none;}@media (min-width: 0) and (max-width: 767px) {#s__Huge_Menu_Links_0_0_35_0_0_1_4 {display:block;}}#s__Huge_Menu_Links_0_0_35_0_0_1_5 {padding:0;border-top:1px solid #404040;}#sFooter_0_0_9_0_0_0 {margin:0;position:relative;z-index:10;padding:16px 0;}#sFooter_0_0_9_0_0_0_0 {margin:auto;padding:22px 35px 12px;justify-content:space-between;box-sizing:border-box;color:#BFBFBF;font-family:'Favorit-Mono',sans-serif;font-size:12px;}@media (min-width: 0) and (max-width: 767px) {#sFooter_0_0_9_0_0_0_0 {padding:18px 17px;}}#sFooter_0_0_9_0_0_0_0_0.row-wrapper {padding:0px 0px 20px 0px;}#sFooter_0_0_9_0_0_0_0_0_0 {font-size:12px;}#sFooter_0_0_9_0_0_0_0_0_0_0 {margin:0;}#sFooter_0_0_9_0_0_0_0_0_0_0_0 {margin:0;}#sFooter_0_0_9_0_0_0_0_0_0_0_0 a {color:#8C8C8C;font-size:12px;text-decoration:none;font-family:'Favorit-Mono',sans-serif;text-transform:uppercase;letter-spacing:0.064em;}#sFooter_0_0_9_0_0_0_0_0_0_0_0 a:last-child {border:0;}#sFooter_0_0_9_0_0_0_0_0_0_0_0 a:hover {text-decoration:underline;}@media (min-width: 0) and (max-width: 767px) {#sFooter_0_0_9_0_0_0_0_0_0_0_0 a {border:none;display:block;padding:7px 0px;font-size:11px;letter-spacing:0.12em;}}#sFooter_0_0_9_0_0_0_0_0_0_1 {line-height:1.5em;margin-bottom:6px;margin-top:21px;}@media (min-width: 1024px) {#sFooter_0_0_9_0_0_0_0_0_0_1 {line-height:1.5em;margin:0px 0 20px 0px;max-width:1240px;}}@media (min-width: 0) and (max-width: 767px) {#sFooter_0_0_9_0_0_0_0_0_0_1 {margin-top:21px;line-height:1.5em;margin-bottom:6px;}}#sFooter_0_0_9_0_0_0_0_0_1 {float:right;max-width:111px;position:absolute;right:35px;}@media (min-width: 0) and (max-width: 767px) {#sFooter_0_0_9_0_0_0_0_0_1 {margin:5px 15px 0 0;max-width:111px;right:3px;}}#s__Gated_Popup_0_0_34_0_0_0_0 {background-color:#1A1A1A;max-width:630px;}#s__Gated_Popup_0_0_34_0_0_0_0_2 {padding:10px 20px;display:none;}#s__Gated_Popup_0_0_34_0_0_0_0_2_0 a {color:white;font-family:'Favorit-Mono',sans-serif;font-size:12px;line-height:12px;text-decoration:none;padding:10px;border-radius:5px;}#s__Gated_Popup_0_0_34_0_0_0_0_2_0 a:last-child {border:0;}#s__Gated_Popup_0_0_34_0_0_0_0_3 {padding:10px 20px;display:none;}#s__Gated_Popup_0_0_34_0_0_0_0_3_0 a {color:white;font-family:'Favorit-Mono',sans-serif;font-size:12px;line-height:12px;text-decoration:none;padding:10px;border-radius:5px;}#s__Gated_Popup_0_0_34_0_0_0_0_3_0 a:last-child {border:0;}.gated-popup{position:fixed;top:0;left:0;right:0;bottom:0;z-index:10000;background:rgba(20,20,20,0.9);align-items:center;justify-content:center;display:none;margin:0px!important;padding:20px}.gated-popup a{text-decoration:underline;text-decoration-color:#ff4c00;text-underline-position:under;color:inherit}.gated-popup a:hover{color:#ff4c00}.popup-gated-h2{color:#BFBFBF;font-family:"Favorit-Pro",sans-serif;font-weight:300;font-size:18px;letter-spacing:-0.2px;line-height:22px}.popup-heading-h2{font-size:32px;font-family:"Favorit-Pro-Light",sans-serif;letter-spacing:-0.5px;line-height:36px;color:#F2F2F2;margin:0;max-width:500px}.for_pdf .popup_links.for_pdf,.for_save .popup_links.for_save,.for_ebooks .popup_links.for_ebooks,.for_pdf_issues .popup_links.for_pdf_issues,.for_nxtbook .popup_links.for_nxtbook,.for_follow_topics .popup_links.for_follow_topics,.for_comments .popup_links.for_comments,.for_member_content .popup_links.for_member_content,.for_pdf .popup-heading-h2.for_pdf,.for_save .popup-heading-h2.for_save,.for_ebooks .popup-heading-h2.for_ebooks,.for_pdf_issues .popup-heading-h2.for_pdf_issues,.for_nxtbook .popup-heading-h2.for_nxtbook,.for_follow_topics .popup-heading-h2.for_follow_topics,.for_comments .popup-heading-h2.for_comments,.for_member_content .popup-heading-h2.for_member_content,.for_pdf .popup-gated-h2.for_pdf,.for_save .popup-gated-h2.for_save,.for_ebooks .popup-gated-h2.for_ebooks,.for_pdf_issues .popup-gated-h2.for_pdf_issues,.for_nxtbook .popup-gated-h2.for_nxtbook,.for_follow_topics .popup-gated-h2.for_follow_topics,.for_comments .popup-gated-h2.for_comments,.for_member_content .popup-gated-h2.for_member_content{display:block!important}.gated-popup__contents{position:relative;overflow:hidden;padding:20px 25px 40px;max-width:480px;width:100%;box-sizing:border-box}.gated-popup__close{position:absolute;color:#000;font-size:23px;border-radius:50%;width:40px;height:40px;line-height:40px;text-align:center;right:10px;top:13px}.gated-popup--shown{display:block;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-webkit-flex;display:flex}#s__Session_Popup_0_0_39_0_0_0_0 {background-color:#1A1A1A;max-width:736px;}#s__Session_Popup_0_0_39_0_0_0_0_2_0 {margin:32px 0 0;}#s__Session_Popup_0_0_39_0_0_0_0_2_0 a {color:white;font-family:'Favorit-Mono',sans-serif;font-size:12px;line-height:16px;text-decoration:none;padding:8px 12px;border-radius:5px;letter-spacing:0.0625em;}#s__Session_Popup_0_0_39_0_0_0_0_2_0 a:last-child {border:0;padding:7px 11px;}.lightbox-popup{position:fixed;top:0;left:0;right:0;bottom:0;z-index:10000;background:rgba(20,20,20,0.9);align-items:center;justify-content:center;display:none;margin:0px!important;padding:16px}.lightbox-popup a{text-decoration:underline;text-decoration-color:#ff4c00;text-underline-offset:2px;text-decoration-thickness:1px;color:inherit}.lightbox-popup a:hover{color:#ff4c00}.popup-ligtbox-h2{color:#BFBFBF;font-family:"Favorit-Pro",sans-serif;font-weight:300;font-size:18px;letter-spacing:-0.011111111111111112em;line-height:22px}.popup-heading-h2{font-size:24px;font-family:"Favorit-Pro-Light",sans-serif;letter-spacing:-0.010416666666666666em;line-height:28px;color:#F2F2F2;margin:0;max-width:500px}.lightbox-popup__contents{position:relative;overflow:hidden;padding:24px 24px 32px;max-width:480px;width:100%;box-sizing:border-box}.lightbox-popup__close{position:absolute;color:#000;font-size:23px;border-radius:50%;width:40px;height:40px;line-height:40px;text-align:center;right:0;top:19px}.lightbox-popup--shown{display:block;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-webkit-flex;display:flex}.popup_links .list .list__item:nth-child(2){margin-left:16px}@media (max-width:768px){.popup-heading-h2{max-width:250px}.icon-close:before,.icon-close:after{height:24px;left:auto}a.js--close-lightbox.lightbox-popup__close.icon-close.hide-text{padding-right:12px}}@media (min-width:1024px){.popup-heading-h2{font-size:32px;letter-spacing:-0.015625em;line-height:36px}.lightbox-popup__close{right:10px}.lightbox-popup__contents{padding-bottom:48px}}.feature_post_full .row{overflow:unset}.rblad-ieee_infinite_new{border-bottom:1px solid silver;padding-bottom:30px;position:relative;background-color:#ecece8;z-index:10000}@media (min-width:1024px){.rblad-ieee_infinite_new:after{content:"";display:block;background-color:#ecece9;height:30px;width:100%;position:absolute;bottom:-31px}}.feature_post_full.current_post .widget .widget__body:last-child .body-description .ieee-editors-note:first-letter {font-size:inherit}.body-description>p:first-child strong,.body-description .widget__brief:first-child strong{text-transform:uppercase;font-family:"Favorit-Pro"}.body-description .drop-caps strong:first-child{text-transform:uppercase;font-family:"Favorit-Pro"}.feature_post_full.current_post .widget .widget__body:last-child .body-description:first-letter ,.feature_post_full.current_post .widget .widget__body:last-child .body-description .drop-caps:first-letter {float:left;font-family:"Favorit-Pro";font-weight:400;margin-bottom:0}@media (min-width:1024px){.Vertical.feature_post_full .widget__subheadline{padding-bottom:560px}.Vertical.feature_post_full .widget .widget__body:last-child{padding-left:32px;padding-right:32px;width:inherit}.feature_post_full.current_post .tags{margin:auto;padding:0 40px 29px;max-width:768px;border-left:1px solid #bfbfbf;border-right:1px solid #bfbfbf;box-sizing:border-box}.feature_post_full.current_post .tags:before{padding-top:16px;border-top:1px solid #bdbdbd}.feature_post_full.current_post .tags:after{content:"";padding-bottom:48px;border-bottom:1px solid #bdbdbd;display:block}.container_feature_below{padding-bottom:32px;margin-bottom:64px}.feature_post_full.current_post .widget .widget__body:last-child .body-description{margin-top:65px;padding-left:56px;padding-right:56px}.feature_post_full.current_post .widget .widget__body:last-child .body-description:first-letter ,.feature_post_full.current_post .widget .widget__body:last-child .body-description .drop-caps:first-letter {font-size:120px;margin:46px 21px 20px 0}.feature_post_full .widget__subheadline{margin-bottom:16px}.feature_post_full .widget .widget__body:first-child{padding-bottom:22px}}@media (min-width:1376px){.feature_post_full.current_post .tags{padding:0 56px;max-width:992px}.container_feature_below{padding-left:56px;padding-right:56px}}@media (min-width:768px){.container_feature_below{padding-top:10px}.container_feature_below .tags{padding-top:24px}}@media (max-width:767px){.body.expanded .widget__show-more{padding:0;margin-bottom:-14px}.container_feature_below{overflow:hidden}.comment--item-message.comment--item-message,.comment--item-message.comment--item-message p:first-child{margin-top:0!important}.comment--item-message.comment--item-message p{margin:15px 0 0!important}.comment--custom-field-grade{visibility:hidden;position:relative!important;top:-40px}.feature_post_full.current_post .widget .widget__body:last-child .body-description:first-letter ,.feature_post_full.current_post .widget .widget__body:last-child .body-description .drop-caps:first-letter {font-size:96px;margin:36px 21px 0 0;font-weight:900}.body-description .widget__brief:first-child strong{font-size:16px;line-height:28px}.container_feature_below .article_post .row{margin:0}.container_feature_below .article_post .row .rm-col-center{padding:0;margin:auto}.container_feature_below .article_post .tags{padding:20px 16px 40px}.tags .tags__item{line-height:normal;margin-bottom:4px}}@media (max-width:727px){#top_leaderboard{height:100px}.top-leader-container{height:128px}}@media (min-width:728px){#top_leaderboard{height:90px}}.top-leader-container{width:calc(100% - 64px)}@media (min-width:769px){.feature_post_full .widget__head .rm-lazyloadable-image{max-width:none;height:100%;object-fit:cover}}@media (min-width:768px) and (max-width:1023px){.comment--item-avatar img{width:64px!important;height:64px!important}.container_feature_below .tags{margin-top:36px;padding-top:24px;padding-bottom:39px}.comment-header{right:32px}.feature_post_full.current_post .widget .widget__body:last-child .body-description:first-letter ,.feature_post_full.current_post .widget .widget__body:last-child .body-description .drop-caps:first-letter {font-size:108px;margin:46px 21px 0 0}.sm-mt-1>*:empty{margin-top:0}.feature_post_full .widget .body{margin-top:0}}#sSS_Feature_Post_0_0_23_0_0_1_0 {text-align:center;margin:auto;padding:24px 0 36px 0;display:flex;justify-content:center;}@media (min-width: 0) and (max-width: 767px) {#sSS_Feature_Post_0_0_23_0_0_1_0 {padding-bottom:0px;padding-top:16px;}}#sOpen_Current_Feature_Post_0_0_15_0_0_0_1_0_1_0 .custom-field-FullwidthCardColor {display:none;}#sOpen_Current_Feature_Post_0_0_15_0_0_0_1_0_1_0 .custom-field-FullwidthCardPosition {display:none;}#sOpen_Current_Feature_Post_0_0_15_0_0_0_1_0_1_0 .custom-field-FeaturePostColor {display:none;}#sOpen_Current_Feature_Post_0_0_15_0_0_0_1_0_1_0 .custom-field-FeaturePostImgPosition {display:none;} @media (min-width: 0) and (max-width: 767px) {#sOpen_Current_Feature_Post_0_0_15_0_0_0_1_0_1_0 {margin-bottom:10px;}}#sOpen_Current_Feature_Post_0_0_15_0_0_1_0 {width:100%;} #sOpen_Current_Feature_Post_0_0_15_0_0_1_1_1_0 {width:100%;}@media (min-width: 0) and (max-width: 767px) {#sOpen_Current_Feature_Post_0_0_15_0_0_1_1_1_0 {margin-bottom:20px;}} #sOpen_Current_Feature_Post_0_0_15_0_0_1_2_1_0:before {color:#404040;content:"READ ALSO";font-family:'Favorit-Mono',sans-serif;font-size:12px;letter-spacing:0.75px;line-height:16px;}@media (min-width: 0) and (max-width: 767px) {#sOpen_Current_Feature_Post_0_0_15_0_0_1_2_1_0:before {padding:16px;}}#sOpen_Current_Feature_Post_0_0_15_0_0_1_2_1_0 .widget {margin:0px;padding:16px 0;}@media (min-width: 0) and (max-width: 767px) {#sOpen_Current_Feature_Post_0_0_15_0_0_1_2_1_0 .widget {padding:16px;}}#sOpen_Current_Feature_Post_0_0_15_0_0_1_2_1_0 .widget .widget__headline-text {font-family:'Favorit-Pro', sans-serif;font-size:24px;font-weight:bold;letter-spacing:-0.25px;line-height:26px;}:root{}.lightbox_icon{cursor:pointer;position:relative}.lightbox_icon:before{right:0;top:0;content:"";z-index:3;position:absolute;padding:30px;margin:14px;background-repeat:no-repeat;background-image:url("data:image/svg+xml,%3Csvg%20width='60'%20height='60'%20viewBox='0%200%2096%2096'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M48%2096C74.5097%2096%2096%2074.5097%2096%2048C96%2021.4903%2074.5097%200%2048%200C21.4903%200%200%2021.4903%200%2048C0%2074.5097%2021.4903%2096%2048%2096Z'%20fill='black'%20fill-opacity='0.4'/%3E%3Cpath%20d='M39.8227%2028H32C29.7909%2028%2028%2029.7909%2028%2032V40.2449'%20stroke='%23F5F5F5'%20stroke-width='7'%20stroke-linecap='round'/%3E%3Cpath%20d='M39.8227%2068H32C29.7909%2068%2028%2066.2091%2028%2064V55.7551'%20stroke='%23F5F5F5'%20stroke-width='7'%20stroke-linecap='round'/%3E%3Cpath%20d='M56.1773%2028H64C66.2091%2028%2068%2029.7909%2068%2032V40.2449'%20stroke='%23F5F5F5'%20stroke-width='7'%20stroke-linecap='round'/%3E%3Cpath%20d='M56.1773%2068H64C66.2091%2068%2068%2066.2091%2068%2064V55.7551'%20stroke='%23F5F5F5'%20stroke-width='7'%20stroke-linecap='round'/%3E%3C/svg%3E")}.rm-float-left.lightbox_icon::before{top:-14px}.custom-field-lightbox-img-shortcode-ids,.lightbox.lightbox_icon:before{display:none}.fixed_scrolling{overflow:hidden}.lightbox-layout{position:fixed;right:0;bottom:0;top:0;left:0;display:none;margin:0px!important;z-index:300;background:rgba(20,20,20)}.lightbox .share-tab-img{display:block}.lightbox{top:50%;left:50%;transform:translate(-50%,-50%);position:fixed;z-index:10000;margin:auto;cursor:initial;width:auto!important}.lightbox img{margin:auto;padding-bottom:0;max-width:100vw!important;max-height:100vh!important;width:auto!important;height:auto!important;box-sizing:border-box}.lightbox__close{position:absolute;color:#fff;font-size:23px;border-radius:50%;width:40px;height:40px;line-height:40px;text-align:center;right:10px;top:13px;cursor:pointer}.lightbox--shown{display:block}.lightbox--shown h3,.lightbox--shown ul,.lightbox--shown p,.lightbox--shown blockquote{display:none}.lightbox--shown .media-caption p,.lightbox--shown .media-photo-credit p{display:table-cell}.lightbox--shown .image-media.media-caption{padding-right:10px;white-space:nowrap;max-width:450px;overflow:hidden;text-overflow:ellipsis;display:inline-block}.lightbox--shown .image-media.media-caption,.lightbox--shown .image-media.media-photo-credit{text-align:left;color:#BFBFBF;font-size:14px;line-height:16px;vertical-align:top}.lightbox--shown .image-media.media-caption a,.lightbox--shown .image-media.media-photo-credit a{vertical-align:top}.lightbox--shown .image-media.media-photo-credit{color:#737373;font-size:12px}@media print{.topbar,.huge-menu,.gdpr-cookie,.gated-popup,.rblad-ieee_welcome_interstitial,.rblad-ieee_infinite_leaderboard,.rblad-ieee_infinite_new,.rblad-ieee_in_content,.rblad-ieee_mobile_sticky,.top-leader-container,.container_feature_below,.around-the-web,.time-to-read,.like-button,.widget__shares,.user-prefs,.trending_stories_carousel,.trending-stories__headline-wrapper,.tags,.after_main_article_content,.trending_stories_row,.widget_column,.tag_column,.article__comments,.read_also_posts,.post-author-list,.lightbox_icon:before,.footer{display:none!important}html,body,.main,.all-content-wrapper{background:#FFF!important}body{position:absolute!important;top:0!important;left:0!important}.main{max-width:100%!important;width:100%!important;display:block!important;background-color:#FFF!important;position:relative;left:0;top:0}.all-content-wrapper{background-color:#FFF!important;border:none!important;position:relative!important;left:0!important;top:120px!important}.all-content-wrapper:before{width:100%!important;border-bottom:1px solid black!important;height:100px!important;display:block;position:absolute;left:0;top:-120px!important;-webkit-print-color-adjust:exact;print-color-adjust:exact;z-index:999;background-repeat:no-repeat;background-size:contain;content:"";background-image:url(https://assets.rbl.ms/32925844/origin.png)}.widget__head,.widget__body:first-child,.widget__body:last-child{width:100%!important;background:#FFF!important}.widget__headline,.widget__subheadline{color:#000!important;text-transform:none!important;padding-bottom:0!important;border-bottom:none!important;padding:0!important}.all-related-sections,.social-author,.social-date{padding:0!important}.all-related-sections a[href*="/topic/"],.all-related-sections a[href*="/type/"]{border:none!important;color:#000!important;padding:0 16px 0 0!important;margin-right:0!important}.social-author:before,.social-author__name,.social-date{color:#000!important}.photo-credit{color:#000!important}.body-description{max-width:100%!important;width:100%!important}*{color:#000!important;border:none!important;box-shadow:none!important;text-shadow:none!important}*:after,*:before{color:#000!important;border:none!important}.rebellt-item{display:block;clear:both;width:100%;height:auto}.article_column{width:100%!important;border:none!important}.featured_columns{border:none!important;margin:0!important;padding:0!important}.posts-custom .posts-wrapper .widget{padding:0!important}.current_post_content{width:100%!important;padding:0!important}.row-wrapper,.rm-col-center{margin:0!important;padding:0!important}@page{size:8.5in 11in;margin:2cm;margin-bottom:30mm!important}.embed-media,.widget__body{break-inside:avoid;break-after:always;width:600px!important;height:auto}body,.posts-wrapper,.row,.row.px10{background:#FFF!important}img{break-inside:avoid!important;display:block!important;max-width:100%!important}.body-description a,.body-description a u{text-decoration-color:#8f8f8f!important;text-underline-offset:1px!important;text-decoration-thickness:1px!important}.fullwidth_post .widget__subheadline-text:before,.featured_post .widget__subheadline-text:before,.article_post .widget__subheadline-text:before,.story_teaser .widget__subheadline-text:before{-webkit-print-color-adjust:exact;print-color-adjust:exact}h2,h3,h4,h5,h6{break-after:avoid}ul,ol,img,table{break-inside:avoid}.body-description>p:first-child:first-line ,.body-description div:not(.content-container) p:first-child:first-line {font-weight:800!important;text-transform:uppercase!important;font-family:"Favorit-Pro"!important}.body-description>p:first-child:first-letter ,.body-description div:not(.content-container) p:first-child:first-letter {font-size:120px!important;float:left!important;font-family:"Favorit-Pro"!important;font-weight:400!important;margin:42px 16px 16px 0!important}.post__last-point,.ieee-end-mark{background-color:#343434}.body-description,.widget__body,.ieee-sidebar-large,.ieee-sidebar-medium,.ieee-sidebar-small{margin:0!important;padding:0!important}.rm-resized-container-25 img{width:600px!important;height:auto;float:none;clear:both;display:block!important}.rm-float-left{float:none!important;clear:both}.pull-quote:before,.ieee-pullquote:before,.ieee-pullquote-fullwidth:before,.ieee-pullquote-left:before{filter:brightness(0%);-webkit-print-color-adjust:exact;print-color-adjust:exact}}.comment--item-toolbar{padding:10px;}.comment--item-text-field .ProseMirror:focus{outline:none;}.comment--item-text-field .ProseMirror-menubar{background:transparent;border:0px;bottom:-37px !important;box-shadow:none;display:inline-block;min-height:22px;left:7px !important;padding:0px !important;position:absolute !important;right:auto;top:auto !important;visibility:visible !important;width:auto !important;}.comment--item-text-field .ProseMirror-icon.ProseMirror-menu-active{outline:0;background-color:#ccc;color:#444;}.comment--item-text-field .ProseMirror-menuitem div:hover{background-color:#1f78d8;color:#fff;outline:0;}.comment--item-word-count{color:#666;font-size:0.9em;text-align:right;padding-bottom:8px;}.comment-headline{font-size:21px;margin:20px 0;font-family:"Helvetica Neue","Montserrat","Helvetica","sans-serif";font-weight:400;display:block;}.sub-headline{margin:4px 0 21px;font-size:14px;color:#666;display:block;}.comment-sort{font-size:13px;}.comment-sort select{margin-left:4px;}.comment-header{display:flex;justify-content:space-between;padding:10px 0 10px;}.comment--login--feedback{border-radius:4px;color:#333;font-size:13px;line-height:16px;margin:10px auto 10px;max-width:210px;padding:10px;text-align:center;}.comment--login--feedback.errors{background:#fbd3d3;}.comment--login--success{background-color:#dff2bf;color:#4f8a10;}.talk-comments-wrp .edit-mode .site-avatar:before{content:"Optimum size is 100x100px";font-size:13px;width:196px;display:block;text-align:left;margin:0 0 0 -26px;color:#696969;}.avatar-list{list-style:none;margin:0;padding:0;}.avatar-list li{display:inline-block;margin:0 2px;}.avatar-list .avatar-list--item-image{position:relative;z-index:3;}.avatar-list li img{width:38px;height:38px;border-radius:50%;border:2px solid transparent;box-shadow:1px 1px 1px #ccc;cursor:pointer;}.talk-linked-comment .comment--item,.talk--messages .comment--item{border-bottom:1px solid #e5e6e6;margin:0;position:relative;padding:10px 0 0 10px;}.talk-linked-comment{border:1px dashed #8dabea;position:relative;margin:0;background:transparent;}.reply-items .comment--item{border:none;padding:0;}.comment--item .comment--item--short-bio,.comment--item .talk_review,.comment--item .author-rating{font-size:12px;color:#848282;padding:3px 0;}.comment--item .material-icons{font-size:12px;vertical-align:middle;direction:rtl;overflow:hidden;}.comment-item .author-rating .wrapper__post_rating--disabled{color:#777;}.comment--item .author-rating .material-icons{color:#ffc000;}.author-rating{cursor:pointer;}.reply-items .comment--item{padding:inherit;}.comment--item{-webkit-animation:fadeInFromNone 0.3s ease-in-out;-moz-animation:fadeInFromNone 0.3s ease-in-out;-o-animation:fadeInFromNone 0.3s ease-in-out;animation:fadeInFromNone 0.3s ease-in-out;}@keyframes fadeInFromNone{0%{display:none;opacity:0;}100%{display:block;opacity:1;}}.comment--item-avatar{float:left;}.comment--item-avatar img{width:38px;height:38px;border-radius:50%;margin:0 10px 0 0;}.comment--item-avatar img[src='https://www.rebelmouse.com/res/avatars/default']{content:url(https://assets.rbl.ms/18273603/2000x.png);}.comment--item-avatar.editable img:hover{opacity:0.2;}.comment--item-avatar.editable .avatar_edit_text{display:none;}.comment--item-avatar.editable img:hover .avatar_edit_text{display:block;}.comment--item-text{overflow:hidden;background:transparent;padding:7px 9px 10px;border-radius:5px;margin-bottom:0;}.material-icons.status-featured,.material-icons.status-proposed,.material-icons.status-rejected{display:none;position:absolute;right:10px;top:10px;font-size:20px;vertical-align:middle;}.featured-comment .status-featured.selected{display:block;}.proposed-comment .status-proposed.selected{display:block;}.rejected-comment .status-rejected.selected{display:block;}.status-rejected,.status-rejected:hover{color:#b15252;}.status-proposed,.status-proposed:hover{color:#adaba9;}.status-featured,.status-featured:hover{color:#f8bb1d;}.talk--messages__featured .featured-comment{background-color:#fefcf2;}.talk__author__add{margin:10px 0 0 0;}.talk__author__add .input__star_rating{margin:-6px 0 8px 0;}.comment--item-text-input{background:#ffffff;border:2px solid #eeeeee;border-radius:4px;padding:13px 0 0;font-size:20px;overflow:hidden;margin:0 0 10px;}.comment--item-text-field{min-height:44px;padding:0 10px;font-size:15px;color:#333;}.comment--item-text-field:focus{outline:none;box-shadow:none;}.comment--item-text-field.message:before{content:"Add comment...";color:#999;}.comment--item-text-field.reply:before{content:"Reply";color:#999;}.comment--item-text-field.reply:focus:before,.comment--item-text-field.message:focus:before{content:none;}.comment--item-toolbar{background:#f1f1f1;text-align:right;padding:5px;}.comment-item--publish{background:#1c2a50;display:inline-block;line-height:26px;color:#fff;padding:0 15px;border-radius:4px;text-decoration:none;text-transform:uppercase;font-size:12px;}.comment-item--publish:hover{background:#3984b9;color:#fff;}.comment--item-username{text-transform:uppercase;padding-right:10px;font-weight:500;font-size:13px;}.comment--item-date{color:#999;font-size:12px;white-space:nowrap;position:absolute;right:45px;margin:3px 0 0 0;}.comment--item-text .follow-wrapper{display:inline-block;vertical-align:middle;}.comment--item--action{padding-bottom:0;display:flex;justify-content:space-between;}.comment--item--action a{font-size:12px;color:#999;text-transform:uppercase;text-decoration:none;margin-right:10px;display:inline-block;}.comment--item--action .admin-controls a{margin-right:0;margin-left:5px;}.comment--item--action .selected{color:#4667be;}.action__featured.selected,.action__approved.selected{color:#479ad2;}.action__rejected.selected{color:#ff3f7f;}.comment--item--action .comment--item__share{margin-right:15px;}.comment--item--action .comment--item__tooltip_share-wrp{position:absolute;top:auto;left:106px;margin:-33px 0 0 16px;background-color:#fff;border-radius:4px;box-shadow:inset 0 0 0 1px #d4d6d7,0 2px 2px 0 rgba(0,0,0,0.1);padding:10px;z-index:1000;}.comment--item--action .comment--item__tooltip_share-wrp:focus{outline:none;}.comment--item--action .comment--item__tooltip_share{padding:0;}.comment--item--action .comment--item__tooltip_share a{margin:0;padding:0 5px;}.comment--item--action .comment--item__tooltip_share .share-tw,.comment--item--action .comment--item__tooltip_share .share-fb{background:#fff;}.comment--item__copyed-link{color:#999;font-size:12px;}.comment--item--action a:hover{color:#1c2a50;}.comment--item--action .material-icons{font-size:17px;vertical-align:middle;}.comment--item--action .comment-action-icon{fill:currentColor;font-size:17px;vertical-align:middle;}.comment--item--action .comment--item--menu svg{fill:#999;}.comment--item--action .comment-action-icon:hover{fill:#1c2a50;}.action__featured.selected .comment--item--action,.action__approved.selected .comment--item--action{fill:#479ad2;}.status-featured.selected svg{fill:#f8bb1d;}.status-rejected.selected svg,.action__rejected.selected .comment--item--action{fill:#ff3f7f;}.comment--item-message{padding:0;border-radius:4px;font-size:14px;margin:5px 0;line-height:20px;}.comment--item-message p{margin:0;}.comment--hide--replies{display:block;text-transform:capitalize;margin:0;}.level-two{margin-left:40px;margin-top:20px;}.comment--item-reply-to{color:#999;font-size:12px;padding:0 10px;}.comment--item-reply-to .material-icons{vertical-align:middle;font-size:17px;}.comment--login,.comment--signup,.comment--reset,.comment--otp{text-align:center;border:2px solid #eeeeee;background:#fff;border-radius:4px;max-width:50%;margin:0 auto 20px;padding:30px;position:relative;}.comment--login--close{position:absolute;right:10px;top:10px;color:#ccc;cursor:pointer;}.comment--login-headline{font-size:25px;padding:0 0 15px;}.comment--done-button,.comment--signup-button,.comment--login-button,.comment--reset-button{background:#1c2a50;display:block;line-height:36px;color:#fff;padding:0 15px;border-radius:4px;text-decoration:none;text-transform:uppercase;font-size:12px;width:200px;margin:0 auto;}.comment--done-button:disabled{opacity:0.5;}.comment--login-field{width:196px;padding:0 15px;border-radius:4px;border:2px solid #eeeeee;display:block;line-height:30px;margin:0 auto 10px;font-size:14px;}.comment--login-field.required{background:#ffe4e1;}.comment--login-headline-subheadline{margin:10px 0 15px;position:relative;}.comment--signup .avatar-list,.comment--login .avatar-list{margin:0 0 15px;}.comment--signup .avatar-list .active img,.comment--login .avatar-list .active img{border:2px solid #1c2a50;}.comment--signup .avatar-list .avatar-list--item:hover img,.comment--login .avatar-list .avatar-list--item:hover img{border:2px solid #1c2a50;}.comment--item-text-field{position:relative;}.avatar-list--item-info{position:relative;background:#ffffff;border:4px solid #f7f7f7;min-width:150px;text-align:center;padding:10px;}.avatar-list--item-info:after,.avatar-list--item-info:before{bottom:100%;left:50%;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none;}.avatar-list--item-info:after{border-color:rgba(255,255,255,0);border-bottom-color:#ffffff;border-width:12px;margin-left:-12px;}.avatar-list--item-info:before{border-color:rgba(247,247,247,0);border-bottom-color:#f7f7f7;border-width:18px;margin-left:-18px;}.avatar-list--item-drop-down{position:absolute;left:-67px;top:55px;display:none;}.avatar-list--item:hover .avatar-list--item-drop-down{display:block;}.avatar-list--username{text-transform:uppercase;font-size:12px;font-weight:bold;margin:8px 0 2px 0;}.avatar-list--role{font-size:14px;}.avatar-list--rating .material-icons{font-size:16px;margin:10px 0 0 0;color:#edb823;}.comment-text-wrapper .redactor-toolbar{bottom:-52px !important;left:7px !important;top:auto !important;visibility:visible !important;width:auto !important;display:inline-block;right:auto;background:transparent;box-shadow:none;}.comment-text-wrapper .redactor-box{margin:0;padding:0 0 0 10px;}.comment-text-wrapper .redactor-box .redactor-placeholder:after{top:0;}.comment--show--replies{text-transform:capitalize;display:block;margin-bottom:0;}.comment--hide--replies i.material-icons,.comment--show--replies i.material-icons{font-size:16px;vertical-align:middle;}.talk--load_more__replies,.comment--show--replies,.comment--hide--replies{text-align:center;position:relative;background:#fff;z-index:999;display:inline-block;border:1px solid #e5e6e6;border-radius:4px;padding:0 11px 0 4px;line-height:22px;font-size:11px;color:#666;cursor:pointer;}.replies{position:relative;text-align:center;}.reply-items{text-align:left;padding:10px 0;}.replies.level-two{margin-top:-10px;margin-bottom:-11px;padding-left:0;}.comment--login--message{font-size:12px;padding:8px 0 0;}.comment--login--message a{color:#0a7cc4;text-decoration:underline;}.comment--login--message a:hover{text-decoration:none;}.comment--login--message.requirements{color:#ed143d;}.flip-horizontal{-moz-transform:scaleX(-1);-webkit-transform:scaleX(-1);-o-transform:scaleX(-1);transform:scaleX(-1);-ms-filter:fliph;filter:fliph;}.flip-vertical{-moz-transform:scaleY(-1);-webkit-transform:scaleY(-1);-o-transform:scaleY(-1);transform:scaleY(-1);-ms-filter:flipv;filter:flipv;}.comment--item--menu{display:inline-block;padding:0 0 0 12px;}.comment--item--menu .material-icons{font-size:17px;color:#666;cursor:pointer;}.comment--item--menu--drop-down{position:absolute;background:#fff;top:auto;bottom:25px;z-index:99;width:auto;right:1px;padding:9px 18px;box-shadow:0 1px 5px #ccc;line-height:23px;color:#666;text-transform:capitalize;font-size:12px;display:none;}.comment--item--action .comment--item--menu--drop-down a{text-transform:none;white-space:nowrap;margin:0;}.comment--item--menu:hover .comment--item--menu--drop-down{display:block;}.comment--signup .community-site-logo{width:90px;height:90px;border-radius:50%;background-size:cover;background-position:center;margin:0 auto 5px;}.comment--signup .site-avatar-edit{min-height:150px;}.comment--signup .site-avatar .input-data{display:none;}.community-site-logo .hover-menu.edit{background:url("/static/img/sprites/icons-buttons.png?3") -125px -214px;width:72px;height:72px;border-radius:50%;font-size:0;vertical-align:top;}.comment--login-headline-subheadline .fake-input{display:block;width:80px;height:140px;overflow:hidden;z-index:99;left:0 !important;opacity:0;position:absolute;margin:0 auto !important;right:0;top:-115px !important;}.comment--item-avatar .comment--login-headline-subheadline .fake-input{width:60px;height:60px;top:-60px !important;}.comment--login-headline-subheadline .fake-input input,.comment--login-headline-subheadline .fake-input input::-webkit-file-upload-button{cursor:pointer;}.comment--signup .fake-input input{display:none;}.talk-comments-wrp .community-site-logo .edit-mode .image-by-url{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;padding:17px 15px 17px;vertical-align:top;font:18px "PT Sans",Tahoma,sans-serif;width:250px;}.community-site-logo .edit-mode .site-avatar{max-width:600px;max-height:none;margin:0 auto;}.community-site-logo .edit-mode .avatar-form{display:inline-block;}.talk-comments-wrp .community-site-logo .edit-mode .or{color:#a8a8a8;padding:0 11px;text-transform:uppercase;}.talk-comments-wrp .community-site-logo .edit-mode .buttons{padding:83px;}.talk-comments-wrp .community-site-logo .edit-mode .add-image-by-src{padding:18px 21px 17px;}.talk-comments-wrp .community-site-logo .edit-mode .add-image-by-src .upload-arrow{margin:4px 0 3px;display:block;height:12px;width:12px;background-image:url("/static/img/roar/icons.png?31");background-position:-382px -135px;background-size:458px 225px;}.talk-comments-wrp .community-site-logo .edit-mode .ch-cover-upload,.talk-comments-wrp .community-site-logo .edit-mode .buttons .btn{width:175px;margin:0 5px;background:#5d97ce;color:#fff;padding:5px 10px;border-radius:3px;font-size:12px;text-transform:uppercase;}.talk-comments-wrp .community-site-logo .edit-mode label{margin:20px 0 35px;font-size:24px;}.community-native-js-wrp .disabled,.community-native-wrp .disabled{opacity:0.6;}.comment--item--action a.disabled{opacity:0.5;cursor:progress;}.talk--load_more-wrp{text-align:center;}.talks--load_more{background:#8db7e0;border:1px solid #8db7e0;border-radius:3px;color:white;cursor:pointer;font-size:13px;font-weight:500;padding:0;text-transform:uppercase;line-height:35px;position:relative;z-index:1;margin:30px 0 0 0;text-align:center;}.talks--load_more:hover{background:#5e99d4;}.community-site-logo.logo-preview .circle-loader{margin:0 auto;height:85px;width:85px;}.community-native-wrp .circle-loader-box{background:rgba(255,255,255,0.9);z-index:7;min-height:200px;display:flex;justify-content:center;align-items:center;margin-top:-60px;}.community-native-wrp .circle-loader{border:2px solid rgba(0,0,0,0.2);border-left-color:#479ad2;animation-name:loader-spin;animation-duration:1s;animation-iteration-count:infinite;animation-timing-function:linear;position:relative;display:block;vertical-align:top;margin:0;}.community-native-wrp .circle-loader,.community-native-wrp .circle-loader:after{border-radius:50%;width:40px;height:40px;}.community-native-wrp .comment--item-avatar.editable .circle-loader,.community-native-wrp .comment--item-avatar.editable .circle-loader:after{margin-top:-40px;width:38px;height:38px;margin-left:-2px;}@keyframes loader-spin{0%{transform:rotate(0deg);}100%{transform:rotate(360deg);}}@keyframes checkmark{0%{height:0;width:0;opacity:1;}20%{height:0;width:2em;opacity:1;}40%{height:4em;width:2em;opacity:1;}100%{height:4em;width:2em;opacity:1;}}@media only screen and (max-width:768px){.replies.level-two{margin-top:0;margin-bottom:0;padding-left:0;}.comment--login,.comment--signup{max-width:100%;}}.comment_placeholder-wrp{background:#f1f1f1;width:100%;height:94px;}.animated-background{animation-duration:1s;animation-fill-mode:forwards;animation-iteration-count:infinite;animation-name:placeHolderShimmer;animation-timing-function:linear;background:#f6f7f8;background:linear-gradient(to right,#eeeeee 8%,#dddddd 18%,#eeeeee 33%);background-size:800px 104px;height:94px;position:relative;border-radius:4px;padding-top:1px;}.placeholder__textarea_top{background:white;height:15px;margin:2px 2px 0 2px;}.placeholder__textarea_botmiddle_left{background:white;height:20px;margin:0 2px;width:10px;display:inline-block;}.placeholder__textarea_botmiddle_right{background:white;height:20px;margin:-28px 2px 0 117px;}.placeholder__textarea_bottom{background:white;height:15px;margin:0 2px 2px 2px;}.placeholder__button_b{background:#dadada;height:26px;width:20px;border-radius:4px;margin-top:6px;margin-bottom:8px;margin-left:19px;display:inline-block;}.placeholder__button_i{background:#dadada;height:26px;width:20px;border-radius:4px;margin-top:6px;margin-bottom:8px;margin-left:19px;display:inline-block;}.placeholder__button_publish{background:#1c2a50;height:26px;margin:0 2px 2px 2px;opacity:0.5;width:83px;border-radius:4px;margin-top:6px;float:right;margin-right:5px;margin-bottom:8px;}@keyframes placeHolderShimmer{0%{background-position:-468px 0;}100%{background-position:468px 0;}}.talk--messages .follow-button,.comment--item .comment--user-follow{color:#479ad2;font-size:14px;text-align:center;width:auto;border-radius:0;background:none;transition:unset;text-indent:unset;font-weight:bold;margin:0;height:17px;position:static;border:0;cursor:pointer;}.talk--messages .follow-button:hover{background:none;opacity:0.6;}.talk__review{font-weight:900;padding:8px 0;}.talk__review .wrapper__post_rating{cursor:default;}.input__post_rating_total{font-weight:900;padding:0 12px;}.input__post_rating_count{font-weight:400;}.wrapper__post_rating{cursor:pointer;}.wrapper__post_rating--disabled{cursor:default;}.input__post_rating_item svg,.input__post_rating_item--active svg{vertical-align:middle;fill:#ffc000;width:18px;height:18px;}.wrapper__post_rating--disabled i svg{fill:#777;}.input__post_rating_item .icon__star_empty,.input__post_rating_item--active .icon__star_full{display:inline;}.input__post_rating_item--active .icon__star_empty,.input__post_rating_item .icon__star_full{display:none;}.talk__author__add .talk__avatar .comment--item-avatar .fake-input{width:40px;}.comment--item-text .wrapper__post_rating--disabled i svg{height:12px;width:12px;} </style><script class="rm-i-script"> window.REBELMOUSE_LOW_TASKS_QUEUE.push(function() { window.REBELMOUSE_STDLIB.loadExternalStylesheet("/static/css-build/roar/runner/social-ux-non-critical.css?v=rmxassetse8b874e39b339059e338b461576785bb", function(){ document.body.classList.add("rm-non-critical-loaded"); }); }); </script><script class="rm-i-script"> var __RUNNER_PUBLIC__ = { root: '#runner-root', events: { PAGE_VIEW: 'page_view.url_change.listicle_switch_page', URL_CHANGE_PAGE_VIEW: 'page_view.url_change', LISTICLE_CHANGE_PAGE_VIEW: 'page_view.listicle_switch_page' } } </script><script class="rm-i-script"> window.__rebelmouseJsBaseUrl = "/static/js-build/"; window.__rebelmousePrimaryColor = "#FF4C00"; </script><link rel="apple-touch-icon" href="https://assets.rebelmouse.io/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpbWFnZSI6Imh0dHBzOi8vYXNzZXRzLnJibC5tcy8yNjU5NjY0OS9vcmlnaW4ucG5nIiwiZXhwaXJlc19hdCI6MTc4NTc0NjUwNn0.pFbPADvK9fyfasig9FMci3xf6UeB_WJaER5Yea_eRpI/img.png?width=192&height=192" sizes="192x192"/><link rel="icon" type="image/png" href="https://assets.rebelmouse.io/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpbWFnZSI6Imh0dHBzOi8vYXNzZXRzLnJibC5tcy8yNjU5NjY0OS9vcmlnaW4ucG5nIiwiZXhwaXJlc19hdCI6MTc4NTc0NjUwNn0.pFbPADvK9fyfasig9FMci3xf6UeB_WJaER5Yea_eRpI/img.png?width=48&height=48" sizes="48x48"/><meta property="article:published_time" content="2024-02-08T15:44:20+00:00"/><meta property="article:modified_time" content="2024-03-25T17:23:47+00:00"/><meta property="article:author" content="https://www.facebook.com/48576411181"/><link rel="amphtml" href="https://spectrum.ieee.org/amp/lean-software-development-2667183018"/><script type="application/json" data-abtest-name="test" data-abtest-value="cta-climate-tech"></script><script type="application/json" data-abtest-name="test" data-abtest-value="4"></script><script type="application/json" data-abtest-name="IEEE" data-abtest-value="bold"></script><script type="application/json" data-abtest-name="IEEE" data-abtest-value="2348"></script><script type="application/json" data-abtest-name="IEEE" data-abtest-value="2355"></script><script type="application/json" data-abtest-name="IEEE" data-abtest-value="2308"></script><script type="application/json" data-abtest-name="IEEE" data-abtest-value="2284"></script><script type="application/json" data-abtest-name="content" data-abtest-value="8"></script><script> window.postid = "2667183018"; window.category = ["", "magazine", "feature", "computing", "april"]; window.tags = ["coding", "software-bloat", "cybersecurity", "cloud-computing"]; window.custom_tags = ['coding', 'software bloat', 'cybersecurity', 'cloud computing', '~rmsc:rebelmouse-image:51411262', 'Technology & Computing', 'Hobbies & Interests', 'Music and Audio', 'Books and Literature', 'Business and Finance', 'Education', 'Health and Medical Services', 'Hobbies and Interests', 'Rock Music', 'Arts and Crafts', 'Musical Instruments', 'Workshops and Classes', 'Musical Instruments and Accessories', 'Classic Rock', 'Hard Rock', 'Soft Rock', 'Woodworking', 'Drawing and Sketching', 'Painting', 'Photography'] console.log('tags - ', window.custom_tags) </script><script type="application/json" data-abtest-name="IEEE" data-abtest-value="2200"></script><script type="application/json" data-abtest-name="test" data-abtest-value="greek"></script><script type="application/json" data-abtest-name="test" data-abtest-value="notification"></script><script type="application/json" data-abtest-name="content" data-abtest-value="fix"></script><script type="application/json" data-abtest-name="test" data-abtest-value="featurebylinemobile"></script><script type="application/json" data-abtest-name="IEEE" data-abtest-value="2308"></script><script type="application/json" data-abtest-name="test" data-abtest-value="4"></script><script type="application/json" data-abtest-name="test" data-abtest-value="supercomputing"></script><script type="application/json" data-abtest-name="IEEE" data-abtest-value="7"></script><script type="application/json" data-abtest-name="test" data-abtest-value="cssfixes"></script><script type="application/json" data-abtest-name="test" data-abtest-value="newassemblerclass"></script><script type="application/json" data-abtest-name="IEEE" data-abtest-value="2225"></script><script type="application/json" data-abtest-name="test" data-abtest-value="2"></script><script type="application/json" data-abtest-name="test" data-abtest-value="ieeesignout"></script><script type="application/json" data-abtest-name="test" data-abtest-value="usermenuosano"></script><script type="application/json" data-abtest-name="IEEE" data-abtest-value="1719"></script><script type="application/json" data-abtest-name="test" data-abtest-value="invention"></script><script type="application/json" data-abtest-name="anbar" data-abtest-value="off"></script><script type="application/json" data-abtest-name="anbar" data-abtest-value="on"></script><script type="application/json" data-abtest-name="IE" data-abtest-value="2184"></script><script type="application/json" data-abtest-name="ieee" data-abtest-value="1422"></script><script type="application/json" data-abtest-name="test" data-abtest-value="climatetech"></script><script type="application/json" data-abtest-name="IEEE" data-abtest-value="2288"></script><script type="application/json" data-abtest-name="IEEE" data-abtest-value="2201"></script><script type="application/json" data-abtest-name="test" data-abtest-value="footerfixes"></script><script type="application/json" data-abtest-name="ppid" data-abtest-value="link"></script><script type="application/json" data-abtest-name="test" data-abtest-value="audosano"></script><script type="application/json" data-abtest-name="test" data-abtest-value="140"></script><script type="application/json" data-abtest-name="pdf" data-abtest-value="button2"></script><script type="application/json" data-abtest-name="IEEE" data-abtest-value="7"></script><script type="application/json" data-abtest-name="IEEE" data-abtest-value="1843"></script><script type="application/json" data-abtest-name="IEEE" data-abtest-value="6"></script><meta name="google-site-verification" content="TL2pz9TZSlPds24a3mqZClMC79zWmgOKFwO4aYRjdXk"/><meta name="facebook-domain-verification" content="bgsalp9vtqx07wdoczkh2jq79qvonr"/><meta property="fb:pages" content="48576411181"/><meta name="google-site-verification" content="L-skWDKE3KKfxCj4MKcOwZUVoZ1L_MkSRLAsNxx-JIw"/><meta name="google-site-verification" content="CTQnzy87CzDH0ZMNer4KvBtvb7X0tiJoehjRFhqPCis"/><meta name="google-site-verification" content="TL2pz9TZSlPds24a3mqZClMC79zWmgOKFwO4aYRjdXk"/><script type="application/json" data-abtest-name="IE" data-abtest-value="2210"></script><script type="application/json" data-abtest-name="test" data-abtest-value="fixtrending"></script><script type="application/json" data-abtest-name="test" data-abtest-value="flourishfix"></script><script type="application/json" data-abtest-name="test" data-abtest-value="authormodule"></script><script type="application/json" data-abtest-name="ie" data-abtest-value="2210"></script><script type="application/json" data-abtest-name="test" data-abtest-value="keepreadingoff"></script><script type="application/json" data-abtest-name="IEEE" data-abtest-value="1922"></script><style class="rm-i-styles" id="custom-post-styles-2667183018"> </style><script type="application/json" data-abtest-name="final" data-abtest-value="3"></script><script type="application/json" data-abtest-name="test" data-abtest-value="spectrumcover"></script><script type="application/json" data-abtest-name="test" data-abtest-value="parsely-title"></script><meta name="parsely-title" content="Why Bloat Is Still Software’s Biggest Vulnerability"/><meta name="parsely-link" content="https://spectrum.ieee.org/lean-software-development"/><meta name="parsely-section" content="Computing"/><meta name="parsely-tags" content="coding,software bloat,cybersecurity,cloud computing,SpectrumType.Feature"/><script type="application/json" data-abtest-name="ieee" data-abtest-value="1436"></script><script type="application/json" data-abtest-name="test" data-abtest-value="oldarrows"></script><script type="application/json" data-abtest-name="promo" data-abtest-value="promo"></script><script type="application/json" data-abtest-name="test" data-abtest-value="popupsoff"></script><script type="application/json" data-abtest-name="test" data-abtest-value="combined"></script><script type="application/json" data-abtest-name="test" data-abtest-value="popupnew"></script><script type="application/json" data-abtest-name="test" data-abtest-value="socialpopupnew"></script><script class="rm-i-script"> (function() { var cookie = 'rebelmouse_abtests='; cookie += "v1:165477109-A:1,B:2"; document.cookie = cookie + '; Path=/; SameSite=None; Secure'; })(); </script><!--[if IE]> <script type="text/javascript" src="/static/js-build/libs/html5shiv/html5shiv.js"></script> <![endif]--></head><body class="logged-out-user section-computing"><div id="fb-root"></div><div id="runner-root"></div><div id="curtain" class="curtain"></div><nav class="menu-global"><div class="main-menu-wrapper"><div class="menu-global__search-form hide-tablet-and-desktop"><form action="/search/"><button type="submit" class="menu-global__submit fa fa-search" value="" aria-label="Submit"></button><input name="q" class="menu-global__text-input" type="text" placeholder="Search..." aria-label="Search"/></form></div><div class="divider hide-tablet-and-desktop"></div><div class="divider"></div><ul id="main-menu" class="main-menu"></ul></div></nav><div class="all-content-wrapper"><div class="main v-sep"><span class="js-brick-description hidden" data-name="Post"></span><div class="feature_wrapper" id="sPost_0_0_19_0_0_0_4_0"><div class="menu-overlay js-toggle" data-target="body" data-share-status-id="menu-toggle" data-toggle-class="menu-opened"></div><!-- User Code --><link rel="preload" as="style" onload="this.rel='stylesheet'" href="https://htlbid.com/v3/spectrum.ieee.org/rblbid.css"/><!-- End User Code --><!-- User Code --><script> window.PARSELY = window.PARSELY || {}; function isPublished(post){ return [0,1,2].includes(post.status) } window.PARSELY.autotrack = false; window.PARSELY.onload = function () { if(Object.keys(window.REBELMOUSE_BOOTSTRAP_DATA.post).length > 0 && !isPublished(window.REBELMOUSE_BOOTSTRAP_DATA.post)){ return; } var event = { url: location.href, urlref: document.referrer, js: 1 }; window.PARSELY.updateDefaults({ data: { level: localStorage.getItem("userMembershipStatus") || "anonymous" } }); window.PARSELY.beacon.trackPageView(event); }; </script><!-- End User Code --><!-- User Code --><!-- Google Tag Manager (noscript) --><noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-5WJB5X2" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript><!-- End Google Tag Manager (noscript) --><!-- End User Code --><span class="js-brick-description hidden" data-name="CSS Fonts"></span><span class="js-brick-description hidden" data-name="CSS Spectrum"></span><span class="viewport-css-anchor"></span><!-- User Code --><svg width="0" height="0" viewbox="0 0 20 20" fill="none" style="position: absolute"><mask id="xLogoMask" style="mask-type: alpha" maskunits="userSpaceOnUse" x="1" y="1" width="18" height="18"><path d="M15.1563 1.875H17.9141L11.8906 8.75781L18.9766 18.125H13.4297L9.08203 12.4453L4.11328 18.125H1.35156L7.79297 10.7617L1 1.875H6.6875L10.6133 7.06641L15.1563 1.875ZM14.1875 16.4766H15.7148L5.85547 3.4375H4.21484L14.1875 16.4766Z" fill="black"></path></mask></svg><!-- End User Code --><span class="viewport-css-anchor"></span><span class="js-brick-description hidden" data-name="CSS for Posts"></span><span class="viewport-css-anchor"></span><span class="js-brick-description hidden" data-name="CSS Article Components"></span><span class="js-brick-description hidden" data-name="CSS for Comments"></span><span class="viewport-css-anchor"></span><div class="topbar topbar--static" id="sTop_Bar_0_0_29_0_0_16"><div class="" id="sTop_Bar_0_0_29_0_0_16_0"><span class="js-brick-description hidden" data-name="Element Bar"></span><div class="dark_top_bar" id="sElement_Bar_0_0_7_0_0_1"><div class="" id="sElement_Bar_0_0_7_0_0_1_0"><div class="top_menu_links" id="sElement_Bar_0_0_7_0_0_1_0_0"><div class="list" id="sElement_Bar_0_0_7_0_0_1_0_0_0"><a class="list__item" href="https://www.ieee.org/" target="_blank">IEEE.org</a><a class="list__item" href="https://ieeexplore.ieee.org/Xplore/home.jsp" target="_blank">IEEE Xplore Digital Library</a><a class="list__item" href="https://standards.ieee.org/" target="_blank">IEEE Standards</a><a class="list__item" href="https://www.ieee.org/sitemap.html" target="_blank">More Sites</a></div></div><div class="" id="sElement_Bar_0_0_7_0_0_1_0_1"><div class="access_links" id="sElement_Bar_0_0_7_0_0_1_0_1_0_1_1"><div class="list" id="sElement_Bar_0_0_7_0_0_1_0_1_0_1_1_0"><a class="list__item" href="https://www.ieee.org/profile/public/createwebaccount/showCreateAccount.html?ShowMGAMarkeatbilityOptIn=true&sourceCode=spectrum&signinurl=https://spectrum.ieee.org/core/saml/main/login&url=https://spectrum.ieee.org/&autoSignin=Y&car=IEEE-Spectrum" target="_self">Sign In</a><a class="list__item" href="/st/join" target="_self">Join IEEE</a></div></div><div class="" id="sElement_Bar_0_0_7_0_0_1_0_1_1"><!-- User Code --><svg width="70px" height="21px" viewbox="0 0 70 21" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><defs><polygon id="path-1" points="0 0 21.3639449 0 21.3639449 21 0 21"></polygon></defs><g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"><g id="Light-/-IEEE-Bar-/-Signed-out-/-1376" transform="translate(-1274.000000, -14.000000)"><g id="Group-13" transform="translate(1274.000000, 14.000000)"><polygon id="Fill-1" fill="#FEFEFE" points="23.4111174 18.6889405 27.8363724 18.6889405 27.8363724 2.77905063 23.4111174 2.77905063"></polygon><polygon id="Fill-2" fill="#FEFEFE" points="29.7536549 18.6881005 29.7536549 2.77821061 41.9217005 2.77821061 41.9217005 5.8624668 34.17891 5.8624668 34.17891 9.14692664 41.3017712 9.14692664 41.3017712 12.2311828 34.17891 12.2311828 34.17891 15.6024442 41.9217005 15.6024442 41.9217005 18.6881005"></polygon><polygon id="Fill-3" fill="#FEFEFE" points="43.7923126 18.6881005 43.7923126 2.77821061 55.9603583 2.77821061 55.9603583 5.8624668 48.2175677 5.8624668 48.2175677 9.14692664 55.3418347 9.14692664 55.3418347 12.2311828 48.2175677 12.2311828 48.2175677 15.6024442 55.9603583 15.6024442 55.9603583 18.6881005"></polygon><polygon id="Fill-4" fill="#FEFEFE" points="57.8305486 2.77793061 57.8305486 18.6878205 70 18.6878205 70 15.6021642 62.2558037 15.6021642 62.2558037 12.2323028 69.3800707 12.2323028 69.3800707 9.14664663 62.2558037 9.14664663 62.2558037 5.8621868 70 5.8621868 70 2.77793061"></polygon><g id="Group-12"><g id="Group-7"><mask id="mask-2" fill="white"><use xlink:href="#path-1"></use></mask><g id="Clip-6"></g><path d="M20.9520644,9.85449953 L20.8930235,9.84469935 C19.0838421,8.61967703 17.3983653,7.23365178 15.8098843,5.66142314 L14.0555265,3.83578988 C13.3442244,3.05037557 12.6540084,2.18095973 11.9961242,1.35074461 L11.1976665,0.22232405 C11.099265,0.164923005 10.976966,0.0669212192 10.8687244,0.0375206836 C10.6339666,-0.0646811784 10.3795285,0.0571210406 10.1883485,0.202723693 L8.74184673,2.07875787 C6.42378906,4.93900998 3.67838782,7.60885862 0.684171419,9.65429588 C0.448007872,9.84049927 0.0951682866,10.0211026 0.0220700458,10.3235081 C-0.0566511366,10.596513 0.0853281388,10.8219172 0.256827858,10.9913202 C2.65360672,12.6363502 4.94776689,14.5907858 6.98748895,16.8168264 C7.35016869,17.1962333 7.64396739,17.5728401 7.99680697,17.9284466 C8.59424452,18.719461 9.29570648,19.5160755 9.84534902,20.364491 C10.0168487,20.5450943 10.0463692,20.8390996 10.3148646,20.9259012 C10.525725,20.9987026 10.785786,21.0477034 10.9868062,20.9259012 L11.1878263,20.7256976 C13.6675436,17.2256338 16.8149851,14.0825766 20.3293236,11.5429303 C20.6821632,11.2321246 21.3541047,11.1145225 21.3639449,10.5335119 C21.3386417,10.264707 21.182605,10.0015022 20.9520644,9.85449953 M18.5496626,10.7911166 C18.1476223,11.7879348 17.3337015,12.5831492 16.6238051,13.4525651 C15.0845249,15.1017951 13.4623062,16.6992242 11.6432846,17.9718474 C11.2763877,18.2322522 10.7815688,18.4702565 10.3401679,18.2658528 C9.00190778,17.56724 7.87450799,16.4248192 6.7035304,15.3860003 C5.34559001,14.1301774 3.98202667,12.6713508 2.95302836,11.142523 C2.80120893,10.9283191 2.75763114,10.6651143 2.76184834,10.3823091 C2.89398747,9.85449953 3.2566672,9.42049162 3.60107238,8.97668354 C4.81562776,7.43385543 6.30570729,5.96942875 7.80984416,4.63240439 C7.84498755,4.59740376 7.90824564,4.5232024 7.96306932,4.48960179 C8.60970761,3.93379167 9.25212869,3.44098269 9.92828741,2.95657386 C10.6339666,2.41056392 11.5209856,2.86417218 12.114206,3.36678134 C12.7369467,3.83998996 13.383585,4.37759975 13.9529079,4.9236097 L14.0555265,4.98241077 C15.6285445,6.43703727 17.0891035,8.05406673 18.2910073,9.76209785 C18.4864045,10.0603033 18.6579042,10.3963094 18.5496626,10.7911166" id="Fill-5" fill="#FEFEFE" mask="url(#mask-2)"></path></g><path d="M17.8685838,9.92786087 C16.3152462,7.68782006 14.2755241,5.70538394 12.1135031,3.97215236 C11.5554261,3.58154525 10.9087879,2.8983328 10.1876456,3.3869417 C7.9483091,4.92836978 5.79050526,7.01860786 4.05582778,9.15084671 C3.70298819,9.66885615 3.08587035,10.1616651 3.3656117,10.8504777 C3.56663186,11.3586869 4.01646719,11.7240936 4.30604868,12.1735018 C6.00698851,14.2091389 8.01719014,16.1089735 10.1145474,17.6364013 C11.0367098,18.221612 11.6931882,17.2751947 12.4087075,16.8397868 C13.8734838,15.6875658 15.2314242,14.2875403 16.5162664,12.9253155 L16.5162664,12.8917149 C17.0307655,12.2715036 17.5747851,11.6610924 17.9768254,10.9918802 C18.1525424,10.6642743 18.0653868,10.2162661 17.8685838,9.92786087 L17.8685838,9.92786087 Z M10.4477066,5.41697869 L10.6431039,4.79256731 L10.6684071,4.79256731 C11.0704474,5.9391882 11.4865451,7.08300904 11.9181059,8.21422965 L11.0549843,8.22962993 L11.0367098,8.33183179 L11.163226,11.4020877 L11.163226,11.4510886 C10.844124,11.5042896 10.4533296,11.4902893 10.1384449,11.4608888 L10.1145474,11.4258882 L10.2565266,8.26323054 L10.2565266,8.23943011 C10.0161459,8.21422965 9.71250703,8.23943011 9.46790907,8.21422965 L10.4477066,5.41697869 Z M9.93742469,15.6203646 C10.0217688,14.491944 10.0358262,13.4531251 10.0948671,12.3289046 C10.4912844,12.3695053 10.8356896,12.3541051 11.1969636,12.3401048 L11.2222668,12.4913076 L11.3642461,15.6301648 C10.8891076,15.698766 10.3844486,15.6595653 9.93742469,15.6203646 L9.93742469,15.6203646 Z M13.5501647,11.7058933 C11.492168,12.3443049 8.90420917,12.3149044 6.95304844,11.4608888 C6.60020885,11.2900857 6.15459073,11.0268809 6.03650896,10.6166734 C5.94794763,9.86485972 6.75624548,9.44905214 7.30588802,9.17604717 C7.62920717,9.03464459 7.95814925,8.87924176 8.31520604,8.8596414 C8.64836533,9.10324584 8.99698771,9.29924941 9.33998715,9.51765339 C8.67366857,9.69405661 7.87380512,9.84525936 7.56594907,10.5718726 C7.61936702,11.1248827 8.24632501,11.2998859 8.68350872,11.4370884 C10.2565266,11.8514959 11.9574665,11.7968949 13.4672263,11.250885 C13.7511848,11.0842819 14.2024259,10.8840783 14.1630653,10.4752708 C14.1138646,10.0356628 13.6092056,9.84105928 13.256366,9.70245676 C13.0412885,9.73185729 12.8346454,9.78085819 12.6336252,9.84525936 C12.5253836,9.54285385 12.432605,9.23484824 12.3046831,8.94224291 C12.9724074,9.1172461 13.638726,9.29924941 14.3289421,9.41965161 L14.3289421,9.43505189 C14.1869628,9.44905214 14.0309262,9.49805304 13.8931641,9.551254 L13.8931641,9.57645446 C14.2853643,9.77105801 14.8293839,10.0944639 14.8336011,10.6068732 C14.7422283,11.2270845 14.0604466,11.5098897 13.5501647,11.7058933 L13.5501647,11.7058933 Z" id="Fill-8" fill="#FEFEFE"></path><path d="M14.1946944,19.3564726 L14.1946944,19.1646691 L14.3141819,19.1646691 C14.3788457,19.1646691 14.467407,19.1716693 14.467407,19.2528707 C14.467407,19.3410724 14.4224235,19.3564726 14.3465138,19.3564726 L14.1946944,19.3564726 Z M14.1946944,19.4922751 L14.2748213,19.4922751 L14.4603783,19.8268812 L14.6613985,19.8268812 L14.4575669,19.4782749 C14.562997,19.4698747 14.6501526,19.4166737 14.6501526,19.2710711 C14.6501526,19.0890678 14.5278536,19.0302667 14.3226163,19.0302667 L14.0231946,19.0302667 L14.0231946,19.8268812 L14.1946944,19.8268812 L14.1946944,19.4922751 Z M15.0620331,19.429274 C15.0620331,18.9630655 14.7105992,18.6900605 14.3183991,18.6900605 C13.9233874,18.6900605 13.5719536,18.9630655 13.5719536,19.429274 C13.5719536,19.8954825 13.9233874,20.1670874 14.3183991,20.1670874 C14.7105992,20.1670874 15.0620331,19.8954825 15.0620331,19.429274 L15.0620331,19.429274 Z M14.8483613,19.429274 C14.8483613,19.7694802 14.6051691,19.9976843 14.3183991,19.9976843 L14.3183991,19.9962843 C14.0231946,19.9976843 13.7856254,19.7694802 13.7856254,19.429274 C13.7856254,19.0890678 14.0231946,18.8622636 14.3183991,18.8622636 C14.6051691,18.8622636 14.8483613,19.0890678 14.8483613,19.429274 L14.8483613,19.429274 Z" id="Fill-10" fill="#FEFEFE"></path></g></g></g></g></svg><!-- End User Code --></div></div></div></div><div class="topbar-sticky announcement-show" id="sTop_Bar_0_0_29_0_0_16_0_1"><div id="sTop_Bar_0_0_29_0_0_16_0_1_0" class="js-hidden-panel" data-offset="0"></div><div class="rebelbar-wrapper_static announcement-show" id="sTop_Bar_0_0_29_0_0_16_0_1_1"><span class="js-brick-description hidden" data-name="Announcement Bar"></span><div class="announcement-bar" id="sAnnouncement_Bar_0_0_0_0_0_0_1_0"><!-- User Code --><script> if (sessionStorage.getItem('anbarclose') || window.location.pathname == '/st/join') { document.querySelector('.rebelbar-wrapper_static').classList.toggle('announcement-show'); document.querySelector('.topbar-sticky ').classList.toggle('announcement-show'); document.querySelector('.topbar-sticky ').style.height = '64px'; document.querySelector('.section-frontpage .topbar-sticky ').style.height = '111px'; } </script><!-- End User Code --><!-- Formatted Text --><div class="formatted-text ql-editor"><p><a href="https://spectrum.ieee.org/special-reports/reinventing-invention/" rel="noopener noreferrer" target="_blank">See our latest special report, “Reinventing Invention: Stories From Innovation’s Edge”</a> →</p></div><!-- End Formatted Text --><div class="button-view button-view-hidden" id="sAnnouncement_Bar_0_0_0_0_0_0_1_0_2_1_1"><div class="text-element" id="sAnnouncement_Bar_0_0_0_0_0_0_1_0_2_1_1_0"><a class="color-inherit" href="https://spectrum.ieee.org/special-reports/reinventing-invention/" target="_blank">View →</a></div></div><!-- User Code --><a href="javascript:void(0);" class="icon-close announcement-close" onclick="sessionStorage.setItem('anbarclose',true); document.querySelector('.rebelbar-wrapper_static').classList.toggle('announcement-show'); document.querySelector('.topbar-sticky ').classList.toggle('announcement-show'); document.querySelector('.topbar-sticky ').style.height = '64px'; document.querySelector('.section-frontpage .topbar-sticky ').style.height = '111px';"> Close bar </a><!-- End User Code --></div><span class="js-brick-description hidden" data-name="__TopBar Second Bar"></span><div class="" id="s__TopBar_Second_Bar_0_0_41_0_0_0"><div class="site_logo" id="s__TopBar_Second_Bar_0_0_41_0_0_0_0"><!-- User Code --><a href="/" title="Spectrum Logo"><svg width="214px" height="30px" viewbox="0 0 214 30" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"><g id="Light-/-Sticky-Site-Header-/-1376" transform="translate(-33.000000, -17.000000)" fill="#0D0D0D" fill-rule="nonzero"><g id="IEEE-Spectrum-Logo" transform="translate(32.000000, 15.000000)"><g id="IEEESpectrum-LogoFinal-Black" transform="translate(1.454545, 2.909091)"><path d="M67.5731087,15.3769418 C67.7375958,17.1915012 68.9067885,18.8411007 71.9786975,18.8411007 C74.7749795,18.8411007 75.8285865,17.851341 75.8285865,16.3310345 C75.8285865,14.882062 74.9750314,14.1553466 73.3301597,13.923511 L68.5600317,13.3974225 C64.6123396,12.9515848 62.3361928,10.6911877 62.3361928,6.96398467 C62.3361928,2.83552769 65.4481122,6.3357346e-15 71.7475264,6.3357346e-15 C78.4915004,6.3357346e-15 81.1899792,3.23232323 81.4833887,7.133403 L75.7485657,7.133403 C75.5173945,5.38126088 74.2014972,4.22654127 71.7475264,4.22654127 C69.5247267,4.22654127 68.191047,5.11821665 68.191047,6.57164751 C68.191047,7.6907001 68.8489957,8.51549983 70.5294322,8.71612679 L74.7082955,9.16196447 C79.5095427,9.60780216 81.6834407,11.8994079 81.6834407,15.8495298 C81.6834407,20.1741553 78.984962,23.0765587 71.8764488,23.0765587 C64.6701324,23.0765587 62.1717056,19.3136886 61.9405344,15.390317 L67.5731087,15.3769418 Z" id="Path"></path><path d="M101.439684,14.266806 C101.439684,18.8544758 99.3013506,23.0141414 93.8821651,23.0141414 C91.0858831,23.0141414 89.2098403,21.9575061 88.102886,20.1741553 L88.102886,29.0909091 L82.456975,29.0909091 L82.456975,6.00543365 L88.1162228,6.00543365 L88.1162228,8.23462208 C89.2320682,6.48693835 91.1081111,5.46597005 93.8955019,5.46597005 C99.3013506,5.47934518 101.439684,9.53646813 101.439684,14.266806 Z M95.7804359,14.266806 C95.7804359,11.1994427 94.7935129,9.91097179 91.997231,9.91097179 C89.1031459,9.91097179 88.1162228,11.3287356 88.1162228,14.266806 C88.1162228,17.2048763 89.1031459,18.6226402 91.997231,18.6226402 C94.7935129,18.6092651 95.7804359,17.3207941 95.7804359,14.266806 Z" id="Shape"></path><path d="M114.367486,17.5214211 L119.862247,17.5214211 C119.302102,20.3569488 117.065965,23.0319749 111.077743,23.0319749 C104.364888,23.0319749 101.995384,18.7430164 101.995384,14.2222222 C101.995384,9.43838384 104.760546,5.47934518 111.077743,5.47934518 C117.790598,5.47934518 119.928931,9.73263671 119.928931,14.3203065 C119.934228,14.7845667 119.900021,15.2484337 119.826682,15.7068617 L107.490144,15.7068617 C107.819119,18.3462208 109.103897,19.2378962 111.211111,19.2378962 C112.887102,19.2378962 113.905144,18.5111808 114.367486,17.5214211 Z M107.556828,12.4076628 L114.563093,12.4076628 C114.367486,10.3256008 113.349444,9.20654824 111.144427,9.20654824 C109.103897,9.20654824 107.921368,10.031348 107.556828,12.4076628 Z" id="Shape"></path><path d="M129.811498,5.47934518 C135.764156,5.47934518 138.662686,8.84096134 138.791609,12.9649599 L133.247946,12.9649599 C133.083459,11.0211076 132.096536,9.89759666 129.895965,9.89759666 C127.52646,9.89759666 126.174998,10.954232 126.174998,14.2534309 C126.174998,17.5526297 127.459776,18.6092651 129.793716,18.6092651 C132.127655,18.6092651 133.119024,17.3207941 133.31463,15.4884013 L138.876075,15.4884013 C138.742707,19.4162313 136.013109,23.0141966 129.895965,23.0141966 C123.085307,23.0319749 120.520196,18.7251829 120.520196,14.266806 C120.520196,9.80842912 123.018623,5.47934518 129.811498,5.47934518 Z" id="Path"></path><path d="M141.77016,16.0011146 L141.77016,10.2542668 L138.876075,10.2542668 L138.876075,7.62382445 L142.228057,6.13472658 L144.566442,2.01072797 L147.429408,2.01072797 L147.429408,6.02326715 L151.901681,6.02326715 L151.901681,10.2542668 L147.429408,10.2542668 L147.429408,18.0163009 L151.3771,18.0163009 L151.3771,22.5014281 L148.380766,22.5014281 C143.348348,22.5014281 141.77016,20.2588645 141.77016,16.0011146 Z" id="Path"></path><path d="M164.304903,5.74238941 L164.304903,11.2529432 L162.299938,11.2529432 C159.565894,11.2529432 158.414484,12.5904563 158.414484,15.9030303 L158.414484,22.5014281 L152.755236,22.5014281 L152.755236,6.00543365 L158.263333,6.00543365 L158.263333,9.36259143 C158.921282,7.0174852 160.272744,5.73347266 162.935658,5.73347266 L164.304903,5.74238941 Z" id="Path"></path><path d="M182.989757,6.00543365 L182.989757,22.5014281 L177.330509,22.5014281 L177.330509,19.5009404 C176.281347,21.6454197 174.405304,23.0319749 171.511219,23.0319749 C167.198988,23.0319749 165.256261,20.3569488 165.256261,16.0367816 L165.256261,6.00543365 L170.915509,6.00543365 L170.915509,15.0470219 C170.915509,17.2762104 171.804629,18.4443051 173.81404,18.4443051 C176.014611,18.4443051 177.330509,16.9239986 177.330509,13.758551 L177.330509,6.00543365 L182.989757,6.00543365 Z" id="Path"></path><path d="M213.090909,12.4834552 L213.090909,22.5148032 L207.431661,22.5148032 L207.431661,13.3305468 C207.431661,11.2172762 206.613671,10.0625566 204.737628,10.0625566 C202.514828,10.0625566 201.479004,11.5159875 201.479004,14.7483107 L201.479004,22.5014281 L195.917559,22.5014281 L195.917559,13.3305468 C195.917559,11.2172762 195.095123,10.0625566 193.223526,10.0625566 C191.000726,10.0625566 189.964902,11.5159875 189.964902,14.7483107 L189.964902,22.5014281 L184.305654,22.5014281 L184.305654,6.00543365 L189.964902,6.00543365 L189.964902,8.8097527 C190.982944,6.76335772 192.725619,5.47934518 195.557466,5.47934518 C198.389312,5.47934518 200.163106,6.81685824 200.985542,9.13967259 C202.003585,6.91048415 203.812943,5.47934518 206.809277,5.47934518 C211.117063,5.47934518 213.090909,8.14991292 213.090909,12.4834552 Z" id="Path"></path><polygon id="Path" points="11.9408796 7.10219436 11.9408796 3.0450714 0 3.0450714 0 7.10219436 3.14303867 7.10219436 3.14303867 18.4086381 0 18.4086381 0 22.4702194 11.9408796 22.4702194 11.9408796 18.4086381 8.80228652 18.4086381 8.80228652 7.10219436"></polygon><polygon id="Path" points="18.8537864 18.4086381 18.8537864 14.467433 26.0378748 14.467433 26.0378748 10.6956461 18.8537864 10.6956461 18.8537864 7.10219436 26.9136579 7.10219436 26.9136579 3.0450714 18.8537864 3.0450714 13.1945386 3.0450714 13.1945386 22.4613027 13.1945386 22.4702194 27.0025699 22.4702194 27.0025699 18.4086381"></polygon><polygon id="Path" points="33.6487408 18.4086381 33.6487408 14.467433 40.8372748 14.467433 40.8372748 10.6956461 33.6487408 10.6956461 33.6487408 7.10219436 41.7086122 7.10219436 41.7086122 3.0450714 33.6487408 3.0450714 27.9939385 3.0450714 27.9939385 22.4613027 27.9939385 22.4702194 41.7975242 22.4702194 41.7975242 18.4086381"></polygon><polygon id="Path" points="48.4481407 18.4086381 48.4481407 14.467433 55.6322291 14.467433 55.6322291 10.6956461 48.4481407 10.6956461 48.4481407 7.10219436 56.5080121 7.10219436 56.5080121 3.0450714 48.4481407 3.0450714 42.7888928 3.0450714 42.7888928 22.4613027 42.7888928 22.4702194 56.5924785 22.4702194 56.5924785 18.4086381"></polygon></g></g></g></g></svg></a><!-- End User Code --><div class="topbar__sticky-headline topbar__sticky-headline--post" id="s__TopBar_Second_Bar_0_0_41_0_0_0_0_1_0_1"><div class="text-element" id="s__TopBar_Second_Bar_0_0_41_0_0_0_0_1_0_1_0">Why Bloat Is Still Software’s Biggest Vulnerability</div></div><!-- User Code --><span class="floating-shares hide-desktop">Share</span><!-- End User Code --><!-- User Code --><script> function createElementChangeListener(selector, callback, oneTime) { const initializedNodes = new Set([]); let reported = false; document.querySelectorAll(selector).forEach((node) => { if (oneTime && reported) { return; } reported = true; callback(node); initializedNodes.add(node); }); const mutationObserver = new MutationObserver(() => { const nodes = document.querySelectorAll(selector); nodes.forEach((node) => { if (oneTime && reported) { return; } if (!initializedNodes.has(node)) { reported = true; callback(node); initializedNodes.add(node); if (oneTime) { mutationObserver.disconnect(); } } }); }); if (!oneTime || !reported) { mutationObserver.observe(document.body, { childList: true, subtree: true, }); } return mutationObserver; } </script><!-- End User Code --><div class="topbar__static-headline" id="s__TopBar_Second_Bar_0_0_41_0_0_0_0_2"><div class="text-element" id="s__TopBar_Second_Bar_0_0_41_0_0_0_0_2_0">FOR THE TECHNOLOGY INSIDER</div></div></div><div class="" id="s__TopBar_Second_Bar_0_0_41_0_0_0_1"><div class="search-form"><form action="/search/"><label for="q" class="hide-text">Search: </label><input placeholder="Type to search" type="text" name="q" id="q" class="search-form__text-input"/><button aria-label="Search" type="submit" class="search-form__submit" value="Search"><svg width="18px" height="19px" viewbox="0 0 18 19" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"><g id="1376---Sample-Front-Page" transform="translate(-826.000000, -102.000000)" stroke="#0D0D0D" stroke-width="1.5"><g id="Light-/-Nav" transform="translate(816.857864, 96.000000)"><g id="Search-Icon" transform="translate(7.307612, 5.000000)"><path d="M11.631728,14.6819805 C15.2215789,14.6819805 18.131728,11.7718314 18.131728,8.18198052 C18.131728,4.59212964 15.2215789,1.68198052 11.631728,1.68198052 C8.04187711,1.68198052 5.13172798,4.59212964 5.13172798,8.18198052 C5.13172798,11.7718314 8.04187711,14.6819805 11.631728,14.6819805 Z M11.631728,14.5814755 L11.631728,21.5814755" id="Combined-Shape" transform="translate(11.631728, 11.631728) rotate(-45.000000) translate(-11.631728, -11.631728) "></path></g></g></g></g></svg></button></form></div><span class="js-brick-description hidden" data-name="Element Menu"></span><div class="main-menu-el" id="sElement_Menu_0_0_8_0_0_0"><div class="menu-item" id="sElement_Menu_0_0_8_0_0_0_0"><!-- User Code --><div class="menu-item__title">Explore by topic</div><!-- End User Code --><div class="menu-dropdown" id="sElement_Menu_0_0_8_0_0_0_0_1"><div class="list" id="sElement_Menu_0_0_8_0_0_0_0_1_0"><a class="list__item" href="/topic/aerospace/" target="_self">Aerospace</a><a class="list__item" href="/topic/artificial-intelligence/" target="_self">Artificial Intelligence</a><a class="list__item" href="/topic/biomedical/" target="_self">Biomedical</a><a class="list__item" href="/topic/climate-tech/" target="_self">Climate Tech</a><a class="list__item" href="/topic/computing/" target="_self">Computing</a><a class="list__item" href="/topic/consumer-electronics/" target="_self">Consumer Electronics</a><a class="list__item" href="/topic/energy/" target="_self">Energy</a><a class="list__item" href="/topic/tech-history/" target="_self">History of Technology</a><a class="list__item" href="/topic/robotics/" target="_self">Robotics</a><a class="list__item" href="/topic/semiconductors/" target="_self">Semiconductors</a><a class="list__item" href="/topic/telecommunications/" target="_self">Telecommunications</a><a class="list__item" href="/topic/transportation/" target="_self">Transportation</a></div></div></div></div><!-- User Code --><div data-share-status-id="huge-menu-toggle" data-toggle-class="huge-menu-opened" class="rebelbar__menu-toggle js-toggle hambg-btn" data-target="body"><svg width="32px" height="18px" viewbox="0 0 32 18" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"><g id="992---Search---Open-filters---selected" transform="translate(-928.000000, -75.000000)"><g id="Light-/-Collapsed-Site-Header" transform="translate(0.000000, 56.000000)"><g id="Light-/-Nav" transform="translate(432.857864, 12.000000)"><g id="Group" transform="translate(495.142136, 7.000000)"><rect id="Rectangle" x="0" y="0" width="32" height="2"></rect><rect id="Rectangle-Copy" x="0" y="8" width="32" height="2"></rect><rect id="Rectangle-Copy-2" x="0" y="16" width="32" height="2"></rect></g></g></g></g></g></svg></div><!-- End User Code --></div></div></div></div></div></div><div class="huge-menu" id="sTop_Bar_0_0_29_0_0_17"><span class="js-brick-description hidden" data-name="__Huge Menu Links"></span><div id="s__Huge_Menu_Links_0_0_35_0_0_1" class="dark_layout row-wrapper clearfix content sm-cp-2 md-cp-4"><div class="row px20"><div id="s__Huge_Menu_Links_0_0_35_0_0_1_0" class="Top_hugeMenu col sm-mb-2 md-mb-4 s12 m12 l12"><div class="" id="s__Huge_Menu_Links_0_0_35_0_0_1_0_0"><!-- User Code --><a href="/" class="hide-text">IEEE Spectrum<svg width="214px" height="30px" class="site_logo_menu" viewbox="0 0 214 30" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"><g id="Light-/-Sticky-Site-Header-/-1376" transform="translate(-33.000000, -17.000000)" fill="#F2F2F2" fill-rule="nonzero"><g id="IEEE-Spectrum-Logo" transform="translate(32.000000, 15.000000)"><g id="IEEESpectrum-LogoFinal-Black" transform="translate(1.454545, 2.909091)"><path d="M67.5731087,15.3769418 C67.7375958,17.1915012 68.9067885,18.8411007 71.9786975,18.8411007 C74.7749795,18.8411007 75.8285865,17.851341 75.8285865,16.3310345 C75.8285865,14.882062 74.9750314,14.1553466 73.3301597,13.923511 L68.5600317,13.3974225 C64.6123396,12.9515848 62.3361928,10.6911877 62.3361928,6.96398467 C62.3361928,2.83552769 65.4481122,6.3357346e-15 71.7475264,6.3357346e-15 C78.4915004,6.3357346e-15 81.1899792,3.23232323 81.4833887,7.133403 L75.7485657,7.133403 C75.5173945,5.38126088 74.2014972,4.22654127 71.7475264,4.22654127 C69.5247267,4.22654127 68.191047,5.11821665 68.191047,6.57164751 C68.191047,7.6907001 68.8489957,8.51549983 70.5294322,8.71612679 L74.7082955,9.16196447 C79.5095427,9.60780216 81.6834407,11.8994079 81.6834407,15.8495298 C81.6834407,20.1741553 78.984962,23.0765587 71.8764488,23.0765587 C64.6701324,23.0765587 62.1717056,19.3136886 61.9405344,15.390317 L67.5731087,15.3769418 Z" id="Path"></path><path d="M101.439684,14.266806 C101.439684,18.8544758 99.3013506,23.0141414 93.8821651,23.0141414 C91.0858831,23.0141414 89.2098403,21.9575061 88.102886,20.1741553 L88.102886,29.0909091 L82.456975,29.0909091 L82.456975,6.00543365 L88.1162228,6.00543365 L88.1162228,8.23462208 C89.2320682,6.48693835 91.1081111,5.46597005 93.8955019,5.46597005 C99.3013506,5.47934518 101.439684,9.53646813 101.439684,14.266806 Z M95.7804359,14.266806 C95.7804359,11.1994427 94.7935129,9.91097179 91.997231,9.91097179 C89.1031459,9.91097179 88.1162228,11.3287356 88.1162228,14.266806 C88.1162228,17.2048763 89.1031459,18.6226402 91.997231,18.6226402 C94.7935129,18.6092651 95.7804359,17.3207941 95.7804359,14.266806 Z" id="Shape"></path><path d="M114.367486,17.5214211 L119.862247,17.5214211 C119.302102,20.3569488 117.065965,23.0319749 111.077743,23.0319749 C104.364888,23.0319749 101.995384,18.7430164 101.995384,14.2222222 C101.995384,9.43838384 104.760546,5.47934518 111.077743,5.47934518 C117.790598,5.47934518 119.928931,9.73263671 119.928931,14.3203065 C119.934228,14.7845667 119.900021,15.2484337 119.826682,15.7068617 L107.490144,15.7068617 C107.819119,18.3462208 109.103897,19.2378962 111.211111,19.2378962 C112.887102,19.2378962 113.905144,18.5111808 114.367486,17.5214211 Z M107.556828,12.4076628 L114.563093,12.4076628 C114.367486,10.3256008 113.349444,9.20654824 111.144427,9.20654824 C109.103897,9.20654824 107.921368,10.031348 107.556828,12.4076628 Z" id="Shape"></path><path d="M129.811498,5.47934518 C135.764156,5.47934518 138.662686,8.84096134 138.791609,12.9649599 L133.247946,12.9649599 C133.083459,11.0211076 132.096536,9.89759666 129.895965,9.89759666 C127.52646,9.89759666 126.174998,10.954232 126.174998,14.2534309 C126.174998,17.5526297 127.459776,18.6092651 129.793716,18.6092651 C132.127655,18.6092651 133.119024,17.3207941 133.31463,15.4884013 L138.876075,15.4884013 C138.742707,19.4162313 136.013109,23.0141966 129.895965,23.0141966 C123.085307,23.0319749 120.520196,18.7251829 120.520196,14.266806 C120.520196,9.80842912 123.018623,5.47934518 129.811498,5.47934518 Z" id="Path"></path><path d="M141.77016,16.0011146 L141.77016,10.2542668 L138.876075,10.2542668 L138.876075,7.62382445 L142.228057,6.13472658 L144.566442,2.01072797 L147.429408,2.01072797 L147.429408,6.02326715 L151.901681,6.02326715 L151.901681,10.2542668 L147.429408,10.2542668 L147.429408,18.0163009 L151.3771,18.0163009 L151.3771,22.5014281 L148.380766,22.5014281 C143.348348,22.5014281 141.77016,20.2588645 141.77016,16.0011146 Z" id="Path"></path><path d="M164.304903,5.74238941 L164.304903,11.2529432 L162.299938,11.2529432 C159.565894,11.2529432 158.414484,12.5904563 158.414484,15.9030303 L158.414484,22.5014281 L152.755236,22.5014281 L152.755236,6.00543365 L158.263333,6.00543365 L158.263333,9.36259143 C158.921282,7.0174852 160.272744,5.73347266 162.935658,5.73347266 L164.304903,5.74238941 Z" id="Path"></path><path d="M182.989757,6.00543365 L182.989757,22.5014281 L177.330509,22.5014281 L177.330509,19.5009404 C176.281347,21.6454197 174.405304,23.0319749 171.511219,23.0319749 C167.198988,23.0319749 165.256261,20.3569488 165.256261,16.0367816 L165.256261,6.00543365 L170.915509,6.00543365 L170.915509,15.0470219 C170.915509,17.2762104 171.804629,18.4443051 173.81404,18.4443051 C176.014611,18.4443051 177.330509,16.9239986 177.330509,13.758551 L177.330509,6.00543365 L182.989757,6.00543365 Z" id="Path"></path><path d="M213.090909,12.4834552 L213.090909,22.5148032 L207.431661,22.5148032 L207.431661,13.3305468 C207.431661,11.2172762 206.613671,10.0625566 204.737628,10.0625566 C202.514828,10.0625566 201.479004,11.5159875 201.479004,14.7483107 L201.479004,22.5014281 L195.917559,22.5014281 L195.917559,13.3305468 C195.917559,11.2172762 195.095123,10.0625566 193.223526,10.0625566 C191.000726,10.0625566 189.964902,11.5159875 189.964902,14.7483107 L189.964902,22.5014281 L184.305654,22.5014281 L184.305654,6.00543365 L189.964902,6.00543365 L189.964902,8.8097527 C190.982944,6.76335772 192.725619,5.47934518 195.557466,5.47934518 C198.389312,5.47934518 200.163106,6.81685824 200.985542,9.13967259 C202.003585,6.91048415 203.812943,5.47934518 206.809277,5.47934518 C211.117063,5.47934518 213.090909,8.14991292 213.090909,12.4834552 Z" id="Path"></path><polygon id="Path" points="11.9408796 7.10219436 11.9408796 3.0450714 0 3.0450714 0 7.10219436 3.14303867 7.10219436 3.14303867 18.4086381 0 18.4086381 0 22.4702194 11.9408796 22.4702194 11.9408796 18.4086381 8.80228652 18.4086381 8.80228652 7.10219436"></polygon><polygon id="Path" points="18.8537864 18.4086381 18.8537864 14.467433 26.0378748 14.467433 26.0378748 10.6956461 18.8537864 10.6956461 18.8537864 7.10219436 26.9136579 7.10219436 26.9136579 3.0450714 18.8537864 3.0450714 13.1945386 3.0450714 13.1945386 22.4613027 13.1945386 22.4702194 27.0025699 22.4702194 27.0025699 18.4086381"></polygon><polygon id="Path" points="33.6487408 18.4086381 33.6487408 14.467433 40.8372748 14.467433 40.8372748 10.6956461 33.6487408 10.6956461 33.6487408 7.10219436 41.7086122 7.10219436 41.7086122 3.0450714 33.6487408 3.0450714 27.9939385 3.0450714 27.9939385 22.4613027 27.9939385 22.4702194 41.7975242 22.4702194 41.7975242 18.4086381"></polygon><polygon id="Path" points="48.4481407 18.4086381 48.4481407 14.467433 55.6322291 14.467433 55.6322291 10.6956461 48.4481407 10.6956461 48.4481407 7.10219436 56.5080121 7.10219436 56.5080121 3.0450714 48.4481407 3.0450714 42.7888928 3.0450714 42.7888928 22.4613027 42.7888928 22.4702194 56.5924785 22.4702194 56.5924785 18.4086381"></polygon></g></g></g></g></svg></a><!-- End User Code --><div class="text-element" id="s__Huge_Menu_Links_0_0_35_0_0_1_0_0_1">FOR THE TECHNOLOGY INSIDER</div><!-- User Code --><div data-share-status-id="huge-menu-toggle" data-toggle-class="huge-menu-opened" class="rebelbar__menu-toggle js-toggle hm__close js--active" data-target="body" data-loaded="true"></div><!-- End User Code --></div></div><div id="s__Huge_Menu_Links_0_0_35_0_0_1_1" class="top-menu top-menu--big-links col sm-mb-2 md-mb-4 s12 m12 l6"><!-- User Code --><h3 class="module-headline__text">Topics</h3><!-- End User Code --><div class="list" id="s__Huge_Menu_Links_0_0_35_0_0_1_1_1"><a class="list__item" href="/topic/aerospace/" target="_self">Aerospace</a><a class="list__item" href="/topic/artificial-intelligence/" target="_self">Artificial Intelligence</a><a class="list__item" href="/topic/biomedical/" target="_self">Biomedical</a><a class="list__item" href="/topic/climate-tech/" target="_self">Climate Tech</a><a class="list__item" href="/topic/computing/" target="_self">Computing</a><a class="list__item" href="/topic/consumer-electronics/" target="_self">Consumer Electronics</a><a class="list__item" href="/topic/energy/" target="_self">Energy</a><a class="list__item" href="/topic/tech-history/" target="_self">History of Technology</a><a class="list__item" href="/topic/robotics/" target="_self">Robotics</a><a class="list__item" href="/topic/semiconductors/" target="_self">Semiconductors</a><a class="list__item" href="/topic/telecommunications/" target="_self">Telecommunications</a><a class="list__item" href="/topic/transportation/" target="_self">Transportation</a></div></div><div id="s__Huge_Menu_Links_0_0_35_0_0_1_2" class="top-menu top-menu--sm-links col sm-mb-2 md-mb-4 s6 m12 l3"><div class="" id="s__Huge_Menu_Links_0_0_35_0_0_1_2_0"><!-- User Code --><h3 class="module-headline__text">Sections</h3><!-- End User Code --><div class="list" id="s__Huge_Menu_Links_0_0_35_0_0_1_2_0_1"><a class="list__item" href="/type/feature/" target="_self">Features</a><a class="list__item" href="/type/news/" target="_self">News</a><a class="list__item" href="/type/opinion/" target="_self">Opinion</a><a class="list__item" href="/topic/careers/" target="_self">Careers</a><a class="list__item" href="/topic/diy/" target="_self">DIY</a><a class="list__item" href="/engineering-resources/" target="_self">Engineering Resources</a></div></div><div class="" id="s__Huge_Menu_Links_0_0_35_0_0_1_2_1"><!-- User Code --><h3 class="module-headline__text">More</h3><!-- End User Code --><div class="list" id="s__Huge_Menu_Links_0_0_35_0_0_1_2_1_1"><a class="list__item" href="/newsletters/" target="_self">Newsletters</a><a class="list__item" href="/podcasts/" target="_self">Podcasts</a><a class="list__item" href="/special-reports/" target="_self">Special Reports</a><a class="list__item" href="/collections/" target="_self">Collections</a><a class="list__item" href="/type/explainer/" target="_self">Explainers</a><a class="list__item" href="/top-programming-languages" target="_self">Top Programming Languages</a><a class="list__item" href="https://robotsguide.com" target="_blank">Robots Guide ↗</a><a class="list__item" href="https://jobs.ieee.org/" target="_blank">IEEE Job Site ↗</a></div></div><div class="" id="s__Huge_Menu_Links_0_0_35_0_0_1_2_2"><!-- User Code --><h3 class="module-headline__text">For IEEE Members</h3><!-- End User Code --><div class="list" id="s__Huge_Menu_Links_0_0_35_0_0_1_2_2_1"><a class="list__item" href="/magazine/current-issue" target="_self">Current Issue</a><a class="list__item" href="/magazine/" target="_self">Magazine Archive</a><a class="list__item" href="/the-institute/" target="_self">The Institute</a><a class="list__item" href="/the-institute/ti-archive/" target="_self">The Institute Archive</a></div></div></div><div id="s__Huge_Menu_Links_0_0_35_0_0_1_3" class="top-menu top-menu--sm-links col sm-mb-2 md-mb-4 s6 m12 l3"><div class="" id="s__Huge_Menu_Links_0_0_35_0_0_1_3_0"><!-- User Code --><h3 class="module-headline__text">For IEEE Members</h3><!-- End User Code --><div class="list" id="s__Huge_Menu_Links_0_0_35_0_0_1_3_0_1"><a class="list__item" href="/magazine/current-issue" target="_self">Current Issue</a><a class="list__item" href="/magazine/" target="_self">Magazine Archive</a><a class="list__item" href="/the-institute/" target="_self">The Institute</a><a class="list__item" href="/the-institute/ti-archive/" target="_self">The Institute Archive</a></div></div><div class="" id="s__Huge_Menu_Links_0_0_35_0_0_1_3_1"><!-- User Code --><h3 class="module-headline__text">IEEE Spectrum</h3><!-- End User Code --><div class="list" id="s__Huge_Menu_Links_0_0_35_0_0_1_3_1_1"><a class="list__item" href="/st/about" target="_self">About Us</a><a class="list__item" href="/st/contact" target="_self">Contact Us</a><a class="list__item" href="https://www.parsintl.com/publications/ieee-media/" target="_blank">Reprints & Permissions ↗</a><a class="list__item" href="https://advertise.ieee.org/ " target="_blank">Advertising ↗</a></div></div><div class="" id="s__Huge_Menu_Links_0_0_35_0_0_1_3_2"><!-- User Code --><h3 class="module-headline__text">Follow IEEE Spectrum</h3><!-- End User Code --><div class="sm-mb-2" id="s__Huge_Menu_Links_0_0_35_0_0_1_3_2_1"><div class="social-links"><a class="social-links__link share-twitter" href="https://twitter.com/ieeespectrum" target="_blank" rel="noopener noreferrer" aria-label="Open twitter"><span aria-hidden="true" class="fa fa-twitter"></span></a><a class="social-links__link share-facebook" href="https://www.facebook.com/IEEE.Spectrum" target="_blank" rel="noopener noreferrer" aria-label="Open facebook"><span aria-hidden="true" class="fa fa-facebook"></span></a><a class="social-links__link share-instagram" href="https://www.instagram.com/ieeespectrum/" target="_blank" rel="noopener noreferrer" aria-label="Open instagram"><span aria-hidden="true" class="fa fa-instagram"></span></a><a class="social-links__link share-threads" href="https://www.threads.net/@ieeespectrum " target="_blank" rel="noopener noreferrer" aria-label="Open threads"><span aria-hidden="true" class="fa fa-threads"></span></a><a class="social-links__link share-linkedin" href="https://www.linkedin.com/company/ieee-spectrum/" target="_blank" rel="noopener noreferrer" aria-label="Open linkedin"><span aria-hidden="true" class="fa fa-linkedin"></span></a><a class="social-links__link share-youtube" href="https://www.youtube.com/c/ieeespectrum" target="_blank" rel="noopener noreferrer" aria-label="Open youtube"><span aria-hidden="true" class="fa fa-youtube"></span></a><a class="social-links__link share-tiktok" href="https://www.tiktok.com/@ieeespectrum " target="_blank" rel="noopener noreferrer" aria-label="Open tiktok"><span aria-hidden="true" class="fa fa-tiktok"></span></a><a class="social-links__link share-tumblr" href="https://spectrum.ieee.org/customfeeds/feed/all-topics/rss" target="_blank" rel="noopener noreferrer" aria-label="Open tumblr"><span aria-hidden="true" class="fa fa-tumblr"></span></a></div></div></div><div class="" id="s__Huge_Menu_Links_0_0_35_0_0_1_3_3"><!-- User Code --><h3 class="module-headline__text">Support IEEE Spectrum</h3><!-- End User Code --><div class="text-element" id="s__Huge_Menu_Links_0_0_35_0_0_1_3_3_1"><i>IEEE Spectrum</i> is the flagship publication of the IEEE — the world’s largest professional organization devoted to engineering and applied sciences. Our articles, podcasts, and infographics inform our readers about developments in technology, engineering, and science.</div><div class="text-element" id="s__Huge_Menu_Links_0_0_35_0_0_1_3_3_2"><a class="color-inherit" href="/st/join" target="_self" rel="orange_button">Join IEEE</a></div><div class="text-element" id="s__Huge_Menu_Links_0_0_35_0_0_1_3_3_3"><a class="color-inherit" href="https://ieee.omeda.com/ieee/r-main.do" target="_blank" rel="orange_button">Subscribe</a></div></div></div><div id="s__Huge_Menu_Links_0_0_35_0_0_1_4" class=" col sm-mb-2 md-mb-4 s12 m12 l12"></div><div id="s__Huge_Menu_Links_0_0_35_0_0_1_5" class=" col sm-mb-2 md-mb-4 s12 m12 l12"><span class="js-brick-description hidden" data-name="Footer"></span><div class="footer containerHidden" id="sFooter_0_0_9_0_0_0"><div class="" id="sFooter_0_0_9_0_0_0_0"><div id="sFooter_0_0_9_0_0_0_0_0" class=" row-wrapper clearfix content sm-cp-2 md-cp-4"><div class="row "><div id="sFooter_0_0_9_0_0_0_0_0_0" class=" col sm-mb-2 md-mb-4 s12 m10 l10"><div class="bottom_menu_links" id="sFooter_0_0_9_0_0_0_0_0_0_0"><div class="list" id="sFooter_0_0_9_0_0_0_0_0_0_0_0"><a class="list__item" href="https://www.ieee.org/about/" target="_blank">About IEEE</a><a class="list__item" href="https://www.ieee.org/about/contact.html" target="_blank">Contact & Support</a><a class="list__item" href="https://www.ieee.org/accessibility-statement.html" target="_blank">Accessibility</a><a class="list__item" href="https://www.ieee.org/about/corporate/governance/p9-26.html" target="_blank">Nondiscrimination Policy</a><a class="list__item" href="https://www.ieee.org/about/help/site-terms-conditions.html" target="_blank">Terms</a><a class="list__item" href="https://www.ieee.org/security-privacy.html" target="_blank">IEEE Privacy Policy</a><a class="list__item" href="#" target="_self" rel="cookie-preferences">Cookie Preferences</a><a class="list__item" href="https://spectrum.ieee.org/st/ppid-info" target="_self">Ad Privacy Options</a></div></div><div class="ftr-copy" id="sFooter_0_0_9_0_0_0_0_0_0_1">© Copyright 2024 IEEE — All rights reserved. A public charity, IEEE is the world's largest technical professional organization dedicated to advancing technology for the benefit of humanity.</div></div><div id="sFooter_0_0_9_0_0_0_0_0_1" class=" col sm-mb-2 md-mb-4 s12 m2 l2"><!-- User Code --><svg viewbox="0 0 70 21" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><defs><polygon id="path-1" points="0 0 21.3639449 0 21.3639449 21 0 21"></polygon></defs><g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"><g id="Light-/-IEEE-Bar-/-Signed-out-/-1376" transform="translate(-1274.000000, -14.000000)"><g id="Group-13" transform="translate(1274.000000, 14.000000)"><polygon id="Fill-1" fill="#FEFEFE" points="23.4111174 18.6889405 27.8363724 18.6889405 27.8363724 2.77905063 23.4111174 2.77905063"></polygon><polygon id="Fill-2" fill="#FEFEFE" points="29.7536549 18.6881005 29.7536549 2.77821061 41.9217005 2.77821061 41.9217005 5.8624668 34.17891 5.8624668 34.17891 9.14692664 41.3017712 9.14692664 41.3017712 12.2311828 34.17891 12.2311828 34.17891 15.6024442 41.9217005 15.6024442 41.9217005 18.6881005"></polygon><polygon id="Fill-3" fill="#FEFEFE" points="43.7923126 18.6881005 43.7923126 2.77821061 55.9603583 2.77821061 55.9603583 5.8624668 48.2175677 5.8624668 48.2175677 9.14692664 55.3418347 9.14692664 55.3418347 12.2311828 48.2175677 12.2311828 48.2175677 15.6024442 55.9603583 15.6024442 55.9603583 18.6881005"></polygon><polygon id="Fill-4" fill="#FEFEFE" points="57.8305486 2.77793061 57.8305486 18.6878205 70 18.6878205 70 15.6021642 62.2558037 15.6021642 62.2558037 12.2323028 69.3800707 12.2323028 69.3800707 9.14664663 62.2558037 9.14664663 62.2558037 5.8621868 70 5.8621868 70 2.77793061"></polygon><g id="Group-12"><g id="Group-7"><mask id="mask-2" fill="white"><use xlink:href="#path-1"></use></mask><g id="Clip-6"></g><path d="M20.9520644,9.85449953 L20.8930235,9.84469935 C19.0838421,8.61967703 17.3983653,7.23365178 15.8098843,5.66142314 L14.0555265,3.83578988 C13.3442244,3.05037557 12.6540084,2.18095973 11.9961242,1.35074461 L11.1976665,0.22232405 C11.099265,0.164923005 10.976966,0.0669212192 10.8687244,0.0375206836 C10.6339666,-0.0646811784 10.3795285,0.0571210406 10.1883485,0.202723693 L8.74184673,2.07875787 C6.42378906,4.93900998 3.67838782,7.60885862 0.684171419,9.65429588 C0.448007872,9.84049927 0.0951682866,10.0211026 0.0220700458,10.3235081 C-0.0566511366,10.596513 0.0853281388,10.8219172 0.256827858,10.9913202 C2.65360672,12.6363502 4.94776689,14.5907858 6.98748895,16.8168264 C7.35016869,17.1962333 7.64396739,17.5728401 7.99680697,17.9284466 C8.59424452,18.719461 9.29570648,19.5160755 9.84534902,20.364491 C10.0168487,20.5450943 10.0463692,20.8390996 10.3148646,20.9259012 C10.525725,20.9987026 10.785786,21.0477034 10.9868062,20.9259012 L11.1878263,20.7256976 C13.6675436,17.2256338 16.8149851,14.0825766 20.3293236,11.5429303 C20.6821632,11.2321246 21.3541047,11.1145225 21.3639449,10.5335119 C21.3386417,10.264707 21.182605,10.0015022 20.9520644,9.85449953 M18.5496626,10.7911166 C18.1476223,11.7879348 17.3337015,12.5831492 16.6238051,13.4525651 C15.0845249,15.1017951 13.4623062,16.6992242 11.6432846,17.9718474 C11.2763877,18.2322522 10.7815688,18.4702565 10.3401679,18.2658528 C9.00190778,17.56724 7.87450799,16.4248192 6.7035304,15.3860003 C5.34559001,14.1301774 3.98202667,12.6713508 2.95302836,11.142523 C2.80120893,10.9283191 2.75763114,10.6651143 2.76184834,10.3823091 C2.89398747,9.85449953 3.2566672,9.42049162 3.60107238,8.97668354 C4.81562776,7.43385543 6.30570729,5.96942875 7.80984416,4.63240439 C7.84498755,4.59740376 7.90824564,4.5232024 7.96306932,4.48960179 C8.60970761,3.93379167 9.25212869,3.44098269 9.92828741,2.95657386 C10.6339666,2.41056392 11.5209856,2.86417218 12.114206,3.36678134 C12.7369467,3.83998996 13.383585,4.37759975 13.9529079,4.9236097 L14.0555265,4.98241077 C15.6285445,6.43703727 17.0891035,8.05406673 18.2910073,9.76209785 C18.4864045,10.0603033 18.6579042,10.3963094 18.5496626,10.7911166" id="Fill-5" fill="#FEFEFE" mask="url(#mask-2)"></path></g><path d="M17.8685838,9.92786087 C16.3152462,7.68782006 14.2755241,5.70538394 12.1135031,3.97215236 C11.5554261,3.58154525 10.9087879,2.8983328 10.1876456,3.3869417 C7.9483091,4.92836978 5.79050526,7.01860786 4.05582778,9.15084671 C3.70298819,9.66885615 3.08587035,10.1616651 3.3656117,10.8504777 C3.56663186,11.3586869 4.01646719,11.7240936 4.30604868,12.1735018 C6.00698851,14.2091389 8.01719014,16.1089735 10.1145474,17.6364013 C11.0367098,18.221612 11.6931882,17.2751947 12.4087075,16.8397868 C13.8734838,15.6875658 15.2314242,14.2875403 16.5162664,12.9253155 L16.5162664,12.8917149 C17.0307655,12.2715036 17.5747851,11.6610924 17.9768254,10.9918802 C18.1525424,10.6642743 18.0653868,10.2162661 17.8685838,9.92786087 L17.8685838,9.92786087 Z M10.4477066,5.41697869 L10.6431039,4.79256731 L10.6684071,4.79256731 C11.0704474,5.9391882 11.4865451,7.08300904 11.9181059,8.21422965 L11.0549843,8.22962993 L11.0367098,8.33183179 L11.163226,11.4020877 L11.163226,11.4510886 C10.844124,11.5042896 10.4533296,11.4902893 10.1384449,11.4608888 L10.1145474,11.4258882 L10.2565266,8.26323054 L10.2565266,8.23943011 C10.0161459,8.21422965 9.71250703,8.23943011 9.46790907,8.21422965 L10.4477066,5.41697869 Z M9.93742469,15.6203646 C10.0217688,14.491944 10.0358262,13.4531251 10.0948671,12.3289046 C10.4912844,12.3695053 10.8356896,12.3541051 11.1969636,12.3401048 L11.2222668,12.4913076 L11.3642461,15.6301648 C10.8891076,15.698766 10.3844486,15.6595653 9.93742469,15.6203646 L9.93742469,15.6203646 Z M13.5501647,11.7058933 C11.492168,12.3443049 8.90420917,12.3149044 6.95304844,11.4608888 C6.60020885,11.2900857 6.15459073,11.0268809 6.03650896,10.6166734 C5.94794763,9.86485972 6.75624548,9.44905214 7.30588802,9.17604717 C7.62920717,9.03464459 7.95814925,8.87924176 8.31520604,8.8596414 C8.64836533,9.10324584 8.99698771,9.29924941 9.33998715,9.51765339 C8.67366857,9.69405661 7.87380512,9.84525936 7.56594907,10.5718726 C7.61936702,11.1248827 8.24632501,11.2998859 8.68350872,11.4370884 C10.2565266,11.8514959 11.9574665,11.7968949 13.4672263,11.250885 C13.7511848,11.0842819 14.2024259,10.8840783 14.1630653,10.4752708 C14.1138646,10.0356628 13.6092056,9.84105928 13.256366,9.70245676 C13.0412885,9.73185729 12.8346454,9.78085819 12.6336252,9.84525936 C12.5253836,9.54285385 12.432605,9.23484824 12.3046831,8.94224291 C12.9724074,9.1172461 13.638726,9.29924941 14.3289421,9.41965161 L14.3289421,9.43505189 C14.1869628,9.44905214 14.0309262,9.49805304 13.8931641,9.551254 L13.8931641,9.57645446 C14.2853643,9.77105801 14.8293839,10.0944639 14.8336011,10.6068732 C14.7422283,11.2270845 14.0604466,11.5098897 13.5501647,11.7058933 L13.5501647,11.7058933 Z" id="Fill-8" fill="#FEFEFE"></path><path d="M14.1946944,19.3564726 L14.1946944,19.1646691 L14.3141819,19.1646691 C14.3788457,19.1646691 14.467407,19.1716693 14.467407,19.2528707 C14.467407,19.3410724 14.4224235,19.3564726 14.3465138,19.3564726 L14.1946944,19.3564726 Z M14.1946944,19.4922751 L14.2748213,19.4922751 L14.4603783,19.8268812 L14.6613985,19.8268812 L14.4575669,19.4782749 C14.562997,19.4698747 14.6501526,19.4166737 14.6501526,19.2710711 C14.6501526,19.0890678 14.5278536,19.0302667 14.3226163,19.0302667 L14.0231946,19.0302667 L14.0231946,19.8268812 L14.1946944,19.8268812 L14.1946944,19.4922751 Z M15.0620331,19.429274 C15.0620331,18.9630655 14.7105992,18.6900605 14.3183991,18.6900605 C13.9233874,18.6900605 13.5719536,18.9630655 13.5719536,19.429274 C13.5719536,19.8954825 13.9233874,20.1670874 14.3183991,20.1670874 C14.7105992,20.1670874 15.0620331,19.8954825 15.0620331,19.429274 L15.0620331,19.429274 Z M14.8483613,19.429274 C14.8483613,19.7694802 14.6051691,19.9976843 14.3183991,19.9976843 L14.3183991,19.9962843 C14.0231946,19.9976843 13.7856254,19.7694802 13.7856254,19.429274 C13.7856254,19.0890678 14.0231946,18.8622636 14.3183991,18.8622636 C14.6051691,18.8622636 14.8483613,19.0890678 14.8483613,19.429274 L14.8483613,19.429274 Z" id="Fill-10" fill="#FEFEFE"></path></g></g></g></g></svg><!-- End User Code --></div></div></div></div></div></div></div></div></div><span class="js-brick-description hidden" data-name="__Gated_Popup"></span><div class="gated-popup" id="s__Gated_Popup_0_0_34_0_0_0"><div class="gated-popup__contents" id="s__Gated_Popup_0_0_34_0_0_0_0"><!-- User Code --><a href="javascript:;" class="js--close-gated gated-popup__close icon-close"></a><!-- End User Code --><!-- User Code --><h2 class="popup-gated-h2 popup-heading-h2 for_pdf" style="display:none"> Enjoy more free content and benefits by creating an account </h2><h2 class="popup-gated-h2 popup-heading-h2 for_save" style="display:none"> Saving articles to read later requires an IEEE Spectrum account </h2><h2 class="popup-gated-h2 popup-heading-h2 for_member_content" style="display:none"> The Institute content is only available for members </h2><h2 class="popup-gated-h2 popup-heading-h2 for_pdf_issues" style="display:none"> Downloading full PDF issues is exclusive for IEEE Members </h2><h2 class="popup-gated-h2 popup-heading-h2 for_ebooks" style="display:none"> Downloading this e-book is exclusive for IEEE Members </h2><h2 class="popup-gated-h2 popup-heading-h2 for_nxtbook" style="display:none"> Access to <i>Spectrum</i> 's Digital Edition is exclusive for IEEE Members </h2><h2 class="popup-gated-h2 popup-heading-h2 for_follow_topics" style="display:none"> Following topics is a feature exclusive for IEEE Members </h2><h2 class="popup-gated-h2 popup-heading-h2 for_comments" style="display:none"> Adding your response to an article requires an IEEE Spectrum account </h2><h2 class="popup-gated-h2 for_pdf for_save for_comments" style="display:none"> Create an account to access more content and features on <i>IEEE Spectrum</i> , including the ability to save articles to read later, download Spectrum Collections, and participate in conversations with readers and editors. For more exclusive content and features, consider <a class="ieee_link" href="/st/join">Joining IEEE</a> . </h2><h2 class="popup-gated-h2 for_pdf_issues for_nxtbook for_follow_topics for_member_content" style="display:none"> Join the world’s largest professional organization devoted to engineering and applied sciences and get access to all of Spectrum’s articles, archives, PDF downloads, and other benefits. <a href="/st/join">Learn more about IEEE →</a></h2><h2 class="popup-gated-h2 for_ebooks" style="display:none"> Join the world’s largest professional organization devoted to engineering and applied sciences and get access to this e-book plus all of <em>IEEE Spectrum’s</em> articles, archives, PDF downloads, and other benefits. <a href="/st/join">Learn more about IEEE →</a></h2><!-- End User Code --><div class="popup_links for_pdf for_save for_comments create_account" id="s__Gated_Popup_0_0_34_0_0_0_0_2"><div class="list" id="s__Gated_Popup_0_0_34_0_0_0_0_2_0"><a class="list__item" href="https://www.ieee.org/profile/public/createwebaccount/showCreateAccount.html?ShowMGAMarkeatbilityOptIn=true&sourceCode=spectrum&signinurl=https%3A%2F%2Fspectrum.ieee.org%2Fcore%2Fsaml%2Fmain%2Flogin%3Fnext_url%3Dhttps%3A%2F%2Fspectrum.ieee.org%2Fcore%2Fintegrations%2Fieee%2Fchanges%0A&url=https://spectrum.ieee.org/&autoSignin=Y&car=IEEE-Spectrum" target="_self">CREATE AN ACCOUNT</a><a class="list__item" href="/core/saml/main/login?next_url=https://spectrum.ieee.org/core/integrations/ieee/changes" target="_self">SIGN IN</a></div></div><div class="popup_links for_pdf_issues for_nxtbook for_follow_topics for_member_content for_ebooks" id="s__Gated_Popup_0_0_34_0_0_0_0_3"><div class="list" id="s__Gated_Popup_0_0_34_0_0_0_0_3_0"><a class="list__item" href="https://www.ieee.org/membership-application/public/join.html?promo=JOINLITE&style=SPECTRUM&joinlite=TRUE" target="_self">JOIN IEEE</a><a class="list__item" href="/core/saml/main/login?next_url=https://spectrum.ieee.org/core/integrations/ieee/changes" target="_self">SIGN IN</a></div></div></div></div><!-- User Code --><script> var popupGatedElement=document.querySelector('.gated-popup'), closeGated, gatedCloseBtn = '.js--close-gated', gatedShownClass = 'gated-popup--shown'; closeGated = function () { popupGatedElement.classList.remove(gatedShownClass); popupGatedElement.classList.remove('for_save'); popupGatedElement.classList.remove('for_pdf'); popupGatedElement.classList.remove('for_ebooks'); popupGatedElement.classList.remove('for_pdf_issues'); popupGatedElement.classList.remove('for_nxtbook'); popupGatedElement.classList.remove('for_follow_topics'); popupGatedElement.classList.remove('for_comments'); popupGatedElement.classList.remove('for_member_content'); }; function openGatedPopup(type){ document.querySelectorAll(".popup_links.create_account .list__item")[0].href = "https://www.ieee.org/profile/public/createwebaccount/showCreateAccount.html?ShowMGAMarkeatbilityOptIn=true&sourceCode=spectrum&signinurl=" + encodeURIComponent(window.location.origin + "/core/saml/main/login?next_url=" + window.location.origin + "/core/integrations/ieee/changes?redirect=" + window.location.href) + "&url=" + encodeURIComponent(window.location.origin + "/core/saml/main/login?next_url=" + window.location.origin + "/core/integrations/ieee/changes?redirect=" + window.location.href) + "&autoSignin=Y&car=IEEE-Spectrum"; // update popups for_member_content document.querySelectorAll(".popup_links.for_member_content .list__item")[1].href = "https://spectrum.ieee.org/core/saml/main/login?next_url=" + encodeURIComponent("https://spectrum.ieee.org/core/integrations/ieee/changes?redirect=" + window.location.href); // update popups for_pdf for_save for_comments document.querySelectorAll(".popup_links.for_save .list__item")[1].href = "https://spectrum.ieee.org/core/saml/main/login?next_url=" + encodeURIComponent("https://spectrum.ieee.org/core/integrations/ieee/changes?redirect=" + window.location.href); popupGatedElement.classList.add(type); popupGatedElement.classList.add(gatedShownClass); } document.querySelector(gatedCloseBtn).onclick= closeGated; </script><!-- End User Code --><span class="js-brick-description hidden" data-name="__Session_Popup"></span><div class="lightbox-popup" id="s__Session_Popup_0_0_39_0_0_0"><div class="lightbox-popup__contents" id="s__Session_Popup_0_0_39_0_0_0_0"><!-- User Code --><a href="javascript:;" class="js--close-lightbox lightbox-popup__close icon-close hide-text">Close</a><!-- End User Code --><!-- User Code --><h2 class="popup-ligtbox-h2 popup-heading-h2">Access Thousands of Articles — Completely Free</h2><h2 class="popup-ligtbox-h2"> Create an account and get exclusive content and features: <strong>Save articles, download collections,</strong> and <strong>talk to tech insiders</strong> — all free! For full access and benefits, <a class="ieee_link" target="_blank" href="https://www.ieee.org/membership-application/public/join.html?promo=JOINLITE&style=SPECTRUM&joinlite=TRUE">join IEEE</a> as a paying member. </h2><!-- End User Code --><div class="popup_links signin_button" id="s__Session_Popup_0_0_39_0_0_0_0_2"><div class="list" id="s__Session_Popup_0_0_39_0_0_0_0_2_0"><a class="list__item" href="https://www.ieee.org/profile/public/createwebaccount/showCreateAccount.html?ShowMGAMarkeatbilityOptIn=true&sourceCode=spectrum3c&signinurl=https%3A%2F%2Fspectrum.ieee.org%2Fcore%2Fsaml%2Fmain%2Flogin%3Fnext_url%3Dhttps%3A%2F%2Fspectrum.ieee.org%2Fcore%2Fintegrations%2Fieee%2Fchanges%0A&url=https://spectrum.ieee.org/&autoSignin=Y&car=IEEE-Spectrum" target="_self">CREATE AN ACCOUNT</a><a class="list__item" href="/core/saml/main/login?next_url=https://spectrum.ieee.org/core/integrations/ieee/changes" target="_self">SIGN IN</a></div></div></div></div><!-- User Code --><script> function addPopSave(){ var save_post_links = document.querySelectorAll(".like-btn:not(.proc)"); for (i = 0; i < save_post_links.length; i++) { save_post_links[i].removeAttribute("href"); save_post_links[i].addEventListener("click", function(event){ openGatedPopup('for_save'); }); save_post_links[i].classList.add('proc'); } } </script><!-- End User Code --><!-- User Code --><div class="rblad-ieee_welcome_interstitial"></div><!-- End User Code --><span class="js-brick-description hidden" data-name="SS Feature Post"></span><div class="" id="sSS_Feature_Post_0_0_23_0_0_1"><div class="top-leader-container" id="sSS_Feature_Post_0_0_23_0_0_1_0"><!-- User Code --><div class="rblad-ieee_top_leaderboard"></div><!-- End User Code --></div><div class="" id="sSS_Feature_Post_0_0_23_0_0_1_1"><div class="non_member_follow" id="sSS_Feature_Post_0_0_23_0_0_1_1_0_1_0"><span class="js-brick-description hidden" data-name="Open Current Feature Post"></span><div class="mb-2 feature_post_full current_post" id="sOpen_Current_Feature_Post_0_0_15_0_0_0_1_0_1_0"><div class="posts-custom posts-custom-section section-holder clearfix" data-block="None" data-format="posts-custom" data-source="current_post" data-source-type="current_post" data-source-unique="true" data-section-id="" data-is-reordable="false" data-using-stickers="false" data-has-more="false" data-attr-v="2" data-attr-posts_id="sOpen_Current_Feature_Post_0_0_15_0_0_0_1_0_1_0" data-attr-layout_quality="1" data-attr-header_template="jinja/post/custom-css.html" data-attr-node_id="/root/blocks/block[open_current_feature_post]/abtests/abtest[1]/choose/otherwise/choose/otherwise/posts-" data-attr-use_tag_image_for_lead_media="true" data-attr-source_url="current_post" data-attr-all_element_order="all_sections,headline,subheadline,author,date,time_to_read,like_button,custom_field_pdf_version,post_shares,custom_field_FeaturePostImgPosition,photo_caption,photo_credit,custom_field_FeaturePostColor,body,tags,custom_field_lightbox_img_shortcode_ids,custom_field_TimeofRead,custom_field_FullwidthCardColor,custom_field_FullwidthCardPosition,date_modified,badges_sponsored,section,snark_line,community_name,primary_tag,follow_button,community_comments,badges,page_views,collection_button,main_author,source_link,custom_field_ContentType,custom_field_CustomFieldTestEG,custom_field_Issue,product_prices,product_vendor,product_buy_link,site_field_Twitter,site_field_Facebook,site_field_Instagram,site_field_LinkedIn,custom_field_Editor,custom_field_PodcastVideoTime,custom_field_PodcastEpisode,custom_field_due_date,custom_field_access,custom_field_publication_date,site_field_member_badges,words_count,site_field_first_name,site_field_last_name,site_field_grade,custom_field_fullwidthbackgroundposition,custom_field_disable_comments,custom_field_copy_editor,custom_field_is_updated_post,custom_field_youtube_video" data-attr-limit="1" data-attr-layout_headline="top" data-attr-layout_subheadline="top" data-attr-layout_date="top" data-attr-data-rm-advanced="true" data-attr-element_classes="feature_post_full current_post" data-attr-layout_all_date_format="%d %b %Y" data-attr-layout_all_date_full_format="false" data-attr-layout_all_image_crop="original" data-attr-data-rm-device-crops="true" data-attr-layout_mobile_image_crop="original" data-attr-layout_like_button="top" data-attr-layout_all_sections="top" data-attr-layout_author="top" data-attr-layout_post_shares="top" data-attr-all_share_buttons="Email,CopyLink,Separator,Slack,Twitter,Facebook,Linkedin,GooglePlus,Whatsapp,Reddit,Tumblr,Flipboard,SMS,Pinterest" data-attr-layout_tumblr="inactive" data-attr-layout_googleplus="inactive" data-attr-layout_pinterest="inactive" data-attr-layout_whatsapp="inactive" data-attr-layout_reddit="inactive" data-attr-layout_flipboard="inactive" data-attr-layout_sms="inactive" data-attr-layout_slack="inactive" data-attr-layout_separator="inactive" data-attr-layout_facebook="active" data-attr-layout_twitter="active" data-attr-layout_linkedin="active" data-attr-layout_copylink="active" data-attr-layout_photo_caption="bottom" data-attr-layout_photo_credit="bottom" data-attr-layout_custom_field_featurepostcolor="bottom" data-attr-layout_body="bottom" data-attr-layout_custom_field_featurepostimgposition="top" data-attr-show_full_post_body="true" data-attr-layout_time_to_read="top" data-attr-layout_all_headline_tag="h1" data-attr-layout_all_subheadline_tag="h2" data-attr-show_around_the_web="true" data-attr-layout_tags="bottom" data-attr-layout_custom_field_lightbox_img_shortcode_ids="bottom" data-attr-layout_custom_field_pdf_version="top" data-attr-filters="section,post_body_pager" data-attr-section_url="" data-attr-source="" data-attr-format="posts-custom" data-attr-is_current_post="true"><div class="posts-wrapper clearfix"><div class="widget post-partial tag-coding tag-software-bloat tag-cybersecurity tag-cloud-computing post-section--topic/computing" data-category="Computing"><article elid="2667183018" data-frozen-sections="[]" class="clearfix image-article sm-mb-1 quality-HD post-2667183018" data-category="Computing"><div class="row px10"><div class="rm-col-center col sm-mb-1" style="width:100.0%;"><div class="widget__body clearfix sm-mt-1"><div class="all-related-sections"><a href="https://spectrum.ieee.org/topic/computing/">Computing</a><a href="https://spectrum.ieee.org/magazine/">Magazine</a><a href="https://spectrum.ieee.org/type/feature/">Feature</a><a href="https://spectrum.ieee.org/magazine/2024/april/">April 2024</a></div><h1 class="widget__headline h1"><span class="widget__headline-text custom-post-headline" data-type="text"> Why Bloat Is Still Software’s Biggest Vulnerability </span></h1><div class="widget__subheadline"><h2 class="widget__subheadline-text h2" data-type="text"><p>A 2024 plea for lean software </p></h2></div><div class="social-author clearfix"><div class="social-author__avatar image"><div class="cover-all image" style="background-image: url("https://spectrum.ieee.org/res/avatars/default")"></div></div><a class="social-author__name" href="https://spectrum.ieee.org/u/bert-hubert" data-type="text">Bert Hubert</a></div><div class="social-date"><span class="social-date__text">08 Feb 2024</span></div><div class="time-to-read">10 min read</div><div class="like-button" data-post-likes="22"></div><div class="widget__shares share-panel"><!-- EMAIL --><a href="mailto:?subject=Why%20Bloat%20Is%20Still%20Software%E2%80%99s%20Biggest%20Vulnerability&body=https://spectrum.ieee.org/lean-software-development" target="_blank" data-track-share="Email" class="share share-popup share-email" rel="noopener noreferrer" aria-label="Share via Email"><i aria-hidden="true" class="icons-share em fa fa-envelope"></i></a><!-- COPY LINK --><a href="https://spectrum.ieee.org/lean-software-development" data-clipboard-text="https://spectrum.ieee.org/lean-software-development" class="share share-copy-link" title="Copy this link to clipboard"><i class="icons-share" style="width: 60%"><svg aria-hidden="true" data-prefix="far" data-icon="copy" class="svg-inline--fa fa-copy fa-w-14" role="img" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 448 512"><path fill="currentColor" d="M433.941 65.941l-51.882-51.882A48 48 0 0 0 348.118 0H176c-26.51 0-48 21.49-48 48v48H48c-26.51 0-48 21.49-48 48v320c0 26.51 21.49 48 48 48h224c26.51 0 48-21.49 48-48v-48h80c26.51 0 48-21.49 48-48V99.882a48 48 0 0 0-14.059-33.941zM266 464H54a6 6 0 0 1-6-6V150a6 6 0 0 1 6-6h74v224c0 26.51 21.49 48 48 48h96v42a6 6 0 0 1-6 6zm128-96H182a6 6 0 0 1-6-6V54a6 6 0 0 1 6-6h106v88c0 13.255 10.745 24 24 24h88v202a6 6 0 0 1-6 6zm6-256h-64V48h9.632c1.591 0 3.117.632 4.243 1.757l48.368 48.368a6 6 0 0 1 1.757 4.243V112z"></path></svg></i></a><!-- TWITTER --><a href="https://twitter.com/intent/tweet?url=https://spectrum.ieee.org/lean-software-development&text=Why%20Bloat%20Is%20Still%20Software%E2%80%99s%20Biggest%20Vulnerability&" target="_blank" data-track-share="Twitter" class="share share-popup share-tw" rel="noopener noreferrer" aria-label="Share on Twitter"><i aria-hidden="true" class="icons-share tw fa fa-twitter"></i></a><!-- FACEBOOK --><a href="https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fspectrum.ieee.org%2Flean-software-development%3Fxrs%3DRebelMouse_fb%26ts%3D1711387427" target="_blank" data-track-share="Facebook" class="share share-popup share-fb" rel="noopener noreferrer" aria-label="Share on Facebook"><i aria-hidden="true" class="icons-share fb fa fa-facebook"></i></a><!-- LINKEDIN --><a href="https://www.linkedin.com/shareArticle?mini=false&url=https://spectrum.ieee.org/lean-software-development&" target="_blank" class="share share-popup share-linkedin" data-track-share="Linkedin" rel="noopener noreferrer" aria-label="Share on Linkedin"><i aria-hidden="true" class="icons-share fa fa-linkedin"></i></a></div></div><div class="widget__head"><picture><source srcset="https://spectrum.ieee.org/media-library/a-photo-illustration-of-outstretched-hands-with-blobby-running-oodles-of-green-software-code.jpg?id=51411262&width=3600&height=2160 3x, https://spectrum.ieee.org/media-library/a-photo-illustration-of-outstretched-hands-with-blobby-running-oodles-of-green-software-code.jpg?id=51411262&width=2400&height=1440 2x, https://spectrum.ieee.org/media-library/a-photo-illustration-of-outstretched-hands-with-blobby-running-oodles-of-green-software-code.jpg?id=51411262&width=1200&height=720 1x"/><img fetchpriority="high" role="img" alt="A photo-illustration of outstretched hands with blobby, running, oodles of green software code" aria-label="A photo-illustration of outstretched hands with blobby, running, oodles of green software code" src="https://spectrum.ieee.org/media-library/a-photo-illustration-of-outstretched-hands-with-blobby-running-oodles-of-green-software-code.jpg?id=51411262&width=1200&height=720" style="object-fit: cover;" class="rm-lazyloadable-image rm-hero-media" width="2000" height="1200"/></picture></div><div class="widget__body clearfix sm-mt-1"><div class="photo-credit"> Daniel Zender </div><span class="js-scroll-trigger" data-target="body" data-triggers="render-rebelbar" data-toggle-class="with-floating-shares"></span><div id="utm_campaign"></div><div class="body js-expandable clearfix js-listicle-body css-listicle-body-2667183018" data-headline="Why Bloat Is Still Software’s Biggest Vulnerability"><div class="body-description"><p><em>This post is dedicated to the memory of </em><a href="https://ethz.ch/en/news-and-events/eth-news/news/2024/01/computer-pioneer-niklaus-wirth-has-died.html" rel="noopener noreferrer" target="_blank"><em>Niklaus Wirth</em></a><em>, a computing pioneer who passed away 1 January 2024. In 1995 he wrote an influential article called “</em><a href="https://cr.yp.to/bib/1995/wirth.pdf" rel="noopener noreferrer" target="_blank"><em>A Plea for Lean Software</em></a><em>,”</em><em> published in </em><a href="https://ieeexplore.ieee.org/document/348001" target="_blank">Computer</a><em>, the magazine for members of the IEEE Computer Society, which I read early in my career as an entrepreneur and software developer. In what follows, I try to make the same case nearly 30 years later, updated for today’s computing horrors. A version of this post was </em><a href="https://berthub.eu/articles/posts/a-2024-plea-for-lean-software/" rel="noopener noreferrer" target="_blank"><em>originally published</em></a><em> on my personal blog, <a href="http://berthub.eu" target="_blank">Berthub.eu</a>.</em><br/></p><p>Some years ago I did a talk at a local university on <a href="https://spectrum.ieee.org/tag/cybersecurity">cybersecurity</a>, titled “<a href="https://berthub.eu/cyber-mad/Cyber%20and%20information%20security.pdf" rel="noopener noreferrer" target="_blank">Cyber and Information Security: Have We All Gone Mad?</a>” It is still worth reading today since we <em>have</em> gone quite mad collectively.</p><p>The way we build and ship software these days is mostly ridiculous, leading to apps using millions of lines of code to open a garage door, and other simple programs importing <a href="https://github.com/SashenJayathilaka/Photo-Sharing-Application" target="_blank">1,600 external code libraries</a>—dependencies—of unknown provenance. Software security is dire, which is a function both of the quality of the code and the sheer amount of it. Many of us programmers know the current situation is untenable. Many programmers (and their management) sadly haven’t ever experienced anything else. And for the rest of us, we rarely get the time to do a better job.</p><p class="pull-quote">It is not just you; we are not merely suffering from nostalgia: Software really is very weird today.</p><p> Let me briefly go over the terrible state of software security, and then spend some time on why it is so bad. I also mention some regulatory and legislative things going on that we might use to make software quality a priority again. Finally, I talk about <a href="https://berthub.eu/articles/trifecta" rel="noopener noreferrer" target="_blank">an actual useful piece of software I wrote</a> as a proof of concept that one can still make <a href="https://berthub.eu/articles/posts/trifecta-technology" rel="noopener noreferrer" target="_blank">minimal and simple yet modern software</a>.</p><p><div class="rblad-ieee_in_content"></div></p><p>I hope that this post provides some mental and moral support for suffering programmers and technologists who want to improve things. It is not just you; We are not merely suffering from nostalgia: Software really is very weird today.</p><h2>The terrible state of software security</h2><p>Without going all <a href="https://knowyourmeme.com/memes/old-man-yells-at-cloud" rel="noopener noreferrer" target="_blank">“Old man (48) yells at cloud</a>,” let me restate some obvious things. The state of software security is <em>dire</em>. If we only look at the past year, if you ran industry-standard software like <a href="https://www.ncsc.gov.uk/news/exploitation-ivanti-vulnerabilities" rel="noopener noreferrer" target="_blank">Ivanti</a>, <a href="https://en.wikipedia.org/wiki/2023_MOVEit_data_breach" rel="noopener noreferrer" target="_blank">MOVEit</a>, <a href="https://www.bleepingcomputer.com/news/microsoft/russian-hackers-exploiting-outlook-bug-to-hijack-exchange-accounts/" rel="noopener noreferrer" target="_blank">Outlook</a>, <a href="https://confluence.atlassian.com/security/cve-2023-22518-improper-authorization-vulnerability-in-confluence-data-center-and-server-1311473907.html" rel="noopener noreferrer" target="_blank">Confluence</a>, <a href="https://www.mandiant.com/resources/blog/barracuda-esg-exploited-globally" rel="noopener noreferrer" target="_blank">Barracuda Email Security Gateway</a>, <a href="https://www.mandiant.com/resources/blog/remediation-netscaler-adc-gateway-cve-2023-4966" rel="noopener noreferrer" target="_blank">Citrix NetScaler ADC, and NetScaler Gateway</a>, chances are you got hacked. Even companies with near-infinite resources (like Apple and <a href="https://spectrum.ieee.org/tag/google">Google</a>) made <a href="https://www.schneier.com/blog/archives/2023/09/critical-vulnerability-in-libwebp-library.html" rel="noopener noreferrer" target="_blank">trivial “worst practice” security mistakes</a> that put <a href="https://www.bleepingcomputer.com/news/security/apple-zero-click-imessage-exploit-used-to-infect-iphones-with-spyware/" rel="noopener noreferrer" target="_blank">their customers in danger</a>. Yet we continue to rely on all these products.</p><p class="pull-quote">Software is now (rightfully) considered so dangerous that we tell everyone not to run it themselves.<em></em></p><p>Software is now (rightfully) considered so dangerous that we tell everyone not to run it themselves. Instead, you are supposed to leave that to an “<em>X</em> as a service” provider, or perhaps just to “the cloud.” Compare this to a hypothetical situation where cars are so likely to catch fire that the advice is not to drive a car yourself, but to leave that to professionals who are always accompanied by professional firefighters.</p><p>The assumption is then that the cloud is somehow able to make insecure software trustworthy. Yet in the past year, we’ve learned that Microsoft’s <a href="https://thehackernews.com/2023/09/outlook-breach-microsoft-reveals-how.html" rel="noopener noreferrer" target="_blank">email platform was thoroughly hacked</a>, including classified government email. (<a href="https://metacurity.substack.com/p/russian-hacking-group-midnight-blizzard" rel="noopener noreferrer" target="_blank">Twice!</a>) There are also <a href="https://www.lastweekinaws.com/blog/azures-terrible-security-posture-comes-home-to-roost/" rel="noopener noreferrer" target="_blank">well-founded worries about the security of the Azure cloud</a>. Meanwhile, industry darling Okta, which provides cloud-based software that enables user log-in to various applications, <a href="https://www.reuters.com/technology/cybersecurity/okta-says-hackers-stole-data-all-customer-support-users-cyber-breach-2023-11-29/" rel="noopener noreferrer" target="_blank">got comprehensively owned</a>. This was their second breach within two years. Also, there was a suspicious spate of Okta users subsequently getting hacked.</p><p>Clearly, we need better software.</p><p>The European Union has launched three pieces of legislation to this effect: <a href="https://digital-strategy.ec.europa.eu/en/policies/nis2-directive" rel="noopener noreferrer" target="_blank">NIS2 for important services</a>; the <a href="https://digital-strategy.ec.europa.eu/en/policies/cyber-resilience-act" rel="noopener noreferrer" target="_blank">Cyber Resilience Act </a>for almost all commercial software and electronic devices; and a revamped <a href="https://www.euractiv.com/section/digital/news/eu-updates-product-liability-regime-to-include-software-artificial-intelligence/" rel="noopener noreferrer" target="_blank">Product Liability Directive</a> that also extends to software. Legislation is always hard, and it remains to be seen <a href="https://berthub.eu/articles/posts/eu-cra-what-does-it-mean-for-open-source/" rel="noopener noreferrer" target="_blank">if they got it right</a>. But that software security is terrible enough these days to warrant legislation seems obvious.</p><h2>Why software security is so bad</h2><p>I want to touch on incentives. The situation today is clearly working well for commercial operators. Making more secure software takes time and is a lot of work, and the current security incidents don’t appear to be impacting the bottom line or stock prices. You can <a href="https://www.microsoft.com/en-us/research/publication/software-components-only-the-giants-survive/" rel="noopener noreferrer" target="_blank">speed up time to market by cutting corners</a>. So from an economic standpoint, what we see is entirely predictable. Legislation could be very important in changing this equation.</p><p><div class="rblad-ieee_in_content"></div></p><p>The security of software depends on two factors—the <em>density</em> of security issues in the source code and the sheer <em>amount of code</em> accessible by hackers. As the U.S. defense community loved to point out in the 1980s, <a href="https://www.quora.com/Who-said-Quantity-has-a-quality-all-its-own" rel="noopener noreferrer" target="_blank">quantity has a quality all of its own</a>. The reverse applies to software—the more you have of it, the more risks you run.</p><p>As a case in point, Apple iPhone users got repeatedly hacked over many years because of the huge attack surface exposed by iMessage. It is possible to send an unsolicited iMessage to an Apple user. The phone will then immediately process that message so it can preview it. The problem is that Apple in its wisdom decided that such unsolicited messages needed to support a vast array of image formats, accidentally <a href="https://googleprojectzero.blogspot.com/2021/12/a-deep-dive-into-nso-zero-click.html" rel="noopener noreferrer" target="_blank">including PDFs with weird embedded compressed fonts</a> using an ancient format that effectively included a programming language. So someone could send an unsolicited message to your iPhone that could probe for weaknesses in the rest of the phone.</p><p>In this way, attackers were able to benefit from security bugs in the phone’s millions of lines of code. You don’t need a high bug density to find <a href="https://www.europarl.europa.eu/meetdocs/2014_2019/plmrep/COMMITTEES/PEGA/DV/2023/05-08/REPORTcompromises_EN.pdf" rel="noopener noreferrer" target="_blank">an exploitable hole</a> in millions of lines of code.</p><p class="pull-quote">Wiping out all the bugs in your code won’t save you from the decision to implement a feature to automatically execute code embedded in documents.</p><p>Apple could have prevented this situation by restricting previews to a far smaller range of image formats, or even a single “known good” image format. Apple could have saved themselves an enormous amount of pain simply by <a href="https://github.com/berthubert/sbox#sbox" target="_blank">exposing fewer lines of their code</a> to attackers. Incidentally, the E.U.’s Cyber Resilience Act <a href="https://berthub.eu/articles/posts/eu-cra-secure-coding-solution/" target="_blank">explicitly tells vendors to minimize the attack surface</a>.</p><p><span></span>Apple is (by far) not the worst offender in this field. But it is a widely respected and well-resourced company that usually thinks through what they do. And even they got it wrong by needlessly shipping and exposing too much code.</p><h2>Could we not write better code?</h2><p>There are those who think the biggest problem is the quality of the code, expressed in terms of the density of bugs in it. There are many interesting things happening on this front, like the use of <a href="https://www.nsa.gov/Press-Room/Press-Releases-Statements/Press-Release-View/Article/3608324/us-and-international-partners-issue-recommendations-to-secure-software-products/" target="_blank">memory safe languages</a> like <a href="https://www.rust-lang.org/" target="_blank">Rust</a>. Other languages are <a href="https://github.com/google/sanitizers/wiki/AddressSanitizer" target="_blank">also upping their security game</a>. <a href="https://en.wikipedia.org/wiki/Fuzzing" rel="noopener noreferrer" target="_blank">Fuzzers</a>—test tools that automatically modify inputs to computer programs to find weaknesses and bugs—are also getting ever more advanced.</p><p>But many security problems are in the logic underlying the code. For example, the Barracuda email exploit originated in a third-party library that would actually <a href="https://www.cvedetails.com/cve/CVE-2023-7101/" rel="noopener noreferrer" target="_blank">execute code</a> in Excel spreadsheets when they were scanned for viruses. Wiping out all the bugs in your code won’t save you from the decision to implement a feature to automatically execute code embedded in documents.</p><h2>The state of shipping software</h2><p>Another problem is that we often don’t know what code we are actually shipping. Software has gotten <em>huge</em>. In 1995 <a href="https://en.wikipedia.org/wiki/Niklaus_Wirth" rel="noopener noreferrer" target="_blank">Niklaus Wirth</a> lamented that software had grown to megabytes in size. In his article “A Plea for Lean Software,” he went on to describe his <a href="https://en.wikipedia.org/wiki/Oberon_(operating_system)" rel="noopener noreferrer" target="_blank">Oberon operating system</a>, which was only 200 kilobytes, including an editor and a compiler. There are now projects that have more than 200 KB for their configuration files alone.</p><p>A typical app today is built on <a href="https://www.electronjs.org/" rel="noopener noreferrer" target="_blank">Electron JS</a>, a framework that incorporates both Chromium (“Chrome”) and Node.JS, which provides access to tens of thousands of software packages for JavaScript. I estimate just using Electron JS entails at least 50 million lines of code if you include dependencies. Perhaps more. The app meanwhile likely pulls in hundreds or thousands of helper packages. Many packages used will also, by default, snitch on your users to advertisers and other data brokers. Dependencies pull in further dependencies, and exactly what gets included in the build can change on a daily basis, and no one really knows.</p><p>If this app controls anything in your house, it will also connect to a software stack over at <a href="https://spectrum.ieee.org/tag/amazon">Amazon</a>, probably also powered by Node.js, also pulling in many dependencies. </p><p class="pull-quote">We are likely looking at over 50 million active lines of code to open a garage door….</p><p>But wait, there’s more. We used to ship software as the output of a compiler, or perhaps as a bunch of files to be interpreted. Such software then had to be <em>installed</em> and <em>configured</em> to work right. Getting your code packaged to ship like this is a lot of work. But it was good work since it forced people to think about what was in their “package.” This software package would then integrate with an operating system and with local services, based on the configuration.</p><p>Since the software ran on a different computer than the one it was developed on, people really had to know what they shipped and think it through. And sometimes it didn’t work, leading to the joke where a developer tells the operations people, “Well, it works on my system,” and the retort “Then back up your email, we’re taking your laptop into production!”</p><p>This used to be a joke, but these days we often ship software as containers, shipping not only the software itself but also including operating system files to make sure the software runs in a well-known environment. This frequently entails effectively shipping a complete computer disk image. This again vastly expands the amount of code being deployed. Note that you can do good things with containers like Docker (see below), but there are a lot of images over 350 MB on the <a href="https://hub.docker.com/explore" rel="noopener noreferrer" target="_blank">Docker Hub</a>.</p><p>Add it all up and we are likely looking at over 50 million active lines of code to open a garage door, running several operating-system images on multiple servers.</p><p>Now, even if all the included dependencies are golden, are we sure that their security updates are making it to your garage door opener app? I wonder how many Electron apps are still shipping with the <a href="https://www.schneier.com/blog/archives/2023/09/critical-vulnerability-in-libwebp-library.html" rel="noopener noreferrer" target="_blank">image processing bug</a> that had Google and Apple scramble to put out updates last year. We don’t even know.</p><p>But even worse, it is a known fact that all these dependencies are <em>not</em> golden. The Node.js ecosystem has a <a href="https://thehackernews.com/2023/02/researchers-hijack-popular-npm-package.html" rel="noopener noreferrer" target="_blank">comical history</a> of package repositories <a href="https://snyk.io/blog/npm-security-preventing-supply-chain-attacks/" rel="noopener noreferrer" target="_blank">being taken over</a>, hijacked, or resurrected under the same name by someone else, someone with nefarious<a href="https://www.theregister.com/2023/06/19/npm_s3_buckets_malware/" rel="noopener noreferrer" target="_blank"> plans for your security</a>. <a href="https://www.theregister.com/2023/06/02/novel_pypi_attack_reversinglabs/" rel="noopener noreferrer" target="_blank">PyPI</a> (a <a href="https://spectrum.ieee.org/tag/python">Python</a> counterpart of Node.js) has suffered from <a href="https://www.theregister.com/2023/01/04/pypi_pytorch_dependency_attack/" rel="noopener noreferrer" target="_blank">similar problems</a>. Dependencies always need scrutiny, but no one can reasonably be expected to <a href="https://medium.com/graph-commons/analyzing-the-npm-dependency-network-e2cf318c1d0d" rel="noopener noreferrer" target="_blank">check thousands of them frequently</a>. But we prefer not to think about this. (Note that you should also not overshoot and needlessly reimplement everything yourself to prevent dependencies. There are very good modules that <a href="https://sqlite.org/" rel="noopener noreferrer" target="_blank">likely are more secure</a> than what you could type in on your own.)</p><p>The world is shipping far too much code where we don’t even know what we ship and we aren’t looking hard enough (or at all) at what we <em>do</em> know we ship.</p><h2>You <em>can</em> write lean code today</h2><p>Writing has been called the process by which you find out you don’t <a href="https://fs.blog/writing-to-think/" rel="noopener noreferrer" target="_blank">know what you are talking about</a>. Actually doing stuff, meanwhile, is the process by which you find out you also did not know what you were writing about.</p><p>In a small reenactment of Wirth’s Oberon Project, I too wrote some code to prove a point, and to reassure myself I still know what I am talking and writing about. Can you still make useful and modern software the old way? I decided to try to create a minimalistic but full-featured image-sharing solution that I could trust.</p><p>Trifecta is the result. It is <a href="https://berthub.eu/articles/trifecta/" rel="noopener noreferrer" target="_blank">actual stand-alone software</a> that lets you use a browser to drag and drop images for easy sharing. It has pained me for years that I had to use <a href="https://imgur.com/" rel="noopener noreferrer" target="_blank">imgur</a> for this purpose. Not only does imgur install lots of cookies and trackers in my browser, I also force these trackers onto the people who view the images that I share. If you want to self-host a Web service like this, you also don’t want to get hacked. Most image-sharing solutions I found that you could run yourself are based on huge frameworks that I don’t trust too much for the reasons outlined above.</p><p>So, also to make a point, I decided to create a minimalistic but also useful image-sharing solution that I could trust. And more important, that other people could trust as well, because you can check out all Trifecta’s code within a few hours. It consists of <a href="https://berthub.eu/articles/posts/trifecta-technology" target="_blank">1,600 lines of new source code</a>, plus around five important dependencies. </p><p>You end up with a grand total of 3 megabytes of code.</p><p>To contrast, <a href="https://github.com/CaramelFur/Picsur/pkgs/container/picsur" rel="noopener noreferrer" target="_blank">one other image-sharing solution</a> ships as a 288-MB Docker image, although admittedly it looks better and has some more features. But not 285 MB worth of them. Another comparison is <a href="https://github.com/SashenJayathilaka/Photo-Sharing-Application" rel="noopener noreferrer" target="_blank">this Node-based picture-sharing solution</a>, which clocks in at 1,600 dependencies, apparently totaling over 4 million lines of JavaScript.</p><p class="pull-quote">The world ships too much code, most of it by third parties, sometimes unintended, most of it uninspected. <em></em></p><p><span></span>Note that Trifecta is not intended as a public site where random people can share images, as that does not tend to end well. It is however very suitable for company or personal use. You can read more about the project <a href="https://berthub.eu/articles/trifecta" target="_blank">here</a>, and there is also <a href="https://berthub.eu/articles/posts/trifecta-technology" target="_blank">a page</a> about the technology used to deliver such a tiny self-contained solution.</p><h2>Response to Trifecta</h2><p>This has been rather interesting. The most common response to Trifecta so far has been that I should use a whole bag of Amazon Web Services to deploy it. This is an exceedingly odd response to a project with the clearly stated goal of providing stand-alone software that does not rely on external services. I’m not sure what is going on here.</p><p>Another reaction has been that I treat Docker unfairly, and that you could definitely use containers for good. And I agree wholeheartedly. But I also look at what people are actually doing (also with other forms of containers or virtual machines), and it’s not so great.</p><p>I want to end this post with some observations from <a href="https://cr.yp.to/bib/1995/wirth.pdf" target="_blank">Niklaus Wirth’s 1995 paper</a>:</p><blockquote>“To some, complexity equals power. (…) Increasingly, <em>people seem to misinterpret complexity as sophistication</em>, which is baffling—the incomprehensible should cause suspicion rather than admiration.”</blockquote><p>I’ve similarly observed that some people prefer complicated systems. As <a href="https://en.wikipedia.org/wiki/Tony_Hoare" rel="noopener noreferrer" target="_blank">Tony Hoare</a> noted long ago, “[T]here are two methods in software design. <a href="https://dl.acm.org/doi/pdf/10.1145/1283920.1283936" rel="noopener noreferrer" target="_blank">One is to make the program so simple, there are obviously no errors</a>. The other is to make it so complicated, there are no obvious errors.” If you can’t do the first variant, the second way starts looking awfully attractive perhaps.</p><p>Back to Wirth: </p><blockquote>“Time pressure is probably the foremost reason behind the emergence of bulky software. The time pressure that designers endure discourages careful planning. It also discourages improving acceptable solutions; instead, it encourages quickly conceived software additions and corrections. Time pressure gradually corrupts an engineer’s standard of quality and perfection. It has a detrimental effect on people as well as products.”</blockquote><p>Why spend weeks paring down your software when you can also ship a whole pre-installed operating-system image that just works?</p><blockquote>“The plague of software explosion is not a ‘law of nature.’ It is avoidable, and it is the software engineer’s task to curtail it.”</blockquote><p>If this is indeed on the shoulders of software people, we should perhaps demand more time for it.</p><p>The world ships too much code, most of it by third parties, sometimes unintended, most of it uninspected. Because of this, there is a huge <em>attack surface</em> full of mediocre code. Efforts are ongoing to improve the quality of code itself, but many exploits are due to logic fails, and less progress has been made scanning for those. Meanwhile, great strides could be made by paring down just how much code we expose to the world. This will increase time to market for products, but legislation is around the corner that should force vendors to take security more seriously.</p><p>Trifecta is, like Wirth’s Oberon Project mentioned above, meant as a proof that you can deliver a lot of functionality even with a limited amount of code and dependencies. With effort and legislation, maybe the future could again bring sub-50-million-line garage-door openers. Let’s try to make it happen.</p><div class="around-the-web"><div class="from-your-site__headline">From Your Site Articles</div><ul class="around-the-web__list"><li class="from-your-site__item"><a href="https://spectrum.ieee.org/bruce-schneier-wants-you-to-make-software-better" class="from-your-site__link" target="_blank" rel="noopener noreferrer">Bruce Schneier Wants You to Make Software Better ›</a></li><li class="from-your-site__item"><a href="https://spectrum.ieee.org/functional-programming" class="from-your-site__link" target="_blank" rel="noopener noreferrer">Why Functional Programming Should Be the Future of Software Development ›</a></li><li class="from-your-site__item"><a href="https://spectrum.ieee.org/lean-software-power-electronics" class="from-your-site__link" target="_blank" rel="noopener noreferrer">Lean Software, Power Electronics, and the Return of Optical Storage - IEEE Spectrum ›</a></li><li class="from-your-site__item"><a href="https://spectrum.ieee.org/green-software" class="from-your-site__link" target="_blank" rel="noopener noreferrer">What Is Green Software and Why Do We Need It? - IEEE Spectrum ›</a></li><li class="from-your-site__item"><a href="https://spectrum.ieee.org/lean-software-development-2667603125" class="from-your-site__link" target="_blank" rel="noopener noreferrer">Software Sucks, but It Doesn’t Have To - IEEE Spectrum ›</a></li></ul><div class="around-the-web__headline">Related Articles Around the Web</div><ul class="around-the-web__list"><li class="around-the-web__item"><a href="https://berthub.eu/articles/posts/a-2024-plea-for-lean-software/" class="around-the-web__link" target="_blank" rel="noopener noreferrer">A 2024 Plea for Lean Software (with running code) - Bert Hubert's ... ›</a></li></ul></div></div></div><span class="" data-elid="2667183018" data-post-url="https://spectrum.ieee.org/lean-software-development" data-authors="Bert Hubert" data-headline="Why Bloat Is Still Software’s Biggest Vulnerability" data-page-title="Why Bloat Is Still Software’s Biggest Vulnerability - IEEE Spectrum"></span><div class="tags"><a class="tags__item" href="https://spectrum.ieee.org/tag/coding">coding</a><a class="tags__item" href="https://spectrum.ieee.org/tag/software-bloat">software bloat</a><a class="tags__item" href="https://spectrum.ieee.org/tag/cybersecurity">cybersecurity</a><a class="tags__item" href="https://spectrum.ieee.org/tag/cloud-computing">cloud computing</a></div></div></div></div><script type="application/json" id="post-context-2667183018" class="post-context post-context-2667183018"> {"customDimensions": {"5":"Bert Hubert","11":2667183018,"7":"coding, software bloat, cybersecurity, cloud computing","10":"cybersecurity","6":"computing","8":"02/08/2024"}, "post": {"id": 2667183018, "providerId": 0, "sections": [0, 497728257, 539626628, 544169516, 544169517, 539617903, 2241528953, 2241528957], "authors": [26483257], "streams": [], "split_testing": {}} } </script></article></div></div></div></div><div class="container_feature_below" id="sOpen_Current_Feature_Post_0_0_15_0_0_1"><div class="" id="sOpen_Current_Feature_Post_0_0_15_0_0_1_0"><div class="mb-2 post-author-list" id="sOpen_Current_Feature_Post_0_0_15_0_0_1_0_0"><div class="posts-custom posts-custom-section section-holder clearfix" data-block="None" data-format="posts-custom" data-source="current_post" data-source-type="current_post" data-source-unique="true" data-section-id="" data-is-reordable="false" data-using-stickers="false" data-has-more="false" data-attr-v="2" data-attr-posts_id="sOpen_Current_Feature_Post_0_0_15_0_0_1_0_0" data-attr-layout_quality="1" data-attr-node_id="/root/blocks/block[open_current_feature_post]/abtests/abtest[1]/element_wrapper/element_wrapper/current_post-" data-attr-layout_all_headline_tag="h1" data-attr-layout_all_subheadline_tag="h2" data-attr-all_element_order="author,headline,subheadline,section,community_name,date,date_modified,badges,badges_sponsored,photo_credit,photo_caption,body,snark_line,page_views,post_shares,follow_button,community_comments,like_button,source_link,collection_button,tags,primary_tag,main_author,all_sections,product_prices,product_vendor,product_buy_link,words_count,time_to_read,site_field_first_name,site_field_last_name,site_field_Instagram,site_field_member_badges,site_field_Twitter,site_field_LinkedIn,site_field_grade,site_field_Facebook,custom_field_due_date,custom_field_FeaturePostImgPosition,custom_field_pdf_version,custom_field_copy_editor,custom_field_FullwidthCardColor,custom_field_disable_comments,custom_field_PodcastVideoTime,custom_field_fullwidthbackgroundposition,custom_field_lightbox_img_shortcode_ids,custom_field_access,custom_field_Editor,custom_field_PodcastEpisode,custom_field_publication_date,custom_field_TimeofRead,custom_field_FeaturePostColor,custom_field_FullwidthCardPosition,custom_field_is_updated_post,custom_field_youtube_video" data-attr-layout_author="top" data-attr-layout_remove_image="true" data-attr-show_authors_bio="true" data-attr-element_classes="post-author-list" data-attr-data-rm-advanced="true" data-attr-data-rm-ecomerce="true" data-attr-filters="section,post_body_pager" data-attr-section_url="" data-attr-source="" data-attr-format="posts-custom" data-attr-is_current_post="true"><div class="posts-wrapper clearfix"><div class="widget post-partial tag-coding tag-software-bloat tag-cybersecurity tag-cloud-computing post-section--topic/computing" data-category="Computing"><article elid="2667183018" data-frozen-sections="[]" class="clearfix image-article sm-mb-1 quality-HD post-2667183018" data-category="Computing"><div class="row px10"><div class="rm-col-center col sm-mb-1" style="width:100.0%;"><div class="widget__body clearfix sm-mt-1"><div class="social-author clearfix"><div class="social-author__avatar image"><div class="cover-all image" style="background-image: url("https://spectrum.ieee.org/res/avatars/default")"></div></div><a class="social-author__name" href="https://spectrum.ieee.org/u/bert-hubert" data-type="text">Bert Hubert</a><div class="social-author__bio"><p>Bert Hubert is the founder of PowerDNS, software that powers a significant fraction of the Internet. In addition, Bert co-founded a joint-venture with notable security company Fox-IT. In between he spent several years working for the Dutch government on cyber- and national security. After selling both companies, Bert spent 18 months doing DNA research at TU Delft, leading to two publications in major science journals. These days, he focuses on open standards, (EU) tech legislation, decentralized communications, internet measurements & research (mostly DNA and GNSS). In addition he until recently sat on a <a href="https://berthub.eu/articles/posts/my-new-part-time-job/">government board</a> that regulates the Dutch Intelligence and Security agencies. Bert is now a part-time technical advisor at the Dutch Electoral Council ("FEC").</p></div></div></div><div class="widget__head"></div></div></div><script type="application/json" id="post-context-2667183018" class="post-context post-context-2667183018"> {"customDimensions": {"5":"Bert Hubert","11":2667183018,"7":"coding, software bloat, cybersecurity, cloud computing","10":"cybersecurity","6":"computing","8":"02/08/2024"}, "post": {"id": 2667183018, "providerId": 0, "sections": [0, 497728257, 539626628, 544169516, 544169517, 539617903, 2241528953, 2241528957], "authors": [26483257], "streams": [], "split_testing": {}} } </script></article></div></div></div></div><span class="viewport-css-anchor"></span></div><div class="" id="sOpen_Current_Feature_Post_0_0_15_0_0_1_1_1_0"><div class="post-partial article__comments"><div class="article-content__comments-wrapper"><div id="comments-widget"><div class="talk-comments-wrp community-native-wrp " data-talk_id="post:2667183018:comments" data-limit="3" data-order="best" data-is_amp="" data-count_top_level="17" data-count_featured="0" data-show_rating="False" data-all_element_order="avatar,title,date,site_field_member_badges,site_field_grade,message,update_author_rating,update_avatar,follow,bio,review" data-words-per-message="{"min": 1, "max": 100}" data-inactive_layout_attributes="update_avatar,follow,bio,review" data-active_layout_attributes="site_field_member_badges,site_field_grade"><div class="editmode-section-title"></div><a href="#" class="hidden new-comments-notification" aria-label="New coments notification"></a><div class="comment-headline">The Conversation (17)</div><div class="add-comment"><div class="comment_placeholder-wrp"><div class="animated-background"><div class="placeholder__textarea_top"></div><div class="placeholder__textarea_botmiddle_left"></div><div class="placeholder__textarea_botmiddle_right"></div><div class="placeholder__textarea_bottom"></div><div class="placeholder__button_b"></div><div class="placeholder__button_i"></div><div class="placeholder__button_publish"></div></div><div class="comment-login-wrp"></div></div></div><div class="comment-header"></div><div class="talk--messages"><div class="talk--messages__featured"></div><div class="talk--messages__top_level"><div id="comment-65ca54d1c579342c6953167d" class="comment--item approved-comment" data-talk_id="post:2667183018:comments" data-message_id="65ca54d1c579342c6953167d" data-parents=""><div class="comment--item-avatar"><img src="https://spectrum.ieee.org/res/avatars/default" title="Paul Egan" alt="Paul Egan" loading="lazy" width="38" height="38"/></div><div class="comment--item-text"><span class="comment--item-username">Paul Egan</span><span class="comment--item-date" title="February 12 2024, 17:26:41">12 Feb, 2024</span><div class="comment--custom-field-grade" data-value="M"> M </div><div class="comment--item-message"><p>I thought the reason for "bulky software" was a conspiracy by memory and storage manufacturers to force customers to buy more memory/storage. It won't be long before we need 10 TB of storage and 256 GB of memory on our mobile device to open our garage door.</p></div><div class="comment--item--action"><div><a href="javascript: void(0);" title="reply" class="comment--item__reply disabled" data-message_id="65ca54d1c579342c6953167d" aria-label="reply"><svg class="comment-action-icon" xmlns="http://www.w3.org/2000/svg" width="17" height="17" viewbox="0 0 24 24" aria-hidden="true"><path d="M10 9V5l-7 7 7 7v-4.1c5 0 8.5 1.6 11 5.1-1-5-4-10-11-11z"></path><path d="M0 0h24v24H0z" fill="none"></path></svg></a><a href="javascript: void(0);" title="share" class="comment--item__share disabled" data-message_id="65ca54d1c579342c6953167d" aria-label="share"><svg class="comment-action-icon" xmlns="http://www.w3.org/2000/svg" width="17" height="17" viewbox="0 0 24 24" aria-hidden="true"><path d="M0 0h24v24H0z" fill="none"></path><path d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92 1.61 0 2.92-1.31 2.92-2.92s-1.31-2.92-2.92-2.92z"></path></svg></a><a href="javascript: void(0);" title="like" class="comment--item__like disabled" data-action="like" data-message_id="65ca54d1c579342c6953167d" aria-label="like"><svg class="comment-action-icon" xmlns="http://www.w3.org/2000/svg" width="17" height="17" viewbox="0 0 24 24" aria-hidden="true"><path fill="none" d="M0 0h24v24H0V0z"></path><path d="M1 21h4V9H1v12zm22-11c0-1.1-.9-2-2-2h-6.31l.95-4.57.03-.32c0-.41-.17-.79-.44-1.06L14.17 1 7.59 7.59C7.22 7.95 7 8.45 7 9v10c0 1.1.9 2 2 2h9c.83 0 1.54-.5 1.84-1.22l3.02-7.05c.09-.23.14-.47.14-.73v-2z"></path></svg></a><a href="javascript: void(0);" title="unlike" class="comment--item__dislike disabled" data-action="dislike" data-message_id="65ca54d1c579342c6953167d" aria-label="unlike"><svg class="comment-action-icon" xmlns="http://www.w3.org/2000/svg" width="17" height="17" viewbox="0 0 24 24" aria-hidden="true"><path fill="none" d="M0 0h24v24H0z"></path><path d="M15 3H6c-.83 0-1.54.5-1.84 1.22l-3.02 7.05c-.09.23-.14.47-.14.73v2c0 1.1.9 2 2 2h6.31l-.95 4.57-.03.32c0 .41.17.79.44 1.06L9.83 23l6.59-6.59c.36-.36.58-.86.58-1.41V5c0-1.1-.9-2-2-2zm4 0v12h4V3h-4z"></path></svg></a></div></div><div class="comment-login-wrp"></div></div><div class="replies level-two "><a href="javascript: void(0);" class="comment--show--replies" data-message_id="65ca54d1c579342c6953167d" aria-label="show replies"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewbox="0 0 24 24" aria-hidden="true"><path d="M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"></path><path d="M0 0h24v24H0z" fill="none"></path></svg><span class="comment--count">1</span> Reply </a><a href="javascript: void(0);" class="comment--hide--replies hidden" data-message_id="65ca54d1c579342c6953167d" aria-label="hide replies"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewbox="0 0 24 24" aria-hidden="true"><path d="M12 8l-6 6 1.41 1.41L12 10.83l4.59 4.58L18 14z"></path><path d="M0 0h24v24H0z" fill="none"></path></svg> Hide replies </a><div class="reply-items hidden"></div><div class="talk--load_more__replies hidden" data-message_id="65ca54d1c579342c6953167d">Show More Replies</div></div></div><div id="comment-65cd2d7d4af72e10ef5e3c01" class="comment--item approved-comment" data-talk_id="post:2667183018:comments" data-message_id="65cd2d7d4af72e10ef5e3c01" data-parents=""><div class="comment--item-avatar"><img src="https://spectrum.ieee.org/media-library/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpbWFnZSI6Imh0dHBzOi8vYXNzZXRzLnJibC5tcy81MTQ3MTA3MS9vcmlnaW4ucG5nIiwiZXhwaXJlc19hdCI6MTczODI1MzA3M30.R8JAgTxRgIx4B3m9q73PUYKvA7uqwAVgT3ngJTjovnE/image.png?width=210" title="John Navas" alt="John Navas" loading="lazy" width="38" height="38"/></div><div class="comment--item-text"><span class="comment--item-username">John Navas</span><span class="comment--item-date" title="February 14 2024, 21:15:41">14 Feb, 2024</span><div class="comment--custom-field-grade" data-value="INDV"> INDV </div><div class="comment--item-message"><p>Well-intended, but falls prey to the issues it decries. Trifecta:</p><p>1. written in JavaScript and C++, security nightmares.</p><p>2. assumes cookies can be "locked."</p><p>3. hosted behind a "real" web server.</p><p>4. connects to multiple complex systems.</p><p>5. password authentication alone is inherently insecure.</p><p>The reality is that expectations for modern systems inevitably involve complexity. It's simply not practical to rewrite all necessary pieces in a minimalistic style, and the result would likely be worse in any event.</p><p>a. Good.</p><p>b. Cheap.</p><p>c. Efficient.</p><p>Pick 2. If good and efficient, it will not be cheap.</p></div><div class="comment--item--action"><div><a href="javascript: void(0);" title="reply" class="comment--item__reply disabled" data-message_id="65cd2d7d4af72e10ef5e3c01" aria-label="reply"><svg class="comment-action-icon" xmlns="http://www.w3.org/2000/svg" width="17" height="17" viewbox="0 0 24 24" aria-hidden="true"><path d="M10 9V5l-7 7 7 7v-4.1c5 0 8.5 1.6 11 5.1-1-5-4-10-11-11z"></path><path d="M0 0h24v24H0z" fill="none"></path></svg></a><a href="javascript: void(0);" title="share" class="comment--item__share disabled" data-message_id="65cd2d7d4af72e10ef5e3c01" aria-label="share"><svg class="comment-action-icon" xmlns="http://www.w3.org/2000/svg" width="17" height="17" viewbox="0 0 24 24" aria-hidden="true"><path d="M0 0h24v24H0z" fill="none"></path><path d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92 1.61 0 2.92-1.31 2.92-2.92s-1.31-2.92-2.92-2.92z"></path></svg></a><a href="javascript: void(0);" title="like" class="comment--item__like disabled" data-action="like" data-message_id="65cd2d7d4af72e10ef5e3c01" aria-label="like"><svg class="comment-action-icon" xmlns="http://www.w3.org/2000/svg" width="17" height="17" viewbox="0 0 24 24" aria-hidden="true"><path fill="none" d="M0 0h24v24H0V0z"></path><path d="M1 21h4V9H1v12zm22-11c0-1.1-.9-2-2-2h-6.31l.95-4.57.03-.32c0-.41-.17-.79-.44-1.06L14.17 1 7.59 7.59C7.22 7.95 7 8.45 7 9v10c0 1.1.9 2 2 2h9c.83 0 1.54-.5 1.84-1.22l3.02-7.05c.09-.23.14-.47.14-.73v-2z"></path></svg></a><a href="javascript: void(0);" title="unlike" class="comment--item__dislike disabled" data-action="dislike" data-message_id="65cd2d7d4af72e10ef5e3c01" aria-label="unlike"><svg class="comment-action-icon" xmlns="http://www.w3.org/2000/svg" width="17" height="17" viewbox="0 0 24 24" aria-hidden="true"><path fill="none" d="M0 0h24v24H0z"></path><path d="M15 3H6c-.83 0-1.54.5-1.84 1.22l-3.02 7.05c-.09.23-.14.47-.14.73v2c0 1.1.9 2 2 2h6.31l-.95 4.57-.03.32c0 .41.17.79.44 1.06L9.83 23l6.59-6.59c.36-.36.58-.86.58-1.41V5c0-1.1-.9-2-2-2zm4 0v12h4V3h-4z"></path></svg></a></div></div><div class="comment-login-wrp"></div></div><div class="replies level-two hidden"><a href="javascript: void(0);" class="comment--show--replies" data-message_id="65cd2d7d4af72e10ef5e3c01" aria-label="show replies"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewbox="0 0 24 24" aria-hidden="true"><path d="M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"></path><path d="M0 0h24v24H0z" fill="none"></path></svg><span class="comment--count">0</span> Replies </a><a href="javascript: void(0);" class="comment--hide--replies hidden" data-message_id="65cd2d7d4af72e10ef5e3c01" aria-label="hide replies"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewbox="0 0 24 24" aria-hidden="true"><path d="M12 8l-6 6 1.41 1.41L12 10.83l4.59 4.58L18 14z"></path><path d="M0 0h24v24H0z" fill="none"></path></svg> Hide replies </a><div class="reply-items hidden"></div><div class="talk--load_more__replies hidden" data-message_id="65cd2d7d4af72e10ef5e3c01">Show More Replies</div></div></div><div id="comment-65c7c4df4401d2ba5930f0c8" class="comment--item approved-comment" data-talk_id="post:2667183018:comments" data-message_id="65c7c4df4401d2ba5930f0c8" data-parents=""><div class="comment--item-avatar"><img src="https://spectrum.ieee.org/res/avatars/default" title="PATRICK BRYANT" alt="PATRICK BRYANT" loading="lazy" width="38" height="38"/></div><div class="comment--item-text"><span class="comment--item-username">PATRICK BRYANT</span><span class="comment--item-date" title="February 10 2024, 18:47:59">10 Feb, 2024</span><div class="comment--custom-field-grade" data-value="INDV"> INDV </div><div class="comment--item-message"><p>There is a truism in cyber security: "You can't secure what you don't know you have." This article points out the sheer impossibility of maintaining an accurate inventory on deployed code. The two mortal enemies of reliability are coupling and complexity, both of which are only increasing.</p><p></p><p>It also touches on a growing incestuous trend of software securing software. The recent compromise of Mandiant, a preeminent cyber security player, wasn't detected by sophisticated software. Instead, it was first detected by a human who noticed a discrepancy in an employee's VPN configuration. </p></div><div class="comment--item--action"><div><a href="javascript: void(0);" title="reply" class="comment--item__reply disabled" data-message_id="65c7c4df4401d2ba5930f0c8" aria-label="reply"><svg class="comment-action-icon" xmlns="http://www.w3.org/2000/svg" width="17" height="17" viewbox="0 0 24 24" aria-hidden="true"><path d="M10 9V5l-7 7 7 7v-4.1c5 0 8.5 1.6 11 5.1-1-5-4-10-11-11z"></path><path d="M0 0h24v24H0z" fill="none"></path></svg></a><a href="javascript: void(0);" title="share" class="comment--item__share disabled" data-message_id="65c7c4df4401d2ba5930f0c8" aria-label="share"><svg class="comment-action-icon" xmlns="http://www.w3.org/2000/svg" width="17" height="17" viewbox="0 0 24 24" aria-hidden="true"><path d="M0 0h24v24H0z" fill="none"></path><path d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92 1.61 0 2.92-1.31 2.92-2.92s-1.31-2.92-2.92-2.92z"></path></svg></a><a href="javascript: void(0);" title="like" class="comment--item__like disabled" data-action="like" data-message_id="65c7c4df4401d2ba5930f0c8" aria-label="like"><svg class="comment-action-icon" xmlns="http://www.w3.org/2000/svg" width="17" height="17" viewbox="0 0 24 24" aria-hidden="true"><path fill="none" d="M0 0h24v24H0V0z"></path><path d="M1 21h4V9H1v12zm22-11c0-1.1-.9-2-2-2h-6.31l.95-4.57.03-.32c0-.41-.17-.79-.44-1.06L14.17 1 7.59 7.59C7.22 7.95 7 8.45 7 9v10c0 1.1.9 2 2 2h9c.83 0 1.54-.5 1.84-1.22l3.02-7.05c.09-.23.14-.47.14-.73v-2z"></path></svg></a><a href="javascript: void(0);" title="unlike" class="comment--item__dislike disabled" data-action="dislike" data-message_id="65c7c4df4401d2ba5930f0c8" aria-label="unlike"><svg class="comment-action-icon" xmlns="http://www.w3.org/2000/svg" width="17" height="17" viewbox="0 0 24 24" aria-hidden="true"><path fill="none" d="M0 0h24v24H0z"></path><path d="M15 3H6c-.83 0-1.54.5-1.84 1.22l-3.02 7.05c-.09.23-.14.47-.14.73v2c0 1.1.9 2 2 2h6.31l-.95 4.57-.03.32c0 .41.17.79.44 1.06L9.83 23l6.59-6.59c.36-.36.58-.86.58-1.41V5c0-1.1-.9-2-2-2zm4 0v12h4V3h-4z"></path></svg></a></div></div><div class="comment-login-wrp"></div></div><div class="replies level-two hidden"><a href="javascript: void(0);" class="comment--show--replies" data-message_id="65c7c4df4401d2ba5930f0c8" aria-label="show replies"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewbox="0 0 24 24" aria-hidden="true"><path d="M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"></path><path d="M0 0h24v24H0z" fill="none"></path></svg><span class="comment--count">0</span> Replies </a><a href="javascript: void(0);" class="comment--hide--replies hidden" data-message_id="65c7c4df4401d2ba5930f0c8" aria-label="hide replies"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewbox="0 0 24 24" aria-hidden="true"><path d="M12 8l-6 6 1.41 1.41L12 10.83l4.59 4.58L18 14z"></path><path d="M0 0h24v24H0z" fill="none"></path></svg> Hide replies </a><div class="reply-items hidden"></div><div class="talk--load_more__replies hidden" data-message_id="65c7c4df4401d2ba5930f0c8">Show More Replies</div></div></div></div></div><script type="rm-preact-state">{"authors": {"22671151": {"id": 24336656, "path": "u/paul-egan", "title": "Paul Egan", "image": "https://spectrum.ieee.org/res/avatars/default", "about": "", "rating": 0, "owner_id": 22671151, "site_specific_data": {"mini_bio": null, "job_title": null, "LinkedIn": null, "grade": "M", "works_for": null, "alumni_of": null, "member_of": null, "Facebook": null, "affiliation": null, "last_name": "Egan", "first_name": "Paul", "Twitter": null, "Instagram": null, "member_badges": null}}, "24553978": {"id": 26492126, "path": "u/john-navas", "title": "John Navas", "image": "https://spectrum.ieee.org/media-library/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpbWFnZSI6Imh0dHBzOi8vYXNzZXRzLnJibC5tcy81MTQ3MTA3MS9vcmlnaW4ucG5nIiwiZXhwaXJlc19hdCI6MTczODI1MzA3M30.R8JAgTxRgIx4B3m9q73PUYKvA7uqwAVgT3ngJTjovnE/image.png?width=210", "about": "", "rating": 0, "owner_id": 24553978, "site_specific_data": {"mini_bio": null, "job_title": null, "LinkedIn": null, "grade": "INDV", "works_for": null, "alumni_of": null, "member_of": null, "Facebook": null, "affiliation": null, "last_name": "Navas", "first_name": "John", "Twitter": null, "Instagram": null, "member_badges": null}}, "24550593": {"id": 26487924, "path": "u/patrick-bryant", "title": "PATRICK BRYANT", "image": "https://spectrum.ieee.org/res/avatars/default", "about": "", "rating": 0, "owner_id": 24550593, "site_specific_data": {"mini_bio": null, "job_title": null, "LinkedIn": null, "grade": "INDV", "works_for": null, "alumni_of": null, "member_of": null, "Facebook": null, "affiliation": null, "last_name": "BRYANT", "first_name": "PATRICK", "Twitter": null, "Instagram": null, "member_badges": null}}}, "forcedComments": [], "topLevelComments": [{"id": "65ca54d1c579342c6953167d", "html": "\u003cp\u003eI thought the reason for \"bulky software\" was a conspiracy by memory and storage manufacturers to force customers to buy more memory/storage. It won't be long before we need 10 TB of storage and 256 GB of memory on our mobile device to open our garage door.\u003c/p\u003e", "data": null, "payload": {"review_score": 5}, "status": "approved", "rating": 20, "author_id": 22671151, "created_ts": 1707758801, "updated_ts": 1707758801, "parents": "", "counts": {"replies": {"total": 1, "direct": 1, "public": {"total": 1, "direct": 1, "total_eq_1": true}}, "reports": 0}}, {"id": "65cd2d7d4af72e10ef5e3c01", "html": "\u003cp\u003eWell-intended, but falls prey to the issues it decries. Trifecta:\u003c/p\u003e\u003cp\u003e1. written in JavaScript and C++, security nightmares.\u003c/p\u003e\u003cp\u003e2. assumes cookies can be \"locked.\"\u003c/p\u003e\u003cp\u003e3. hosted behind a \"real\" web server.\u003c/p\u003e\u003cp\u003e4. connects to multiple complex systems.\u003c/p\u003e\u003cp\u003e5. password authentication alone is inherently insecure.\u003c/p\u003e\u003cp\u003eThe reality is that expectations for modern systems inevitably involve complexity. It's simply not practical to rewrite all necessary pieces in a minimalistic style, and the result would likely be worse in any event.\u003c/p\u003e\u003cp\u003ea. Good.\u003c/p\u003e\u003cp\u003eb. Cheap.\u003c/p\u003e\u003cp\u003ec. Efficient.\u003c/p\u003e\u003cp\u003ePick 2. If good and efficient, it will not be cheap.\u003c/p\u003e", "data": null, "payload": {"review_score": 5}, "status": "approved", "rating": 10, "author_id": 24553978, "created_ts": 1707945341, "updated_ts": 1707945341, "parents": "", "counts": {"replies": {"total": 0, "direct": 0, "public": {"total": 0, "direct": 0, "total_eq_1": false}}, "reports": 0}}, {"id": "65c7c4df4401d2ba5930f0c8", "html": "\u003cp\u003eThere is a truism in cyber security: \"You can't secure what you don't know you have.\" This article points out the sheer impossibility of maintaining an accurate inventory on deployed code. The two mortal enemies of reliability are coupling and complexity, both of which are only increasing.\u003c/p\u003e\u003cp\u003e\u003c/p\u003e\u003cp\u003eIt also touches on a growing incestuous trend of software securing software. The recent compromise of Mandiant, a preeminent cyber security player, wasn't detected by sophisticated software. Instead, it was first detected by a human who noticed a discrepancy in an employee's VPN configuration. \u003c/p\u003e", "data": null, "payload": {"review_score": 5}, "status": "approved", "rating": 10, "author_id": 24550593, "created_ts": 1707590879, "updated_ts": 1707590879, "parents": "", "counts": {"replies": {"total": 0, "direct": 0, "public": {"total": 0, "direct": 0, "total_eq_1": false}}, "reports": 0}}], "featuredComments": []} </script><div class="talk--load_more-wrp has_load_more"></div></div></div></div></div><!-- User Code --><script> var clickeableItems = [ ".talk-comments-wrp .add-comment", ".talk-comments-wrp .comment-item--publish", ".talk-comments-wrp .comment--item__reply", ".talk-comments-wrp .comment--item__like", ".talk-comments-wrp .comment--item__dislike", ".talk-comments-wrp .replies"]; var talkItems = document.querySelectorAll(clickeableItems.join(",")) || []; talkItems.forEach(function(item) { item.addEventListener("click", function(event){ event.preventDefault(); event.stopPropagation(); openGatedPopup('for_comments'); }, true); }); </script><!-- End User Code --></div><div class="mb-2 read_also_posts" id="sOpen_Current_Feature_Post_0_0_15_0_0_1_2_1_0"><div class="posts-custom posts-custom-section section-holder clearfix" data-block="section_1" data-format="posts-custom" data-source="filtered_parent_site" data-source-type="page" data-source-unique="true" data-section-id="" data-is-reordable="false" data-using-stickers="false" data-has-more="true" data-attr-v="2" data-attr-posts_id="sOpen_Current_Feature_Post_0_0_15_0_0_1_2_1_0" data-attr-source_unique="true" data-attr-without_current="true" data-attr-layout_quality="1" data-attr-node_id="/root/blocks/block[open_current_feature_post]/abtests/abtest[1]/element_wrapper/choose[2]/otherwise/posts-" data-attr-use_tag_image_for_lead_media="true" data-attr-source="filtered" data-attr-from_regular_sections_of_current_post="true" data-attr-from_regular_sections_other_than="webinar,whitepaper,sponsored,podcast,video,tests,issue-cover-posts,paper" data-attr-all_element_order="all_sections,headline,date,time_to_read,like_button,custom_field_TimeofRead,section,primary_tag,author,badges,badges_sponsored,photo_credit,community_name,subheadline,snark_line,page_views,photo_caption,follow_button,community_comments,body,collection_button,tags,source_link,main_author,post_shares,custom_field_contact-person-phone,custom_field_event-performer,custom_field_event-street-address,custom_field_job-type,custom_field_event-postal-code,custom_field_contact-person-title,custom_field_event-start,custom_field_company_name,custom_field_event-end,custom_field_hiring-organization,custom_field_event-price,custom_field_job-tags,custom_field_event-city,custom_field_contact_email,custom_field_posted-on-date,custom_field_job-title,custom_field_job-location,custom_field_event-region,custom_field_event-currency,custom_field_base-salary,custom_field_event-country,custom_field_contact_person,custom_field_expire-date,date_modified,custom_field_ContentType,custom_field_CustomFieldTestEG,custom_field_Issue,custom_field_FullwidthCardColor,custom_field_FullwidthCardPosition,product_prices,product_vendor,product_buy_link,site_field_Twitter,site_field_Facebook,site_field_Instagram,site_field_LinkedIn,custom_field_PodcastVideoTime,custom_field_Editor,custom_field_PodcastEpisode,custom_field_FeaturePostColor,custom_field_due_date,custom_field_FeaturePostImgPosition,custom_field_access,site_field_member_badges,custom_field_publication_date,words_count,site_field_first_name,site_field_last_name,site_field_grade,custom_field_pdf_version,custom_field_fullwidthbackgroundposition,custom_field_disable_comments,custom_field_lightbox_img_shortcode_ids,custom_field_copy_editor,custom_field_is_updated_post,custom_field_youtube_video" data-attr-limit="3" data-attr-layout_headline="right" data-attr-data-rm-device-crops="true" data-attr-layout_desktop_image_crop="original" data-attr-layout_image_column_width="28" data-attr-data-rm-advanced="true" data-attr-element_classes="read_also_posts" data-attr-layout_date="right" data-attr-layout_all_date_format="%d %b %Y" data-attr-layout_all_date_full_format="false" data-attr-layout_all_image_crop="original" data-attr-layout_like_button="right" data-attr-layout_all_sections="right" data-attr-layout_time_to_read="right" data-attr-format="posts-custom" data-attr-source_site="parent_site"><div class="posts-wrapper clearfix"><div class="widget tag-video-friday tag-robotics tag-kaist tag-figure post-section--topic/robotics" elid="2669971262" data-category="Robotics"><article elid="2669971262" data-frozen-sections="[]" class="clearfix image-article sm-mb-1 quality-HD post-2669971262"><div class="row px10"><div class="rm-col-center col sm-mb-1" style="width:28.0%;"><div class="widget__head"><a href="https://spectrum.ieee.org/video-friday-cobot-proxie" aria-label="Video Friday: Cobot Proxie"><img role="img" type="lazy-image" alt="Four wheeled white robots with big eye graphics pull carts around a warehouse." aria-label="Four wheeled white robots with big eye graphics pull carts around a warehouse." src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 2160 1215'%3E%3C/svg%3E" data-runner-src="https://spectrum.ieee.org/media-library/four-wheeled-white-robots-with-big-eye-graphics-pull-carts-around-a-warehouse.jpg?id=54966469&width=1200&height=675" style="object-fit: cover;" class="rm-lazyloadable-image" width="2160" height="1215"/></a></div></div><div class="rm-col-right col" style="width:72.0%;"><div class="widget__body clearfix sm-mt-1"><div class="all-related-sections"><a href="https://spectrum.ieee.org/topic/robotics/">Robotics</a><a href="https://spectrum.ieee.org/type/news/">News</a></div><h2 class="widget__headline h2"><a class="widget__headline-text custom-post-headline" href="https://spectrum.ieee.org/video-friday-cobot-proxie" aria-label="Video Friday: Cobot Proxie" data-type="text"> Video Friday: Cobot Proxie </a></h2><div class="social-date"><span class="social-date__text">8h</span></div><div class="time-to-read">3 min read</div><div class="like-button" data-post-likes="0"></div></div></div></div><script type="application/json" id="post-context-2669971262" class="post-context post-context-2669971262"> {"customDimensions": {"5":"Evan Ackerman","11":2669971262,"7":"video friday, robotics, kaist, figure","10":"robotics","6":"robotics","8":"11/22/2024"}, "post": {"id": 2669971262, "providerId": 0, "sections": [0, 497728257, 539266128, 544169523, 572343881, 591401899, 544169516], "authors": [21075149], "streams": [], "split_testing": {}} } </script></article></div><div class="widget tag-giving-tuesday tag-ieee-foundation tag-ieee-news tag-type-ti post-section--topic/the-institute" elid="2669959009" data-category="The Institute"><article elid="2669959009" data-frozen-sections="[]" class="clearfix image-article sm-mb-1 quality-HD post-2669959009"><div class="row px10"><div class="rm-col-center col sm-mb-1" style="width:28.0%;"><div class="widget__head"><a href="https://spectrum.ieee.org/ieee-foundation-giving-tuesday" aria-label="Double Your Impact This Giving Tuesday"><img role="img" type="lazy-image" alt="Illustration of several hands holding up credit cards, coins, dollar bills and hearts to put into a donation jar." aria-label="Illustration of several hands holding up credit cards, coins, dollar bills and hearts to put into a donation jar." src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6675 4172'%3E%3C/svg%3E" data-runner-src="https://spectrum.ieee.org/media-library/illustration-of-several-hands-holding-up-credit-cards-coins-dollar-bills-and-hearts-to-put-into-a-donation-jar.jpg?id=54836896&width=1200&height=750" style="object-fit: cover;" class="rm-lazyloadable-image" width="6675" height="4172"/></a></div></div><div class="rm-col-right col" style="width:72.0%;"><div class="widget__body clearfix sm-mt-1"><div class="all-related-sections"><a href="https://spectrum.ieee.org/topic/the-institute/">The Institute</a><a href="https://spectrum.ieee.org/type/article/">Article</a></div><h2 class="widget__headline h2"><a class="widget__headline-text custom-post-headline" href="https://spectrum.ieee.org/ieee-foundation-giving-tuesday" aria-label="Double Your Impact This Giving Tuesday" data-type="text"> Double Your Impact This Giving Tuesday </a></h2><div class="social-date"><span class="social-date__text">21 Nov 2024</span></div><div class="time-to-read">2 min read</div><div class="like-button" data-post-likes="0"></div></div></div></div><script type="application/json" id="post-context-2669959009" class="post-context post-context-2669959009"> {"customDimensions": {"5":"IEEE Foundation","11":2669959009,"7":"giving tuesday, ieee foundation, ieee news, type:ti","10":"ieee news","6":"the-institute","8":"11/21/2024"}, "post": {"id": 2669959009, "providerId": 0, "sections": [0, 497728257, 539626938, 544175596, 544169516], "authors": [25273863], "streams": [], "split_testing": {}} } </script></article></div><div class="widget tag-carbon-capture tag-climate-tech tag-methanol-economy tag-sustainable-energy tag-climate-change post-section--topic/climate-tech" elid="2669734082" data-category="Climate Tech"><article elid="2669734082" data-frozen-sections="[]" class="clearfix image-article sm-mb-1 quality-HD post-2669734082"><div class="row px10"><div class="rm-col-center col sm-mb-1" style="width:28.0%;"><div class="widget__head"><a href="https://spectrum.ieee.org/carbon-capture-2669734082" aria-label="French Startup Aims to Make Fuel Out of Thin Air"><img role="img" type="lazy-image" alt="Illustration of a shadow figure throwing a lasso around a smoke cloud labeled "C O2" as it rises from a factory's smokestack." aria-label="Illustration of a shadow figure throwing a lasso around a smoke cloud labeled "C O2" as it rises from a factory's smokestack." src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6000 4500'%3E%3C/svg%3E" data-runner-src="https://spectrum.ieee.org/media-library/illustration-of-a-shadow-figure-throwing-a-lasso-around-a-smoke-cloud-labeled-c-o2-as-it-rises-from-a-factory-s-smokestack.jpg?id=54518299&width=1200&height=900" style="object-fit: cover;" class="rm-lazyloadable-image" width="6000" height="4500"/></a></div></div><div class="rm-col-right col" style="width:72.0%;"><div class="widget__body clearfix sm-mt-1"><div class="all-related-sections"><a href="https://spectrum.ieee.org/topic/climate-tech/">Climate Tech</a><a href="https://spectrum.ieee.org/topic/energy/">Energy</a><a href="https://spectrum.ieee.org/type/news/">News</a><a href="https://spectrum.ieee.org/topic/transportation/">Transportation</a><a href="https://spectrum.ieee.org/collections/climate-change/">Climate Change</a></div><h2 class="widget__headline h2"><a class="widget__headline-text custom-post-headline" href="https://spectrum.ieee.org/carbon-capture-2669734082" aria-label="French Startup Aims to Make Fuel Out of Thin Air" data-type="text"> French Startup Aims to Make Fuel Out of Thin Air </a></h2><div class="social-date"><span class="social-date__text">21 Nov 2024</span></div><div class="time-to-read">4 min read</div><div class="like-button" data-post-likes="2"></div></div></div></div><script type="application/json" id="post-context-2669734082" class="post-context post-context-2669734082"> {"customDimensions": {"5":"Willie D. Jones","11":2669734082,"7":"carbon capture, climate tech, methanol economy, sustainable energy, climate change","10":"carbon capture","6":"climate-tech","8":"11/21/2024"}, "post": {"id": 2669734082, "providerId": 0, "sections": [0, 497728257, 539619077, 544169516, 544169523, 539622579, 2221589049, 598415773], "authors": [20372183], "streams": [], "split_testing": {}} } </script></article></div></div></div></div></div></div></div><div class="wrapper-lazy-loading infinite-scroll-wrapper next-page-wrapper" style="display: block !important;" data-skl-id="/root/blocks/block[ss_feature_post]/abtests/abtest[1]/element_wrapper/lazyload-" data-has-more="true" data-more-posts-exists="true" data-posts-sources="post_sponsor_webinar_whitepaper,multi_filtered_parent_site_filtered_parent_site,post_sponsored,post_most_sections,trending_posts_id" data-ignore-page-number="false"></div></div><span class="js-brick-description hidden" data-name="JS post functions"></span><!-- User Code --><script> function feature_post_full_style(){ var feature_post_full = document.querySelectorAll(".feature_post_full:not(.proc)"); for (i = 0; i < feature_post_full.length; i++) { var style_post_color = feature_post_full[i].querySelector(".custom-field-FeaturePostColor"); var style_post_position = feature_post_full[i].querySelector(".custom-field-FeaturePostImgPosition"); if(style_post_color){ feature_post_full[i].classList.add(style_post_color.innerText.trim()); }else{ feature_post_full[i].classList.add('DarkGray'); } if(style_post_position){ feature_post_full[i].classList.add(style_post_position.innerText.trim()); } feature_post_full[i].classList.add('proc'); } } </script><!-- End User Code --></div><span class="js-brick-description hidden" data-name="Parsely Spectrum Tags"></span><span class="js-brick-description hidden" data-name="__Lightbox_Functionality"></span><div class="lightbox-layout" id="s__Lightbox_Functionality_0_0_36_0_0_1_1_1"><!-- User Code --><div class="lightbox__close hm__close"></div><!-- End User Code --></div><span class="js-brick-description hidden" data-name="__Social_Popup"></span></div></div><script class="rm-i-script" defer="defer" src="https://www.googletagmanager.com/gtag/js?id=UA-747464-1"></script><script class="rm-i-script"> (function (i, s, o, g, r, a, m) { i["GoogleAnalyticsObject"] = r; (i[r] = i[r] || function () { (i[r].q = i[r].q || []).push(arguments);}),(i[r].l = 1 * new Date()); })(window, document, "script", "/", "ga"); ga('create', 'UA-747464-1', 'auto', {'name': 'b'}); window.dataLayer = window.dataLayer || []; window.gtag = function(){dataLayer.push(arguments);} gtag('js', new Date()); var utmCampaignData = null;// ADD REFERRER AS SOURCE IF SOURCE IS NOT PRESENT OR IF ISN'T URL UTM if(utmCampaignData && (utmCampaignData.dataSource != "url" || !utmCampaignData['campaignSource'])) { var referrerAnchor = document.createElement('a'); referrerAnchor.setAttribute('href', document.referrer); if(referrerAnchor.href && referrerAnchor.host) { var splitHost = referrerAnchor.host.split("."); var nakedDomain = splitHost.length < 3 ? splitHost[0] : splitHost[1]; if (nakedDomain) { nakedDomain = nakedDomain[0].toUpperCase() + nakedDomain.substring(1); utmCampaignData['campaignSource'] = nakedDomain; } } } var configParams = { transport: 'beacon', send_page_view: false }; // DEFAULTS if (utmCampaignData) { configParams.campaignName = utmCampaignData.campaignName; configParams.campaignSource = utmCampaignData.campaignSource; configParams.campaignMedium = utmCampaignData.campaignMedium; configParams.campaignContent = utmCampaignData.campaignContent; if (utmCampaignData.campaignKeyword) { configParams.campaignKeyword = utmCampaignData.campaignKeyword; } } gtag('config', 'UA-747464-1', configParams);gtag('config', 'G-DPQFLXZCWN', configParams); window._ga_cd_params = window._ga_cd_params || {}; window._ga_cd_params["dimension9"] = 'test,cta-climate-tech';window._ga_cd_params["dimension5"] = "Bert Hubert"; window._ga_cd_params["dimension11"] = '2667183018'; window._ga_cd_params["dimension7"] = "coding, software bloat, cybersecurity, cloud computing"; window._ga_cd_params["dimension10"] = 'cybersecurity'; window._ga_cd_params["dimension6"] = 'computing'; window._ga_cd_params["dimension8"] = '02/08/2024'; if(window._ga_cd_params && Object.keys(window._ga_cd_params).length){ gtag('event', 'page_view', window._ga_cd_params); }else{ gtag('event', 'page_view'); } </script><script class="lazy-style" type="css"> .menu-item__title:after{background-image:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTNweCIgaGVpZ2h0PSI4cHgiIHZpZXdCb3g9IjAgMCAxMyA4IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPHRpdGxlPlJlY3RhbmdsZSBDb3B5IDk8L3RpdGxlPgogICAgPGcgaWQ9IlN5bWJvbHMiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSJEYXJrLS8tTmF2IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNDUxLjAwMDAwMCwgLTEzLjAwMDAwMCkiIHN0cm9rZT0iIzBEMEQwRCIgc3Ryb2tlLXdpZHRoPSIxLjUiPgogICAgICAgICAgICA8ZyBpZD0iR3JvdXAtMyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMzE0LjAwMDAwMCwgNi4wMDAwMDApIj4KICAgICAgICAgICAgICAgIDxwb2x5bGluZSBpZD0iUmVjdGFuZ2xlLUNvcHktOSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTQzLjQ4NTI4MSwgOC4zMTM3MDgpIHNjYWxlKC0xLCAxKSByb3RhdGUoMTM1LjAwMDAwMCkgdHJhbnNsYXRlKC0xNDMuNDg1MjgxLCAtOC4zMTM3MDgpICIgcG9pbnRzPSIxMzkuNDg1MjgxIDQuMzEzNzA4NSAxNDcuNDg1MjgxIDQuMzEzNzA4NSAxNDcuNDg1MjgxIDEyLjMxMzcwODUiPjwvcG9seWxpbmU+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==")}.dark_layout .menu-item__title:after{background-image:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTNweCIgaGVpZ2h0PSI4cHgiIHZpZXdCb3g9IjAgMCAxMyA4IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPGcgaWQ9IlN5bWJvbHMiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSJEYXJrLS8tTmF2IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNDUxLjAwMDAwMCwgLTEzLjAwMDAwMCkiIHN0cm9rZT0iI0Q5RDlEOSIgc3Ryb2tlLXdpZHRoPSIxLjUiPgogICAgICAgICAgICA8ZyBpZD0iR3JvdXAtMyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMzE0LjAwMDAwMCwgNi4wMDAwMDApIj4KICAgICAgICAgICAgICAgIDxwb2x5bGluZSBpZD0iUmVjdGFuZ2xlLUNvcHktOSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTQzLjQ4NTI4MSwgOC4zMTM3MDgpIHNjYWxlKC0xLCAxKSByb3RhdGUoMTM1LjAwMDAwMCkgdHJhbnNsYXRlKC0xNDMuNDg1MjgxLCAtOC4zMTM3MDgpICIgcG9pbnRzPSIxMzkuNDg1MjgxIDQuMzEzNzA4NSAxNDcuNDg1MjgxIDQuMzEzNzA4NSAxNDcuNDg1MjgxIDEyLjMxMzcwODUiPjwvcG9seWxpbmU+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==")}#mobile_search_icon.fa-search:before{content:url(https://assets.rbl.ms/26018263/origin.png)}.like-btn.like .heart{background-image:url("data:image/svg+xml,%3Csvg%20width='12px'%20height='14px'%20viewBox='0%200%2012%2014'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3E%3Cg%20transform='translate(-444.000000,-335.000000)'%20stroke='%23404040'%3E%3Cg%20transform='translate(208.000000,332.000000)'%3E%3Cg%20transform='translate(237.000000,4.000000)'%3E%3Cpath%20d='M1,0%20L9,0%20C9.55228475,-1.01453063e-16%2010,0.44771525%2010,1%20L10,12%20L10,12%20L5,9%20L0,12%20L0,1%20C-6.76353751e-17,0.44771525%200.44771525,1.01453063e-16%201,0%20Z'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A")}.like-btn.unlike .heart,.like-btn.like .heart:active,.dark_layout .like-btn.like .heart:active,.widget.tag-type-podcast .like-btn.like .heart:active{background-image:url("data:image/svg+xml,%3Csvg%20width='12px'%20height='14px'%20viewBox='0%200%2012%2014'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg%20stroke='none'%20stroke-width='1'%20fill='%23FF4C00'%20fill-rule='evenodd'%3E%3Cg%20transform='translate(-444.000000,-335.000000)'%20stroke='%23FF4C00'%3E%3Cg%20transform='translate(208.000000,332.000000)'%3E%3Cg%20transform='translate(237.000000,4.000000)'%3E%3Cpath%20d='M1,0%20L9,0%20C9.55228475,-1.01453063e-16%2010,0.44771525%2010,1%20L10,12%20L10,12%20L5,9%20L0,12%20L0,1%20C-6.76353751e-17,0.44771525%200.44771525,1.01453063e-16%201,0%20Z'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A")}.dark_layout .like-btn.like .heart,.widget.tag-type-podcast .like-btn.like .heart{background-image:url("data:image/svg+xml,%3Csvg%20width='12px'%20height='14px'%20viewBox='0%200%2012%2014'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3E%3Cg%20transform='translate(-444.000000,-335.000000)'%20stroke='%23BFBFBF'%3E%3Cg%20transform='translate(208.000000,332.000000)'%3E%3Cg%20transform='translate(237.000000,4.000000)'%3E%3Cpath%20d='M1,0%20L9,0%20C9.55228475,-1.01453063e-16%2010,0.44771525%2010,1%20L10,12%20L10,12%20L5,9%20L0,12%20L0,1%20C-6.76353751e-17,0.44771525%200.44771525,1.01453063e-16%201,0%20Z'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A")}.like-btn.like .heart:hover,.like-btn.unlike .heart:hover{background-image:url("data:image/svg+xml,%3Csvg%20width='12px'%20height='14px'%20viewBox='0%200%2012%2014'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg%20stroke='none'%20stroke-width='1'%20fill='%23404040'%20fill-rule='evenodd'%3E%3Cg%20transform='translate(-444.000000,-335.000000)'%20stroke='%23404040'%3E%3Cg%20transform='translate(208.000000,332.000000)'%3E%3Cg%20transform='translate(237.000000,4.000000)'%3E%3Cpath%20d='M1,0%20L9,0%20C9.55228475,-1.01453063e-16%2010,0.44771525%2010,1%20L10,12%20L10,12%20L5,9%20L0,12%20L0,1%20C-6.76353751e-17,0.44771525%200.44771525,1.01453063e-16%201,0%20Z'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A")}.dark_layout .like-btn.like .heart:hover{background-image:url("data:image/svg+xml,%3Csvg%20width='12px'%20height='14px'%20viewBox='0%200%2012%2014'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg%20stroke='none'%20stroke-width='1'%20fill='%23bfbfbf'%20fill-rule='evenodd'%3E%3Cg%20transform='translate(-444.000000,-335.000000)'%20stroke='%23bfbfbf'%3E%3Cg%20transform='translate(208.000000,332.000000)'%3E%3Cg%20transform='translate(237.000000,4.000000)'%3E%3Cpath%20d='M1,0%20L9,0%20C9.55228475,-1.01453063e-16%2010,0.44771525%2010,1%20L10,12%20L10,12%20L5,9%20L0,12%20L0,1%20C-6.76353751e-17,0.44771525%200.44771525,1.01453063e-16%201,0%20Z'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A")}.fullwidth_post .widget__subheadline-text:before,.featured_post .widget__subheadline-text:before,.article_post .widget__subheadline-text:before,.story_teaser .widget__subheadline-text:before{background-image:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iOHB4IiBoZWlnaHQ9IjE1cHgiIHZpZXdCb3g9IjAgMCA4IDE1IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPGcgaWQ9IlBvZGNhc3QtcGFnZXMiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSIxMzc2LS0tUG9kY2FzdC1lcGlzb2RlcyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTQxMC4wMDAwMDAsIC0zNDkuMDAwMDAwKSIgc3Ryb2tlPSIjNTk1OTU5IiBzdHJva2Utd2lkdGg9IjEuNSI+CiAgICAgICAgICAgIDxnIGlkPSJHcm91cC0zIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzMi4wMDAwMDAsIDI3Mi4wMDAwMDApIj4KICAgICAgICAgICAgICAgIDxwb2x5bGluZSBpZD0iSGVkL0Rlay1TZXBhcmF0b3IiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDM3OC40ODkxNTcsIDg0LjM2Mzk2MSkgcm90YXRlKDQ1LjAwMDAwMCkgdHJhbnNsYXRlKC0zNzguNDg5MTU3LCAtODQuMzYzOTYxKSAiIHBvaW50cz0iMzczLjk4OTE1NyA3OS44NjM5NjEgMzgyLjk4OTE1NyA3OS44NjM5NjEgMzgyLjk4OTE1NyA4OC44NjM5NjEiPjwvcG9seWxpbmU+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==")}.dark_layout .widget__subheadline-text:before,.podcast_collection .widget__subheadline-text:before{background-image:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iOHB4IiBoZWlnaHQ9IjE1cHgiIHZpZXdCb3g9IjAgMCA4IDE1IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPHRpdGxlPkE0NENGMkU1LTlDODItNEUzRS1CMzExLTk4QjE3RDU0NzQ4OTwvdGl0bGU+CiAgICA8ZyBpZD0iUG9kY2FzdC1wYWdlcyIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IjEzNzYtLS1Qb2RjYXN0LWVwaXNvZGVzIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNDEwLjAwMDAwMCwgLTM0OS4wMDAwMDApIiBzdHJva2U9IiM5OTk5OTkiIHN0cm9rZS13aWR0aD0iMS41Ij4KICAgICAgICAgICAgPGcgaWQ9Ikdyb3VwLTMiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDMyLjAwMDAwMCwgMjcyLjAwMDAwMCkiPgogICAgICAgICAgICAgICAgPHBvbHlsaW5lIGlkPSJIZWQvRGVrLVNlcGFyYXRvciIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMzc4LjQ4OTE1NywgODQuMzYzOTYxKSByb3RhdGUoNDUuMDAwMDAwKSB0cmFuc2xhdGUoLTM3OC40ODkxNTcsIC04NC4zNjM5NjEpICIgcG9pbnRzPSIzNzMuOTg5MTU3IDc5Ljg2Mzk2MSAzODIuOTg5MTU3IDc5Ljg2Mzk2MSAzODIuOTg5MTU3IDg4Ljg2Mzk2MSI+PC9wb2x5bGluZT4KICAgICAgICAgICAgPC9nPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+")}.fullwidth_post .widget__subheadline-text:before{background-image:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iOHB4IiBoZWlnaHQ9IjE1cHgiIHZpZXdCb3g9IjAgMCA4IDE1IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPGcgaWQ9IlBvZGNhc3QtcGFnZXMiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSIxMzc2LS0tUG9kY2FzdC1lcGlzb2RlcyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTQxMC4wMDAwMDAsIC0zNDkuMDAwMDAwKSIgc3Ryb2tlPSIjQkZCRkJGIiBzdHJva2Utd2lkdGg9IjEuNSI+CiAgICAgICAgICAgIDxnIGlkPSJHcm91cC0zIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzMi4wMDAwMDAsIDI3Mi4wMDAwMDApIj4KICAgICAgICAgICAgICAgIDxwb2x5bGluZSBpZD0iSGVkL0Rlay1TZXBhcmF0b3IiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDM3OC40ODkxNTcsIDg0LjM2Mzk2MSkgcm90YXRlKDQ1LjAwMDAwMCkgdHJhbnNsYXRlKC0zNzguNDg5MTU3LCAtODQuMzYzOTYxKSAiIHBvaW50cz0iMzczLjk4OTE1NyA3OS44NjM5NjEgMzgyLjk4OTE1NyA3OS44NjM5NjEgMzgyLjk4OTE1NyA4OC44NjM5NjEiPjwvcG9seWxpbmU+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPgoK")}.fullwidth_post.TextDarkFillTransparent .widget__subheadline-text:before,.fullwidth_post.FillLight .widget__subheadline-text:before{background-image:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iOHB4IiBoZWlnaHQ9IjE1cHgiIHZpZXdCb3g9IjAgMCA4IDE1IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPHRpdGxlPkE0NENGMkU1LTlDODItNEUzRS1CMzExLTk4QjE3RDU0NzQ4OTwvdGl0bGU+CiAgICA8ZyBpZD0iUG9kY2FzdC1wYWdlcyIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IjEzNzYtLS1Qb2RjYXN0LWVwaXNvZGVzIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNDEwLjAwMDAwMCwgLTM0OS4wMDAwMDApIiBzdHJva2U9IiM5OTk5OTkiIHN0cm9rZS13aWR0aD0iMS41Ij4KICAgICAgICAgICAgPGcgaWQ9Ikdyb3VwLTMiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDMyLjAwMDAwMCwgMjcyLjAwMDAwMCkiPgogICAgICAgICAgICAgICAgPHBvbHlsaW5lIGlkPSJIZWQvRGVrLVNlcGFyYXRvciIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMzc4LjQ4OTE1NywgODQuMzYzOTYxKSByb3RhdGUoNDUuMDAwMDAwKSB0cmFuc2xhdGUoLTM3OC40ODkxNTcsIC04NC4zNjM5NjEpICIgcG9pbnRzPSIzNzMuOTg5MTU3IDc5Ljg2Mzk2MSAzODIuOTg5MTU3IDc5Ljg2Mzk2MSAzODIuOTg5MTU3IDg4Ljg2Mzk2MSI+PC9wb2x5bGluZT4KICAgICAgICAgICAgPC9nPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+")}.fullwidth_post.FillDark .widget__subheadline-text:before{background-image:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iOHB4IiBoZWlnaHQ9IjE1cHgiIHZpZXdCb3g9IjAgMCA4IDE1IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPHRpdGxlPkE0NENGMkU1LTlDODItNEUzRS1CMzExLTk4QjE3RDU0NzQ4OTwvdGl0bGU+CiAgICA8ZyBpZD0iUG9kY2FzdC1wYWdlcyIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IjEzNzYtLS1Qb2RjYXN0LWVwaXNvZGVzIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNDEwLjAwMDAwMCwgLTM0OS4wMDAwMDApIiBzdHJva2U9IiM4QzhDOEMiIHN0cm9rZS13aWR0aD0iMS41Ij4KICAgICAgICAgICAgPGcgaWQ9Ikdyb3VwLTMiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDMyLjAwMDAwMCwgMjcyLjAwMDAwMCkiPgogICAgICAgICAgICAgICAgPHBvbHlsaW5lIGlkPSJIZWQvRGVrLVNlcGFyYXRvciIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMzc4LjQ4OTE1NywgODQuMzYzOTYxKSByb3RhdGUoNDUuMDAwMDAwKSB0cmFuc2xhdGUoLTM3OC40ODkxNTcsIC04NC4zNjM5NjEpICIgcG9pbnRzPSIzNzMuOTg5MTU3IDc5Ljg2Mzk2MSAzODIuOTg5MTU3IDc5Ljg2Mzk2MSAzODIuOTg5MTU3IDg4Ljg2Mzk2MSI+PC9wb2x5bGluZT4KICAgICAgICAgICAgPC9nPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+")}.fullwidth_post .widget__subheadline:before{content:"";background-image:url("data:image/svg+xml,%3Csvg%20width='7px'%20height='13px'%20viewBox='0%200%207%2013'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg%20id='Typography'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3E%3Cg%20transform='translate(-1152.000000,-384.000000)'%3E%3Crect%20x='0'%20y='0'%20width='1376'%20height='1600'%3E%3C/rect%3E%3Cg%20transform='translate(1146.136039,384.000000)'%20stroke='%23A6A6A6'%20stroke-width='1.5'%3E%3Cpolyline%20transform='translate(6.363961,6.500000)%20rotate(45.000000)%20translate(-6.363961,-6.500000)'%20points='1.86396103%202%2010.863961%202%2010.863961%2011'%3E%3C/polyline%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.fullwidth_post .like-btn.like .heart{background-image:url("data:image/svg+xml,%3Csvg%20width='12px'%20height='14px'%20viewBox='0%200%2012%2014'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3E%3Cg%20transform='translate(-444.000000,-335.000000)'%20stroke='%23A6A6A6'%3E%3Cg%20transform='translate(208.000000,332.000000)'%3E%3Cg%20transform='translate(237.000000,4.000000)'%3E%3Cpath%20d='M1,0%20L9,0%20C9.55228475,-1.01453063e-16%2010,0.44771525%2010,1%20L10,12%20L10,12%20L5,9%20L0,12%20L0,1%20C-6.76353751e-17,0.44771525%200.44771525,1.01453063e-16%201,0%20Z'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A")}.fullwidth_post.TextDarkFillTransparent .like-btn.like .heart,.fullwidth_post.FillLight .like-btn.like .heart{background-image:url("data:image/svg+xml,%3Csvg%20width='12px'%20height='14px'%20viewBox='0%200%2012%2014'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3E%3Cg%20transform='translate(-444.000000,-335.000000)'%20stroke='%23404040'%3E%3Cg%20transform='translate(208.000000,332.000000)'%3E%3Cg%20transform='translate(237.000000,4.000000)'%3E%3Cpath%20d='M1,0%20L9,0%20C9.55228475,-1.01453063e-16%2010,0.44771525%2010,1%20L10,12%20L10,12%20L5,9%20L0,12%20L0,1%20C-6.76353751e-17,0.44771525%200.44771525,1.01453063e-16%201,0%20Z'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A")}.section-podcast .story_teaser .tag-fixing-the-future .widget__head>a,.section-podcasts .story_teaser .tag-fixing-the-future .widget__head>a,.widget.tag-fixing-the-future .widget__head>a{background-image:url(https://assets.rbl.ms/26705823/origin.jpg)}.section-podcast .story_teaser .tag-chatbot-podcast .widget__head>a,.section-podcasts .story_teaser .tag-chatbot-podcast .widget__head>a,.widget.tag-chatbot-podcast .widget__head>a{background-image:url(https://assets.rbl.ms/46469974/origin.jpg)}#notification .success{color:white!important;font-family:"Favorit-Mono"!important;font-size:12px!important;background:#ff4c00!important;text-transform:uppercase!important}.fa-twitter{-webkit-mask-box-image:url(#xLogoMask);-webkit-mask-image:url(#xLogoMask);-webkit-mask-repeat:space;-webkit-mask-position:20px;-webkit-mask-origin:content-box;-webkit-mask-size:24px;background-color:currentColor}.tag-type-ti .body-description a,.tag-type-ti .body-description a u{text-underline-position:from-font;text-decoration-color:#005690;color:inherit;text-underline-offset:1px;text-decoration-thickness:1px}.feature_post_full .widget__shares i.fa-twitter:before{background:url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15.1563 1.875H17.9141L11.8906 8.75781L18.9766 18.125H13.4297L9.08203 12.4453L4.11328 18.125H1.35156L7.79297 10.7617L1 1.875H6.6875L10.6133 7.06641L15.1563 1.875ZM14.1875 16.4766H15.7148L5.85547 3.4375H4.21484L14.1875 16.4766Z" fill="%23ffffff"/></svg>') no-repeat center!important}.feature_post_full.LightGreen .widget__shares i.fa-twitter:before,.feature_post_full.Yellow .widget__shares i.fa-twitter:before{background:url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15.1563 1.875H17.9141L11.8906 8.75781L18.9766 18.125H13.4297L9.08203 12.4453L4.11328 18.125H1.35156L7.79297 10.7617L1 1.875H6.6875L10.6133 7.06641L15.1563 1.875ZM14.1875 16.4766H15.7148L5.85547 3.4375H4.21484L14.1875 16.4766Z" fill="%230d0d0d"/></svg>') no-repeat center!important}.feature_post_full.DarkBlue2 .like-btn.unlike .heart,.feature_post_full.DarkBlue2 .like-btn.like .heart:active,.feature_post_full.DarkBlue1 .like-btn.unlike .heart,.feature_post_full.DarkBlue1 .like-btn.like .heart:active,.feature_post_full.LightBlue .like-btn.unlike .heart,.feature_post_full.LightBlue .like-btn.like .heart:active,.feature_post_full.Blue .like-btn.unlike .heart,.feature_post_full.Blue .like-btn.like .heart:active,.feature_post_full.Pink .like-btn.unlike .heart,.feature_post_full.Pink .like-btn.like .heart:active,.feature_post_full.Red .like-btn.unlike .heart,.feature_post_full.Red .like-btn.like .heart:active,.feature_post_full.Purple .like-btn.unlike .heart,.feature_post_full.Purple .like-btn.like .heart:active,.feature_post_full.Green .like-btn.unlike .heart,.feature_post_full.Green .like-btn.like .heart:active,.feature_post_full.DarkGray .like-btn.unlike .heart,.feature_post_full.DarkGray .like-btn.like .heart:active{background-image:url("data:image/svg+xml,%3Csvg%20width='12px'%20height='14px'%20viewBox='0%200%2012%2014'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg%20stroke='none'%20stroke-width='1'%20fill='%23FFFFFF'%20fill-rule='evenodd'%3E%3Cg%20transform='translate(-444.000000,-335.000000)'%20stroke='%23FFFFFF'%3E%3Cg%20transform='translate(208.000000,332.000000)'%3E%3Cg%20transform='translate(237.000000,4.000000)'%3E%3Cpath%20d='M1,0%20L9,0%20C9.55228475,-1.01453063e-16%2010,0.44771525%2010,1%20L10,12%20L10,12%20L5,9%20L0,12%20L0,1%20C-6.76353751e-17,0.44771525%200.44771525,1.01453063e-16%201,0%20Z'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A")}.feature_post_full.DarkGray .like-btn.like .heart{background-image:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0nMTJweCcgaGVpZ2h0PScxNHB4JyB2aWV3Qm94PScwIDAgMTIgMTQnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgeG1sbnM6eGxpbms9J2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsnPgogICAgPGcgc3Ryb2tlPSdub25lJyBzdHJva2Utd2lkdGg9JzEnIGZpbGw9J25vbmUnIGZpbGwtcnVsZT0nZXZlbm9kZCc+CiAgICAgICAgPGcgdHJhbnNmb3JtPSd0cmFuc2xhdGUoLTQ0NC4wMDAwMDAsLTMzNS4wMDAwMDApJyBzdHJva2U9JyNhNmE2YTYnPgogICAgICAgICAgICA8ZyB0cmFuc2Zvcm09J3RyYW5zbGF0ZSgyMDguMDAwMDAwLDMzMi4wMDAwMDApJz4KICAgICAgICAgICAgICAgIDxnIHRyYW5zZm9ybT0ndHJhbnNsYXRlKDIzNy4wMDAwMDAsNC4wMDAwMDApJz4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSdNMSwwIEw5LDAgQzkuNTUyMjg0NzUsLTEuMDE0NTMwNjNlLTE2IDEwLDAuNDQ3NzE1MjUgMTAsMSBMMTAsMTIgTDEwLDEyIEw1LDkgTDAsMTIgTDAsMSBDLTYuNzYzNTM3NTFlLTE3LDAuNDQ3NzE1MjUgMC40NDc3MTUyNSwxLjAxNDUzMDYzZS0xNiAxLDAgWic+PC9wYXRoPgogICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICA8L2c+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4=")}.feature_post_full.Green .like-btn.like .heart,.feature_post_full.Purple .like-btn.like .heart,.feature_post_full.Red .like-btn.like .heart,.feature_post_full.Pink .like-btn.like .heart,.feature_post_full.Blue .like-btn.like .heart,.feature_post_full.LightBlue .like-btn.like .heart,.feature_post_full.DarkBlue1 .like-btn.like .heart,.feature_post_full.DarkBlue2 .like-btn.like .heart{background-image:url("data:image/svg+xml,%3Csvg%20width='12px'%20height='14px'%20viewBox='0%200%2012%2014'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3E%3Cg%20transform='translate(-444.000000,-335.000000)'%20stroke='%23FFFFFF'%3E%3Cg%20transform='translate(208.000000,332.000000)'%3E%3Cg%20transform='translate(237.000000,4.000000)'%3E%3Cpath%20d='M1,0%20L9,0%20C9.55228475,-1.01453063e-16%2010,0.44771525%2010,1%20L10,12%20L10,12%20L5,9%20L0,12%20L0,1%20C-6.76353751e-17,0.44771525%200.44771525,1.01453063e-16%201,0%20Z'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A")}.feature_post_full.LightGreen .like-btn.unlike .heart,.feature_post_full.LightGreen .like-btn.like .heart:active,.feature_post_full.Yellow .like-btn.unlike .heart,.feature_post_full.Yellow .like-btn.like .heart:active{background-image:url("data:image/svg+xml,%3Csvg%20width='12px'%20height='14px'%20viewBox='0%200%2012%2014'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg%20stroke='none'%20stroke-width='1'%20fill='%230D0D0D'%20fill-rule='evenodd'%3E%3Cg%20transform='translate(-444.000000,-335.000000)'%20stroke='%230D0D0D'%3E%3Cg%20transform='translate(208.000000,332.000000)'%3E%3Cg%20transform='translate(237.000000,4.000000)'%3E%3Cpath%20d='M1,0%20L9,0%20C9.55228475,-1.01453063e-16%2010,0.44771525%2010,1%20L10,12%20L10,12%20L5,9%20L0,12%20L0,1%20C-6.76353751e-17,0.44771525%200.44771525,1.01453063e-16%201,0%20Z'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A")}.feature_post_full.LightGreen .like-btn.like .heart,.feature_post_full.Yellow .like-btn.like .heart{background-image:url("data:image/svg+xml,%3Csvg%20width='12px'%20height='14px'%20viewBox='0%200%2012%2014'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3E%3Cg%20transform='translate(-444.000000,-335.000000)'%20stroke='%230D0D0D'%3E%3Cg%20transform='translate(208.000000,332.000000)'%3E%3Cg%20transform='translate(237.000000,4.000000)'%3E%3Cpath%20d='M1,0%20L9,0%20C9.55228475,-1.01453063e-16%2010,0.44771525%2010,1%20L10,12%20L10,12%20L5,9%20L0,12%20L0,1%20C-6.76353751e-17,0.44771525%200.44771525,1.01453063e-16%201,0%20Z'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A")}.feature_post_full .widget__shares a .fa-envelope:before{background-image:url("data:image/svg+xml,%3Csvg%20width='22px'%20height='16px'%20viewBox='0%200%2022%2016'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Ctitle%3EFF38D0EB-1E4A-449A-B5ED-D75AE92C6713%3C/title%3E%3Cg%20id='Podcast-pages'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3E%3Cg%20id='1376---Individual-podcast-episode'%20transform='translate(-71.000000,-513.000000)'%20stroke='%23FFFFFF'%3E%3Cg%20id='Group-12'%20transform='translate(32.000000,509.000000)'%3E%3Cg%20id='Group-3'%20transform='translate(40.000000,5.000000)'%3E%3Crect%20id='Rectangle'%20x='0'%20y='0'%20width='20'%20height='14'%20rx='2'%3E%3C/rect%3E%3Cpath%20d='M0,2.15810473%20L8.76584115,9.03218556%20C9.49049293,9.60044989%2010.5095071,9.60044989%2011.2341588,9.03218556%20L20,2.15810473%20L20,2.15810473'%20id='Path-6'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.feature_post_full .share-copy-link i{background-image:url("data:image/svg+xml,%3Csvg%20width='18px'%20height='24px'%20viewBox='0%200%2018%2024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Ctitle%3E46EA7BC9-C553-4F97-AD62-250CD1D1C778%3C/title%3E%3Cg%20id='Podcast-pages'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3E%3Cg%20id='1376---Individual-podcast-episode'%20transform='translate(-156.000000,-509.000000)'%20stroke='%23FFFFFF'%3E%3Cg%20id='Group-12'%20transform='translate(32.000000,509.000000)'%3E%3Cg%20id='Group-5'%20transform='translate(133.098076,12.000000)%20rotate(-60.000000)%20translate(-133.098076,-12.000000)%20translate(122.098076,9.000000)'%3E%3Crect%20id='Rectangle'%20x='0'%20y='0'%20width='10'%20height='6'%20rx='2'%3E%3C/rect%3E%3Crect%20id='Rectangle-Copy-2'%20x='12'%20y='0'%20width='10'%20height='6'%20rx='2'%3E%3C/rect%3E%3Cline%20x1='5'%20y1='3'%20x2='17'%20y2='3'%20id='Path-7'%20stroke-linecap='round'%3E%3C/line%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.feature_post_full.LightGreen .widget__shares a .fa-envelope:before,.feature_post_full.Yellow .widget__shares a .fa-envelope:before{background-image:url("data:image/svg+xml,%3Csvg%20width='22px'%20height='16px'%20viewBox='0%200%2022%2016'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Ctitle%3EFF38D0EB-1E4A-449A-B5ED-D75AE92C6713%3C/title%3E%3Cg%20id='Podcast-pages'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3E%3Cg%20id='1376---Individual-podcast-episode'%20transform='translate(-71.000000,-513.000000)'%20stroke='%230D0D0D'%3E%3Cg%20id='Group-12'%20transform='translate(32.000000,509.000000)'%3E%3Cg%20id='Group-3'%20transform='translate(40.000000,5.000000)'%3E%3Crect%20id='Rectangle'%20x='0'%20y='0'%20width='20'%20height='14'%20rx='2'%3E%3C/rect%3E%3Cpath%20d='M0,2.15810473%20L8.76584115,9.03218556%20C9.49049293,9.60044989%2010.5095071,9.60044989%2011.2341588,9.03218556%20L20,2.15810473%20L20,2.15810473'%20id='Path-6'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.feature_post_full.LightGreen .share-copy-link i,.feature_post_full.Yellow .share-copy-link i{background-image:url("data:image/svg+xml,%3Csvg%20width='18px'%20height='24px'%20viewBox='0%200%2018%2024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Ctitle%3E46EA7BC9-C553-4F97-AD62-250CD1D1C778%3C/title%3E%3Cg%20id='Podcast-pages'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3E%3Cg%20id='1376---Individual-podcast-episode'%20transform='translate(-156.000000,-509.000000)'%20stroke='%230D0D0D'%3E%3Cg%20id='Group-12'%20transform='translate(32.000000,509.000000)'%3E%3Cg%20id='Group-5'%20transform='translate(133.098076,12.000000)%20rotate(-60.000000)%20translate(-133.098076,-12.000000)%20translate(122.098076,9.000000)'%3E%3Crect%20id='Rectangle'%20x='0'%20y='0'%20width='10'%20height='6'%20rx='2'%3E%3C/rect%3E%3Crect%20id='Rectangle-Copy-2'%20x='12'%20y='0'%20width='10'%20height='6'%20rx='2'%3E%3C/rect%3E%3Cline%20x1='5'%20y1='3'%20x2='17'%20y2='3'%20id='Path-7'%20stroke-linecap='round'%3E%3C/line%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.posts-custom .widget__shares i.fa-twitter:before{background:url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15.1563 1.875H17.9141L11.8906 8.75781L18.9766 18.125H13.4297L9.08203 12.4453L4.11328 18.125H1.35156L7.79297 10.7617L1 1.875H6.6875L10.6133 7.06641L15.1563 1.875ZM14.1875 16.4766H15.7148L5.85547 3.4375H4.21484L14.1875 16.4766Z" fill="%23ff4c00"/></svg>') no-repeat center}.posts-custom .widget__shares a:hover i.fa-twitter:before{background:url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15.1563 1.875H17.9141L11.8906 8.75781L18.9766 18.125H13.4297L9.08203 12.4453L4.11328 18.125H1.35156L7.79297 10.7617L1 1.875H6.6875L10.6133 7.06641L15.1563 1.875ZM14.1875 16.4766H15.7148L5.85547 3.4375H4.21484L14.1875 16.4766Z" fill="%23ffffff"/></svg>') no-repeat center}.share-copy-link i{background-image:url("data:image/svg+xml,%3Csvg%20width='18px'%20height='24px'%20viewBox='0%200%2018%2024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Ctitle%3E46EA7BC9-C553-4F97-AD62-250CD1D1C778%3C/title%3E%3Cg%20id='Podcast-pages'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3E%3Cg%20id='1376---Individual-podcast-episode'%20transform='translate(-156.000000,-509.000000)'%20stroke='%23FF4C00'%3E%3Cg%20id='Group-12'%20transform='translate(32.000000,509.000000)'%3E%3Cg%20id='Group-5'%20transform='translate(133.098076,12.000000)%20rotate(-60.000000)%20translate(-133.098076,-12.000000)%20translate(122.098076,9.000000)'%3E%3Crect%20id='Rectangle'%20x='0'%20y='0'%20width='10'%20height='6'%20rx='2'%3E%3C/rect%3E%3Crect%20id='Rectangle-Copy-2'%20x='12'%20y='0'%20width='10'%20height='6'%20rx='2'%3E%3C/rect%3E%3Cline%20x1='5'%20y1='3'%20x2='17'%20y2='3'%20id='Path-7'%20stroke-linecap='round'%3E%3C/line%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.widget__shares a .fa-envelope:before{background-image:url("data:image/svg+xml,%3Csvg%20width='22px'%20height='16px'%20viewBox='0%200%2022%2016'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Ctitle%3EFF38D0EB-1E4A-449A-B5ED-D75AE92C6713%3C/title%3E%3Cg%20id='Podcast-pages'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3E%3Cg%20id='1376---Individual-podcast-episode'%20transform='translate(-71.000000,-513.000000)'%20stroke='%23FF4C00'%3E%3Cg%20id='Group-12'%20transform='translate(32.000000,509.000000)'%3E%3Cg%20id='Group-3'%20transform='translate(40.000000,5.000000)'%3E%3Crect%20id='Rectangle'%20x='0'%20y='0'%20width='20'%20height='14'%20rx='2'%3E%3C/rect%3E%3Cpath%20d='M0,2.15810473%20L8.76584115,9.03218556%20C9.49049293,9.60044989%2010.5095071,9.60044989%2011.2341588,9.03218556%20L20,2.15810473%20L20,2.15810473'%20id='Path-6'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.widget.tag-type-ti .widget__shares a .fa-envelope:before{background-image:url("data:image/svg+xml,%3Csvg%20width='22px'%20height='16px'%20viewBox='0%200%2022%2016'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Ctitle%3EFF38D0EB-1E4A-449A-B5ED-D75AE92C6713%3C/title%3E%3Cg%20id='Podcast-pages'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3E%3Cg%20id='1376---Individual-podcast-episode'%20transform='translate(-71.000000,-513.000000)'%20stroke='%23005690'%3E%3Cg%20id='Group-12'%20transform='translate(32.000000,509.000000)'%3E%3Cg%20id='Group-3'%20transform='translate(40.000000,5.000000)'%3E%3Crect%20id='Rectangle'%20x='0'%20y='0'%20width='20'%20height='14'%20rx='2'%3E%3C/rect%3E%3Cpath%20d='M0,2.15810473%20L8.76584115,9.03218556%20C9.49049293,9.60044989%2010.5095071,9.60044989%2011.2341588,9.03218556%20L20,2.15810473%20L20,2.15810473'%20id='Path-6'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.widget.tag-type-ti .share-copy-link i{background-image:url("data:image/svg+xml,%3Csvg%20width='18px'%20height='24px'%20viewBox='0%200%2018%2024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Ctitle%3E46EA7BC9-C553-4F97-AD62-250CD1D1C778%3C/title%3E%3Cg%20id='Podcast-pages'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3E%3Cg%20id='1376---Individual-podcast-episode'%20transform='translate(-156.000000,-509.000000)'%20stroke='%23005690'%3E%3Cg%20id='Group-12'%20transform='translate(32.000000,509.000000)'%3E%3Cg%20id='Group-5'%20transform='translate(133.098076,12.000000)%20rotate(-60.000000)%20translate(-133.098076,-12.000000)%20translate(122.098076,9.000000)'%3E%3Crect%20id='Rectangle'%20x='0'%20y='0'%20width='10'%20height='6'%20rx='2'%3E%3C/rect%3E%3Crect%20id='Rectangle-Copy-2'%20x='12'%20y='0'%20width='10'%20height='6'%20rx='2'%3E%3C/rect%3E%3Cline%20x1='5'%20y1='3'%20x2='17'%20y2='3'%20id='Path-7'%20stroke-linecap='round'%3E%3C/line%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.widget.tag-type-ti .widget__shares i.fa-twitter:before{background:url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15.1563 1.875H17.9141L11.8906 8.75781L18.9766 18.125H13.4297L9.08203 12.4453L4.11328 18.125H1.35156L7.79297 10.7617L1 1.875H6.6875L10.6133 7.06641L15.1563 1.875ZM14.1875 16.4766H15.7148L5.85547 3.4375H4.21484L14.1875 16.4766Z" fill="%23005690"/></svg>') no-repeat center}.widget.tag-type-ti .widget__shares a:hover i.fa-twitter:before{background:url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15.1563 1.875H17.9141L11.8906 8.75781L18.9766 18.125H13.4297L9.08203 12.4453L4.11328 18.125H1.35156L7.79297 10.7617L1 1.875H6.6875L10.6133 7.06641L15.1563 1.875ZM14.1875 16.4766H15.7148L5.85547 3.4375H4.21484L14.1875 16.4766Z" fill="%23005690"/></svg>') no-repeat center}.listicle-slideshow-pager .listicle-slideshow--prev:before{background-image:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgaGVpZ2h0PSIyNHB4IgogICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgIHdpZHRoPSIyNHB4IgogICBmaWxsPSIjRkZGRkZGIgogICB2ZXJzaW9uPSIxLjEiCiAgIGlkPSJzdmcxNzEiCiAgIHNvZGlwb2RpOmRvY25hbWU9ImFycm93X2JhY2tfd2hpdGVfMjRkcC5zdmciCiAgIGlua3NjYXBlOnZlcnNpb249IjEuMS4xIChjMzA4NGVmLCAyMDIxLTA5LTIyKSIKICAgeG1sbnM6aW5rc2NhcGU9Imh0dHA6Ly93d3cuaW5rc2NhcGUub3JnL25hbWVzcGFjZXMvaW5rc2NhcGUiCiAgIHhtbG5zOnNvZGlwb2RpPSJodHRwOi8vc29kaXBvZGkuc291cmNlZm9yZ2UubmV0L0RURC9zb2RpcG9kaS0wLmR0ZCIKICAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogICB4bWxuczpzdmc9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8ZGVmcwogICAgIGlkPSJkZWZzMTc1IiAvPgogIDxzb2RpcG9kaTpuYW1lZHZpZXcKICAgICBpZD0ibmFtZWR2aWV3MTczIgogICAgIHBhZ2Vjb2xvcj0iI2ZmZmZmZiIKICAgICBib3JkZXJjb2xvcj0iIzY2NjY2NiIKICAgICBib3JkZXJvcGFjaXR5PSIxLjAiCiAgICAgaW5rc2NhcGU6cGFnZXNoYWRvdz0iMiIKICAgICBpbmtzY2FwZTpwYWdlb3BhY2l0eT0iMC4wIgogICAgIGlua3NjYXBlOnBhZ2VjaGVja2VyYm9hcmQ9IjAiCiAgICAgc2hvd2dyaWQ9ImZhbHNlIgogICAgIGlua3NjYXBlOnpvb209IjE5LjkxNjY2NyIKICAgICBpbmtzY2FwZTpjeD0iMTEuNzk5MTYzIgogICAgIGlua3NjYXBlOmN5PSIxMy4yMDUwMjEiCiAgICAgaW5rc2NhcGU6d2luZG93LXdpZHRoPSIxNjgwIgogICAgIGlua3NjYXBlOndpbmRvdy1oZWlnaHQ9IjY3OSIKICAgICBpbmtzY2FwZTp3aW5kb3cteD0iODUiCiAgICAgaW5rc2NhcGU6d2luZG93LXk9Ijg1IgogICAgIGlua3NjYXBlOndpbmRvdy1tYXhpbWl6ZWQ9IjAiCiAgICAgaW5rc2NhcGU6Y3VycmVudC1sYXllcj0ic3ZnMTcxIiAvPgogIDxwYXRoCiAgICAgZD0iTTAgMGgyNHYyNEgweiIKICAgICBmaWxsPSJub25lIgogICAgIGlkPSJwYXRoMTY3IiAvPgogIDxwYXRoCiAgICAgZD0iTSAyNCwxMC41IEggNS43NDUgTCAxNC4xMywyLjExNSAxMiwwIDAsMTIgMTIsMjQgMTQuMTE1LDIxLjg4NSA1Ljc0NSwxMy41IEggMjQgWiIKICAgICBpZD0icGF0aDE2OSIKICAgICBzdHlsZT0iZmlsbDojZmZmZmZmO3N0cm9rZS13aWR0aDoxLjUiIC8+Cjwvc3ZnPgo=")}.listicle-slideshow-pager .listicle-slideshow--next:before{background-image:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgaGVpZ2h0PSIyNHB4IgogICB2aWV3Qm94PSIwIDAgMjQgMjQiCiAgIHdpZHRoPSIyNHB4IgogICBmaWxsPSIjRkZGRkZGIgogICB2ZXJzaW9uPSIxLjEiCiAgIGlkPSJzdmc4MSIKICAgc29kaXBvZGk6ZG9jbmFtZT0iYXJyb3dfZm9yd2FyZF93aGl0ZV8yNGRwLnN2ZyIKICAgaW5rc2NhcGU6dmVyc2lvbj0iMS4xLjEgKGMzMDg0ZWYsIDIwMjEtMDktMjIpIgogICB4bWxuczppbmtzY2FwZT0iaHR0cDovL3d3dy5pbmtzY2FwZS5vcmcvbmFtZXNwYWNlcy9pbmtzY2FwZSIKICAgeG1sbnM6c29kaXBvZGk9Imh0dHA6Ly9zb2RpcG9kaS5zb3VyY2Vmb3JnZS5uZXQvRFREL3NvZGlwb2RpLTAuZHRkIgogICB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogIDxkZWZzCiAgICAgaWQ9ImRlZnM4NSIgLz4KICA8c29kaXBvZGk6bmFtZWR2aWV3CiAgICAgaWQ9Im5hbWVkdmlldzgzIgogICAgIHBhZ2Vjb2xvcj0iI2ZmZmZmZiIKICAgICBib3JkZXJjb2xvcj0iIzY2NjY2NiIKICAgICBib3JkZXJvcGFjaXR5PSIxLjAiCiAgICAgaW5rc2NhcGU6cGFnZXNoYWRvdz0iMiIKICAgICBpbmtzY2FwZTpwYWdlb3BhY2l0eT0iMC4wIgogICAgIGlua3NjYXBlOnBhZ2VjaGVja2VyYm9hcmQ9IjAiCiAgICAgc2hvd2dyaWQ9ImZhbHNlIgogICAgIGlua3NjYXBlOnpvb209IjIwLjkxNjY2NyIKICAgICBpbmtzY2FwZTpjeD0iMTEuOTc2MDk2IgogICAgIGlua3NjYXBlOmN5PSIxMiIKICAgICBpbmtzY2FwZTp3aW5kb3ctd2lkdGg9IjEyOTMiCiAgICAgaW5rc2NhcGU6d2luZG93LWhlaWdodD0iNjc5IgogICAgIGlua3NjYXBlOndpbmRvdy14PSIwIgogICAgIGlua3NjYXBlOndpbmRvdy15PSIyNSIKICAgICBpbmtzY2FwZTp3aW5kb3ctbWF4aW1pemVkPSIwIgogICAgIGlua3NjYXBlOmN1cnJlbnQtbGF5ZXI9InN2ZzgxIiAvPgogIDxwYXRoCiAgICAgZD0iTTAgMGgyNHYyNEgweiIKICAgICBmaWxsPSJub25lIgogICAgIGlkPSJwYXRoNzciIC8+CiAgPHBhdGgKICAgICBkPSJNIDEyLC0yLjQ1ZS03IDkuODg0OTk5OSwyLjExNDk5OTggMTguMjU0OTk5LDEwLjUgSCAtMi40NWUtNyB2IDMgSCAxOC4yNTQ5OTkgTCA5Ljg4NDk5OTksMjEuODg1IDEyLDI0IDI0LDEyIFoiCiAgICAgaWQ9InBhdGg3OSIKICAgICBzdHlsZT0iZmlsbDojZmZmZmZmO3N0cm9rZS13aWR0aDoxLjUiIC8+Cjwvc3ZnPgo=")}a.comment--item__like:after,a.comment--item__dislike:after{background-image:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTNweCIgaGVpZ2h0PSI4cHgiIHZpZXdCb3g9IjAgMCAxMyA4IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPHRpdGxlPlJlY3RhbmdsZSBDb3B5IDk8L3RpdGxlPgogICAgPGcgaWQ9IlN5bWJvbHMiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSJEYXJrLS8tTmF2IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNDUxLjAwMDAwMCwgLTEzLjAwMDAwMCkiIHN0cm9rZT0iIzQwNDA0MCIgc3Ryb2tlLXdpZHRoPSIxLjUiPgogICAgICAgICAgICA8ZyBpZD0iR3JvdXAtMyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMzE0LjAwMDAwMCwgNi4wMDAwMDApIj4KICAgICAgICAgICAgICAgIDxwb2x5bGluZSBpZD0iUmVjdGFuZ2xlLUNvcHktOSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTQzLjQ4NTI4MSwgOC4zMTM3MDgpIHNjYWxlKC0xLCAxKSByb3RhdGUoMTM1LjAwMDAwMCkgdHJhbnNsYXRlKC0xNDMuNDg1MjgxLCAtOC4zMTM3MDgpICIgcG9pbnRzPSIxMzkuNDg1MjgxIDQuMzEzNzA4NSAxNDcuNDg1MjgxIDQuMzEzNzA4NSAxNDcuNDg1MjgxIDEyLjMxMzcwODUiPjwvcG9seWxpbmU+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==")}.post-author-list .social-author__bio a:first-child{display:inline}.post-author-list .posts-custom .social-author{width:100%}.post-author-list .flourish-embed,.post-author-list .rm-shortcode{display:none} </script><script class="rm-i-script" id="parsely-cfg" src="//cdn.parsely.com/keys/spectrum.ieee.org/p.js"></script><script class="rm-i-script" id="user-javascript-medium-normal"> window.REBELMOUSE_TASKS_QUEUE.push(function loadFonts(){ window.REBELMOUSE_STDLIB.loadFontFace('IvarText', 'https://partners.rebelmouse.com/IEEE/IvarCompleteWeb/IvarText-Regular.woff2', {selector: '', weight: '400', style: 'normal' }); window.REBELMOUSE_STDLIB.loadFontFace('IvarTextItalic', 'https://partners.rebelmouse.com/IEEE/IvarCompleteWeb/IvarText-Italic.woff2', {selector: '', weight: '400', style: 'italic' }); window.REBELMOUSE_STDLIB.loadFontFace('IvarText', 'https://partners.rebelmouse.com/IEEE/IvarCompleteWeb/IvarText-Bold.woff2', {selector: '', weight: '700', style: 'normal' });}); window.REBELMOUSE_TASKS_QUEUE.push(function(){ window.REBELMOUSE_STDLIB.loadExternalScript("https://openfpcdn.io/fingerprintjs/v4/iife.min.js", function() { if (!localStorage.getItem('ppid')) { var fpPromise = FingerprintJS.load() fpPromise .then(fp => fp.get()) .then(result => { window.ppid=result.visitorId localStorage.setItem('ppid', result.visitorId); }) } else { window.ppid = localStorage.getItem('ppid') } }); }); window.REBELMOUSE_TASKS_QUEUE.push(function(){ window.REBELMOUSE_STDLIB.loadExternalScript("https://htlbid.com/v3/spectrum.ieee.org/rblbid.js", function() { rblbid.addHook("beforePbjsAuction", (hbConfig, auctionInfo) => { window.auction = {}; var d = { key: "adxbid", val: function (e) { var realPrice = e.pbHg; if (e.pbHg == 0.0 || e.pbHg == 0.01) { window.auction[e.adUnitCode] = {"price": realPrice, "adxbid":"0.01" , "targeting":auctionInfo.bidderSettings.standard.adserverTargeting}; return 0.01; } e.pbHg = parseFloat((e.pbHg - 0.01).toFixed(2)); if (e.pbHg >= 0.01 && e.pbHg < 1.02) { window.auction[e.adUnitCode] = {"price": realPrice, "adxbid":e.pbHg.toFixed(2) , "targeting":auctionInfo.bidderSettings.standard.adserverTargeting}; return e.pbHg.toFixed(2); } else if (e.pbHg >= 1.02 && e.pbHg < 2.0) { var temp = e.pbHg.toString(); if (/\d+(\.\d+)?/.test(temp)) { var lastNum = parseInt(temp[temp.length - 1]); if (lastNum % 2 == 1) { e.pbHg = parseFloat(e.pbHg.toFixed(2)) - 0.01; } } window.auction[e.adUnitCode] = {"price": realPrice, "adxbid":e.pbHg.toFixed(2) , "targeting":auctionInfo.bidderSettings.standard.adserverTargeting}; return e.pbHg.toFixed(2); } else if (e.pbHg >= 2 && e.pbHg < 5) { window.auction[e.adUnitCode] = {"price":realPrice, "adxbid":e.pbHg.toFixed(1) + 0 , "targeting":auctionInfo.bidderSettings.standard.adserverTargeting}; return e.pbHg.toFixed(1) + 0; } else if (e.pbHg >= 5 && e.pbHg < 10) { function roundDown(number) { var decimalPart = number % 1; if (decimalPart < 0.5) { window.auction[e.adUnitCode] = {"price": realPrice, "adxbid":number - decimalPart , "targeting":auctionInfo.bidderSettings.standard.adserverTargeting}; return number - decimalPart} else { window.auction[e.adUnitCode] = {"price":realPrice, "adxbid":number - decimalPart + 0.5 , "targeting":auctionInfo.bidderSettings.standard.adserverTargeting}; return number - decimalPart + 0.5}; } window.auction[e.adUnitCode] = {"price":realPrice, "adxbid":roundDown(e.pbHg).toFixed(1) + 0 , "targeting":auctionInfo.bidderSettings.standard.adserverTargeting}; return roundDown(e.pbHg).toFixed(1) + 0; } else { window.auction[e.adUnitCode] = {"price":realPrice, "adxbid":10.00 , "targeting":auctionInfo.bidderSettings.standard.adserverTargeting}; return (e.pbHg = "10.00"); } }, }; auctionInfo.bidderSettings.standard.adserverTargeting.push(d); let adUnits = auctionInfo.adUnits.map(item=>{return item.code}); let slotRendered = function (event) { var slot = event.slot; auctionInfo.adUnits.filter((adUnit) => { if (adUnit.code == slot.getSlotElementId()) { console.group( "Moravac: ", slot.getSlotElementId(), "finished rendering." ); console.log("Is empty:", event.isEmpty); console.log("Prebid price?: ", window.auction[slot.getSlotElementId()]?.price || 0); console.log("AdxBid price?: ", window.auction[slot.getSlotElementId()]?.adxbid) if(event.isEmpty && window.auction[slot.getSlotElementId()]?.price){ //console.log("HB price is set but ad is empty"); //console.log("Reloading ad without AdXBID"); //slot.setTargeting('adxbid', '0.01'); //console.log("set: ", slot.getTargetingKeys()) //console.log("Refresh unit") //googletag.pubads().refresh([slot], {changeCorrelator: true}) //console.log("Refreshed") } adUnits = adUnits.filter(function(item) { return item !== slot.getSlotElementId() }) console.groupEnd(); } }); if (adUnits.length == 0){ googletag.pubads().removeEventListener("slotRenderEnded", slotRendered); console.group( "Moravac: ", ); console.log("Listener removed for this auction") console.groupEnd(); } }; googletag.cmd.push(function () { googletag.pubads().addEventListener("slotRenderEnded", slotRendered); }); return auctionInfo; }); }); }); window.REBELMOUSE_TASKS_QUEUE.push(function(){ REBELMOUSE_STDLIB .createElementChangeListener('.rm-shortcode[href*=".pdf"]', function(pdfLink){ pdfLink.href = 'javascript:void(0);'; pdfLink.classList.add('pdf-link-nonmember'); pdfLink.addEventListener('click', function(){ openGatedPopup('for_pdf_issues'); }); }); }); window.REBELMOUSE_TASKS_QUEUE.push(function(){ //var ssoValidatorUrl = 'https://oamssoqae.ieee.org/ieeevendorsso/rest/auth/validatePFToken?_=' + (+ new Date()); var ssoValidatorUrl = 'https://securesso.ieee.org/ieeevendorsso/rest/auth/validatePFToken?_=' + (+ new Date()); function getCookie(name) { const value = `; ${document.cookie}`; const parts = value.split(`; ${name}=`); if (parts.length === 2) return parts.pop().split(';').shift(); } fetch(ssoValidatorUrl, { method: 'GET', mode: 'cors', credentials: 'include', }).then(function (response) { // The API call was successful! if (response.ok) { response.json().then(function(result) { if (typeof result == 'object' && result.cookieValid && getCookie('user_logged_in') !== "1") { //SSO console.log('we should be logged in, redirect to SSO iDP'); //window.location.href = 'https://spectrumtest.ieee.org/core/saml/main/login?next_url=' + window.location.href; window.location.href = "https://spectrum.ieee.org/core/saml/main/login?next_url=" + encodeURIComponent("https://spectrum.ieee.org/core/integrations/ieee/changes?redirect=" + window.location.href); } else if (typeof result == 'object' && !result.cookieValid) { //SLO console.log('we should be logged out, remove cookie and do not show user'); //document.cookie = "sessionid= ; expires = Thu, 01 Jan 1970 00:00:00 GMT"; } }); } else { return Promise.reject(response); } }).then(function (data) { // This is the JSON from our response console.log(data); }).catch(function (err) { // There was an error console.warn('Something went wrong.', err); }); }); window.REBELMOUSE_TASKS_QUEUE.push(function(){ function changeDateFormat(widget){ var dates_toChange=widget.querySelectorAll('.widget .social-date__text:not(.processed),.widget .social-date-modified__text:not(.processed)'); if(dates_toChange){ dates_toChange.forEach(function(date) { if(!date.innerHTML.trim()==""){ date.classList.add('processed') var date_string=date.innerHTML.toString(); var slpit_dateText=date_string.split(" "); if(slpit_dateText.length==1){ let plural=true; if(slpit_dateText[0].length==2){ if(slpit_dateText[0].charAt(0)=="1"){ plural=false; } } let modifier=plural ? 'hours ago':'hour ago'; if(slpit_dateText[0].substr(-1)=='m'){ modifier=plural ? 'minutes ago':'minute ago'; } if(slpit_dateText[0].substr(-1)=='s'){ modifier=plural ? 'seconds ago':'second ago'; } var new_dateText=slpit_dateText[0].slice(0,-1); date.innerHTML= new_dateText+" "+ modifier; date.classList.add("modified"); } } }); } } _createElementChangeListener= function (selector, callback) { const initializedNodes = new Set([]); document.querySelectorAll(selector).forEach((node) => { callback(node); initializedNodes.add(node); }); const mutationObserver = new MutationObserver(() => { const nodes = document.querySelectorAll(selector); nodes.forEach((node) => { if (!initializedNodes.has(node)) { callback(node); initializedNodes.add(node); } }); }); mutationObserver.observe(document.body, { childList: true, subtree: true, }); } _createElementChangeListener(".widget",changeDateFormat); }); window.REBELMOUSE_TASKS_QUEUE.push(function(){ feature_post_full_style(); }); window.REBELMOUSE_LOW_TASKS_QUEUE.push(function(){ let scnt=1; let options = { // threshhold for intersection observer, so it triggers before or after element in viewport dependinng upon value rootMargin: '0px 0px 400px 0px' } function handleIntersection(entries) { entries.map((entry) => { if (entry.isIntersecting) { if(!entry.target.classList.contains('sidebar_sticky_parent')){ processAd(entry.target) //your call back here with the element that is intersected or in viewport } else { sidebar_ad_repeat(entry.target) } observer.unobserve(entry.target); // if you want to run it only once unobserve it } }); } window.IcreateElementChangeListener=function(selector, callback) { // look for elements that are injected later in the page. const initializedNodes = new Set([]); document.querySelectorAll(selector).forEach((node) => { callback(node); initializedNodes.add(node); }); const mutationObserver = new MutationObserver(() => { const nodes = document.querySelectorAll(selector); nodes.forEach((node) => { if (!initializedNodes.has(node)) { callback(node); initializedNodes.add(node); } }); }); mutationObserver.observe(document.body, { childList: true, subtree: true, }); } const observer = new IntersectionObserver(handleIntersection,options); IcreateElementChangeListener(".sidebar_sticky_parent",function(item){ //looks for item in the dom even if they are lazy laoded observer.observe(item); // observe item }) function sidebar_ad_repeat(sidebar_div){ let ad_id="ieee_sidebar_"+scnt; rblbid.cmd.push(function() { sidebar_div.querySelector(".sidebar_repeat_ad").id=ad_id; sidebar_div.style.height="1800px"; scnt++; sidebar_div.insertAdjacentHTML('afterend','<div class="sidebar_sticky_parent"><div class="stick_in_parent"><div class="sidebar_repeat_ad rblad-ieee_sidebar"></div></div></div>') }); } });</script><script class="rm-i-script" id="user-javascript-active" type="text"> window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function bootRpm(){ const INTERNAL_CLASS_PREFIXES = ["tag-", "post-section-", "rm-fl-"]; function filterOutNoisyClassNames(className) { function doesClassNameStartWithPrefix(badPrefix) { return className.indexOf(badPrefix) === 0; } return !INTERNAL_CLASS_PREFIXES.some(doesClassNameStartWithPrefix); } function signatureMaker(id, tagName, classList) { const cleanClassList = classList.filter(filterOutNoisyClassNames).sort(); return [id, tagName, cleanClassList]; } window.__rpmOptions = window.__rpmOptions || { lcpTrackerOptions: { signatureMaker: signatureMaker, }, clsTrackerOptions: { signatureMaker: signatureMaker, }, }; window.REBELMOUSE_STDLIB.loadExternalScript("https://www.rebelmouse.com/pharos/client/v1/mjs/web.mjs", function(){}) }); window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){ localStorage.setItem("userMembershipStatus", 'anonymous'); }); window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){ (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-5WJB5X2'); }); window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){ window.REBELMOUSE_STDLIB.loadExternalScript("//app-ab24.marketo.com/js/forms2/js/forms2.min.js", function() { }); }); window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){ window.REBELMOUSE_STDLIB.loadExternalScript("https://s3.amazonaws.com/ieee-mkto-cross-domain/enterprise-page-code.js", function() { }); }); window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){ let favoritProBook = new FontFace("Favorit-Pro-Book", "url(https://partners.rebelmouse.com/IEEE/ABCFavoritProFullWeb/ABCFavoritPro-Book.woff2)", { style: 'normal' }); favoritProBook.load().then(function() { document.fonts.add(favoritProBook); }); let telegrafFont = new FontFace("Telegraf", "url(https://partners.rebelmouse.com/IEEE/Telegraf/Telegraf-UltraBold-800.otf)", { style: 'normal' }); telegrafFont.load().then(function() { document.fonts.add(telegrafFont); }); }); window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){ window.REBELMOUSE_STDLIB.createElementChangeListener("span.comment--item-date", function(dateElement){ setTimeout(function(){ const datestring = dateElement.innerHTML.split(','); dateElement.setAttribute('data-date', datestring[0] + datestring[1]); }, 3000); }); }); window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){ document.querySelector(".access_links .list__item").href = "https://www.ieee.org/profile/public/createwebaccount/showCreateAccount.html?ShowMGAMarkeatbilityOptIn=true&sourceCode=spectrum&signinurl=" + encodeURIComponent(window.location.origin + "/core/saml/main/login?next_url=" + window.location.origin + "/core/integrations/ieee/changes?redirect=" + window.location.href) + "&url=" + encodeURIComponent(window.location.origin + "/core/saml/main/login?next_url=" + window.location.origin + "/core/integrations/ieee/changes?redirect=" + window.location.href) + "&autoSignin=Y&car=IEEE-Spectrum"; }); window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){ /* add tracking links */ const announcementsLinks = document.querySelectorAll('.announcement-bar .text-element > a, .announcement-bar .formatted-text > a'); for (const links of announcementsLinks) { links.classList.add('announcement-link'); } /* if close announcement bar, don't show again for same session */ function anbarclosedFunc() { sessionStorage.setItem('anbarclose',true); } document.querySelector(".button-learn-more-ebook").addEventListener("click",anbarclosedFunc); }); window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){ document.querySelector('.button-view').addEventListener('click', function() { PARSELY.conversions.trackLinkClick('Announcement Bar Invention - View Clicked'); }); }); window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){ const cookieButton = document.querySelectorAll('a[rel="cookie-preferences"]'); for (let i = 0; i < cookieButton.length; i++) { cookieButton[i].addEventListener('click', function(event) { event.preventDefault(); Osano.cm.showDrawer('osano-cm-dom-info-dialog-open') }); } }); window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){ function otherPopupsNotOpen() { if (document.querySelector('.gated-popup--shown') == null && document.querySelector('.stop-scrolling') == null) return true; else return false; } function showLightBox() { return document.querySelector('.lightbox-popup').classList.add('lightbox-popup--shown'); } function trackClicks() { const titleLinks = Array.from(document.querySelectorAll('a')); const handler = function() { if (sessionStorage.getItem("sessionPopupClicks")) sessionStorage.setItem("sessionPopupClicks", parseInt(sessionStorage.getItem("sessionPopupClicks")) + 1); } titleLinks.map(item => item.addEventListener('click', handler)); } function countClicks() { if (sessionStorage.getItem("sessionPopupClicks")) { if (parseInt(sessionStorage.getItem("sessionPopupClicks")) == 3) { if (otherPopupsNotOpen()) { showLightBox(); updateSigninButtons(); } else sessionStorage.setItem("sessionPopupClicks", parseInt(sessionStorage.getItem("sessionPopupClicks")) - 1); } } else { sessionStorage.setItem("sessionPopupClicks", 0); } trackClicks(); } setTimeout(countClicks, 1000); var popupLightBoxElement=document.querySelector('.lightbox-popup'), closeLightbox, lightboxCloseBtn = '.js--close-lightbox', lightboxShownClass = 'lightbox-popup--shown'; closeLightbox = function () { popupLightBoxElement.parentNode.removeChild(popupLightBoxElement); }; document.querySelector(lightboxCloseBtn).onclick = closeLightbox; function setCookie() { var now = new Date(); now.setTime(now.getTime() + 72 * 3600 * 1000); var expires = "pop_expires="+now; document.cookie = expires + ";path=/"; } function checkCookie() { var today = new Date(); var cookieset = document.cookie.split(';'); var value_expires = ""; cookieset.forEach((e) => { if(e.includes("pop_expires")) { value_expires = e; } }) var time_expire = new Date(value_expires.split("=")[1]); if(today <= time_expire){ return false; }else{ return true; } } var checkPage = true; if(window.location.href.indexOf("the-great-ai-reckoning") > -1) { //console.log("AI Special Report"); checkPage = false; } function updateSigninButtons() { document.querySelectorAll(".popup_links.signin_button .list__item")[0].href = "https://www.ieee.org/profile/public/createwebaccount/showCreateAccount.html?ShowMGAMarkeatbilityOptIn=true&sourceCode=spectrum&signinurl=" + encodeURIComponent(window.location.origin + "/core/saml/main/login?next_url=" + window.location.origin + "/core/integrations/ieee/changes?redirect=" + window.location.href) + "&url=" + encodeURIComponent(window.location.origin + "/core/saml/main/login?next_url=" + window.location.origin + "/core/integrations/ieee/changes?redirect=" + window.location.href) + "&autoSignin=Y&car=IEEE-Spectrum"; document.querySelectorAll(".popup_links.signin_button .list__item")[1].href = "https://spectrum.ieee.org/core/saml/main/login?next_url=" + encodeURIComponent("https://spectrum.ieee.org/core/integrations/ieee/changes?redirect=" + window.location.href); } function checkPopup() { var checkClickCount = true; if (sessionStorage.getItem("sessionPopupClicks")) { if (parseInt(sessionStorage.getItem("sessionPopupClicks")) > 2) checkClickCount = false; } if (checkCookie() && checkPage && otherPopupsNotOpen() && checkClickCount) { popupLightBoxElement.classList.add(lightboxShownClass); setCookie(); sessionStorage.setItem("sessionPopupClicks", 4); updateSigninButtons(); } } setTimeout(checkPopup, 15000); }); window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){ window.REBELMOUSE_STDLIB.createElementChangeListener(".widget", (el) => { addPopSave(); }); }); window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){ document.querySelectorAll(".social-author__bio").forEach(function (item) { if(item.querySelector("a")){ item.querySelector("a").remove(); } var text = item.innerHTML; var dotSpace = text.indexOf(". ") === -1 ? text.length : text.indexOf(". "); var dotEnd = text.indexOf(". <") === -1 ? text.length : text.indexOf(".<"); var dotBr = text.indexOf(".\n") === -1 ? text.length : text.indexOf(".\n"); var firstDot = Math.min(dotSpace, dotEnd, dotBr); var newtext = text.substring(0, firstDot+1); item.innerHTML = newtext; }); let authorsList = document.querySelectorAll(".container_feature_below .post-author-list .social-author__name"); let authorsListBios = document.querySelectorAll(".container_feature_below .post-author-list .social-author__bio p"); for (let i = 0; i < authorsList.length; i++) { authorsListBios[i].innerHTML += ' <a href="'+ authorsList[i].href + '">See full bio →</a>'; } }); window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){ var LightBoxLayout=document.querySelector('.lightbox-layout'), closeLightbox; function closeLightbox(){ var LightBoxElement=document.querySelector('.lightbox'); LightBoxElement.classList.remove('lightbox--shown'); LightBoxElement.classList.remove('lightbox'); LightBoxLayout.classList.remove('lightbox--shown'); document.body.classList.remove("fixed_scrolling"); } function checkLightboxForPost(item){ let theIds = item.querySelector(".custom-field-lightbox-img-shortcode-ids"); let lightboxImages = JSON.parse(theIds.innerText); let postLightbox = lightboxImages["imageShortcodeIds"]; for (var i=0; i<postLightbox.length; i++) { let theImgs = item.querySelectorAll("img"), getImg, theImage; for (var y=0; y<theImgs.length; y++) { if(theImgs[y].getAttribute('data-runner-src') != null){ getImg = theImgs[y].getAttribute('data-runner-src'); }else{ getImg = theImgs[y].src; } if(getImg.indexOf(postLightbox[i]) != -1){ if(theImgs[y].parentElement.classList.contains("share-tab-img")){ theImage = theImgs[y].parentElement.parentElement; }else{ theImage = theImgs[y].parentElement; } theImage.classList.add("lightbox_icon"); theImage.classList.add("lightbox_"+i); theImage.addEventListener("click", function(event) { this.classList.add('lightbox--shown'); this.classList.add('lightbox'); LightBoxLayout.classList.add('lightbox--shown'); document.body.classList.add("fixed_scrolling"); }); } } } } window.REBELMOUSE_STDLIB.createElementChangeListener(".widget", (el) => { let theIds = el.querySelector(".custom-field-lightbox-img-shortcode-ids"); if(theIds){ let lightboxImages = JSON.parse(theIds.innerText); let postLightbox = lightboxImages["imageShortcodeIds"]; let foundAll = postLightbox.length; for (var i=0; i<postLightbox.length; i++) { let theImgs = el.querySelectorAll("img"), getImg, theImage; for (var y=0; y<theImgs.length; y++) { if(theImgs[y].getAttribute('data-runner-src') != null){ getImg = theImgs[y].getAttribute('data-runner-src'); }else{ getImg = theImgs[y].src; } if(getImg.indexOf(postLightbox[i]) != -1){ if(theImgs[y].parentElement.classList.contains("share-tab-img")){ theImage = theImgs[y].parentElement.parentElement; }else{ theImage = theImgs[y].parentElement; } foundAll = foundAll - 1; theImage.classList.add("lightbox_icon"); theImage.classList.add("lightbox_"+i); theImage.addEventListener("click", function(event) { this.classList.add('lightbox--shown'); this.classList.add('lightbox'); LightBoxLayout.classList.add('lightbox--shown'); document.body.classList.add("fixed_scrolling"); }); } } } if(foundAll != 0){ el.querySelector(".widget__show-more").addEventListener("click", function(event) { checkLightboxForPost(this.parentElement.parentElement.parentElement); }); } } }); document.querySelector('.lightbox__close').onclick= closeLightbox; document.addEventListener("keyup", function(event) { // Number 27 is the "esc" key on the keyboard if (event.keyCode === 27) { closeLightbox(); } }); });</script><script class="rm-i-script" id="user-javascript-lowest" type="text"> window.REBELMOUSE_LOWEST_TASKS_QUEUE.push(function(){ window.RM_AD_LOADER.push({ options: { threshold: 500, }, staticSelectors: [], dynamicSelectors: [], dependencies: ["https://htlbid.com/v3/spectrum.ieee.org/rblbid.js"], onDependanciesLoaded: function () { window.rblbid = window.rblbid || {}; rblbid.cmd = rblbid.cmd || []; window.custom_tags = "coding, software bloat, cybersecurity, cloud computing, ~rmsc:rebelmouse-image:51411262, Technology & Computing, Hobbies & Interests, Music and Audio, Books and Literature, Business and Finance, Education, Health and Medical Services, Hobbies and Interests, Rock Music, Arts and Crafts, Musical Instruments, Workshops and Classes, Musical Instruments and Accessories, Classic Rock, Hard Rock, Soft Rock, Woodworking, Drawing and Sketching, Painting, Photography" if(!window.custom_tags){ window.custom_tags = window.tags; } rblbid.cmd.push(function() { rblbid.layout('universal'); rblbid.setTargeting("is_testing","no"); rblbid.setTargeting("is_home", "no"); rblbid.setTargeting("ieee_page_type", "postpage"); rblbid.setTargeting("ieee_post_id", window.postid); rblbid.setTargeting("ieee_category", window.category); rblbid.setTargeting("ieee_tags", window.tags ); rblbid.pubads().setPublisherProvidedId(window.ppid) rblbid.setTargeting("aud", "Interest432, Interest207, Interest266, Interest52, Interest62, Interest35, Interest171, Purchase Intent714, Interest289, Interest209, Interest237, Interest241, Purchase Intent715, Purchase Intent716, Purchase Intent718, Interest292, Interest293, Interest294, Interest218, Interest212, Interest215, Interest216") }); function injectGooglePCDTag(segmentID, yourID) { const script = document.createElement('script'); script.async = true; script.id = 'google-pcd-tag'; script.src = `https://pagead2.googlesyndication.com/pagead/js/pcd.js`; script.setAttribute('data-audience-pixel', `dc_iu=/22278042776/DFPAudiencePixel;dc_seg=${segmentID};ppid=${yourID}`); document.head.appendChild(script); } fetch("/r/kappa/api/v2/reader/pixelids?aud=Interest432, Interest207, Interest266, Interest52, Interest62, Interest35, Interest171, Purchase Intent714, Interest289, Interest209, Interest237, Interest241, Purchase Intent715, Purchase Intent716, Purchase Intent718, Interest292, Interest293, Interest294, Interest218, Interest212, Interest215, Interest216").then(result=>result.json()).then(res => { res.forEach(pixaud=>{ // (function() { // var a = String(Math.floor(Math.random() * 10000000000000000)); // new Image().src = 'https://pubads.g.doubleclick.net/activity;dc_iu=/22278042776,22808949761/DFPAudiencePixel;ord=' + a + `;dc_seg=${pixaud};ppid=${window.ppid}?`; // })(); injectGooglePCDTag(pixaud, window.ppid); }) }) }, onInit: function() { }, }); }); window.REBELMOUSE_LOWEST_TASKS_QUEUE.push(function(){ let floatingShares = document.querySelector('.floating-shares'); floatingShares.onclick = function() { if (navigator.share) { navigator.share({ url: window.location.href }).then(() => { console.log('Thanks for sharing!'); }).catch(console.error); } else { alert("sharing "+ window.location.href); } } }); window.REBELMOUSE_LOWEST_TASKS_QUEUE.push(function(){ let topbarHeadline = document.querySelector('.topbar__sticky-headline--post .text-element'); let windowHeight = window.innerHeight/2; if(!!window.IntersectionObserver){ let headlineObserver = new IntersectionObserver((entries) => { entries.forEach(entry => { if(entry.isIntersecting){ var currentHeadline = entry.target.querySelector('.widget__headline-text'); if(currentHeadline) { topbarHeadline.textContent = currentHeadline.textContent; } } }); }, {rootMargin: "0px 0px -" + windowHeight + "px 0px"}); createElementChangeListener(".infinite_scroll .widget", (el) => { headlineObserver.observe(el) }); createElementChangeListener(".article_column .widget", (el) => { headlineObserver.observe(el) }); createElementChangeListener(".feature_post_full .widget", (el) => { headlineObserver.observe(el) }); } }); window.REBELMOUSE_LOWEST_TASKS_QUEUE.push(function(){ }); window.REBELMOUSE_LOWEST_TASKS_QUEUE.push(function(){ function menuClick() { document.getElementsByClassName('huge-menu')[0].style.display = 'block'; document.getElementsByClassName('hambg-btn')[0].classList.add('js--active'); document.body.classList.add("huge-menu-opened"); document.body.classList.remove("menu-opened"); } function close(){ document.getElementsByClassName('huge-menu')[0].style.display = 'none'; document.getElementsByClassName('hambg-btn')[0].classList.remove('js--active'); document.body.classList.remove("huge-menu-opened"); document.body.classList.remove("menu-opened"); } function addMenuClickListener() { var rebelMenu_first = document.getElementsByClassName('rebelbar__menu-toggle')[0]; var rebelMenu_second = document.getElementsByClassName('rebelbar__menu-toggle')[1]; var menuClose = document.getElementsByClassName('hm__close')[0]; rebelMenu_first.addEventListener('click', menuClick); rebelMenu_second.addEventListener('click', menuClick); menuClose.addEventListener('click', close); } addMenuClickListener(); }); window.REBELMOUSE_LOWEST_TASKS_QUEUE.push(function(){ function createIdleScrollListener(callback) { let ticking = false; return function onScrollIdle() { if (ticking) { return; } ticking = true; requestAnimationFrame(function A() { callback(); ticking = false; }); }; } var stickyEl = document.querySelector('.topbar-sticky'); var startPosition = stickyEl.offsetTop; var darkTopbarHeight = document.querySelector('.topbar .dark_top_bar').offsetHeight; var currentPosition; stickyEl.style.height = stickyEl.offsetHeight + 'px'; document.addEventListener("scroll", createIdleScrollListener(function B() { currentPosition = stickyEl.getBoundingClientRect().top + darkTopbarHeight; if( currentPosition < startPosition ) { if( !stickyEl.classList.contains('active') ) { stickyEl.classList.add('active'); } } else { if( stickyEl.classList.contains('active') ) { stickyEl.classList.remove('active'); } } })); });</script></body></html>