CINXE.COM
Dedrone City-Wide Drone Detection: The 200 Best Inventions of 2023 | TIME
<!doctype html> <!-- :////////////////////////: ..-////-.. .//` :/- ..-///////////////////- -`````````.////.`````````: `////. -/// -/// ////-`````````````.- - .////. - `////. ////: .////` ////- - .////. `////. `/////- `/////- ////- .////. `////. ://////. `/////// ////- .////. `////. //..////. :/:-////. ////- `. .////. `////. .//` :////. :/: `////: ////:..........:- .////. `////. //: :////` -/:` -////` ////:...........:- .////. `////. `//` :////` -//` `////- ////- `. .////. `////. :// `/////` -//` ://// ////- .////. `////. `//. `////:-//` .////. ////- .////. `////. -//` `//////` ////: ////- - .////. `////. //: `////. :////` ////- : ..-////-.. ..:////-.. ..-//:.. .//. ..:////:-.`..-///////////////////: --><html lang="en"> <head> <title>Dedrone City-Wide Drone Detection: The 200 Best Inventions of 2023 | TIME</title> <meta charset="utf-8"> <link rel="shortcut icon" href="/favicon.ico" type="image/vnd.microsoft.icon"> <link rel="icon" href="/img/favicons/favicon-32.png" sizes="32x32"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="robots" content="max-image-preview:large, max-image-preview:large"> <link rel="apple-touch-icon" href="/img/favicons/favicon-57.png"> <link rel="apple-touch-icon" href="/img/favicons/favicon-57.png" sizes="57x57"> <link rel="apple-touch-icon" href="/img/favicons/favicon-72.png" sizes="72x72"> <link rel="apple-touch-icon" href="/img/favicons/favicon-76.png" sizes="76x76"> <link rel="apple-touch-icon" href="/img/favicons/favicon-114.png" sizes="114x114"> <link rel="apple-touch-icon" href="/img/favicons/favicon-120.png" sizes="120x120"> <link rel="apple-touch-icon" href="/img/favicons/favicon-144.png" sizes="144x144"> <link rel="apple-touch-icon" href="/img/favicons/favicon-152.png" sizes="152x152"> <link rel="apple-touch-icon" href="/img/favicons/favicon-180.png" sizes="180x180"> <link rel="icon" sizes="192x192" href="/img/favicons/favicon-192.png"> <link rel="manifest" href="/manifest.json"> <meta name="format-detection" content="telephone=no"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="description" content="Find out why Dedrone City-Wide Drone Detection is one of the best inventions of 2023"> <link rel="canonical" href="https://time.com/collection/best-inventions-2023/6326992/dedrone-city-wide-drone-detection/"> <meta property="og:title" content="Dedrone City-Wide Drone Detection: The 200 Best Inventions of 2023"> <meta property="og:type" content="article"> <meta property="article:content_tier" content="free"> <meta property="article:opinion" content="false"> <meta property="og:site_name" content="Time"> <meta property="og:url" content="https://time.com/collection/best-inventions-2023/6326992/dedrone-city-wide-drone-detection/"> <meta property="og:description" content="Find out why Dedrone City-Wide Drone Detection made this year's list"> <meta property="article:published_time" content="2023-10-24T11:00:35.000Z"> <meta property="category" content="Tech"> <meta name="pinterest:url" content="https://time.com/collection/best-inventions-2023/6326992/dedrone-city-wide-drone-detection/"> <meta name="twitter:card" content="summary_large_image"> <meta name="twitter:url" content="https://time.com/collection/best-inventions-2023/6326992/dedrone-city-wide-drone-detection/"> <meta name="twitter:title" content="Dedrone City-Wide Drone Detection: The 200 Best Inventions of 2023"> <meta name="twitter:description" content="Find out why Dedrone City-Wide Drone Detection made this year's list"> <meta name="pinterest:description" content="Find out why Dedrone City-Wide Drone Detection is one of the best inventions of 2023"> <meta name="twitter:site" content="@TIME"> <meta name="pinterest:media" content="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-city-wide.jpg?quality=85&w=1200&h=628&crop=1"> <meta name="twitter:image" content="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-city-wide.jpg?quality=85&w=1200&h=628&crop=1"> <meta property="og:image" content="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-city-wide.jpg?quality=85&w=1200&h=628&crop=1"> <meta property="og:image:width" content="1200"> <meta property="og:image:height" content="628"> <meta property="fb:app_id" content="991230477954201"> <meta property="fb:pages" content="10606591490"> <script type="application/ld+json"> [{"@context":"http://schema.org","@type":"NewsArticle","headline":"Eyes in the Skies","image":[{"@type":"ImageObject","url":"https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-city-wide.jpg","width":2400,"height":1554,"associatedArticle":{"@type":"NewsArticle","url":"https://time.com/collection/best-inventions-2023/6326992/dedrone-city-wide-drone-detection/"},"headline":"best-inventions-2023-city-wide","description":"","creditText":""}],"author":[{"@type":"Person","name":"Chris Stokel-Walker"}],"datePublished":"2023-10-24T11:00:35.000Z","dateModified":"2023-10-24T11:00:35.000Z","description":"Find out why Dedrone City-Wide Drone Detection is one of the best inventions of 2023","url":"https://time.com/collection/best-inventions-2023/6326992/dedrone-city-wide-drone-detection/","articleSection":"Tech","keywords":["best inventions","Best Inventions 2023","E-Commerce","franchise","list","Magazine","ecommerce"],"thumbnailUrl":"https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-city-wide.jpg","publisher":{"@type":"Organization","name":"Time","url":"https://time.com","logo":{"@type":"ImageObject","url":"https://time.com/img/logo.png","width":210,"height":60},"foundingDate":"March 3, 1923","sameAs":["https://www.facebook.com/time","https://www.instagram.com/time/?hl=en","https://twitter.com/time","https://www.pinterest.com/timemagazine"]}},{"@context":"http://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"item":{"@id":"https://time.com/collection/best-inventions-2023/","name":"The Best Inventions of 2023","image":null}}]}] </script> <meta name="recaptcha-key" content="6LfZrtgZAAAAAJ8n221oa1YgG6cVvoOPgamCm6oT"> <link rel="preconnect" href="https://www.googletagmanager.com/"> <link rel="preconnect" href="https://fonts.gstatic.com/" crossorigin> <link rel="preconnect" href="https://assets.time.com/"> <link rel="preload" as="style" href="https://fonts.googleapis.com/css?family=PT+Serif:400,700|Roboto:300,400,700|Roboto+Condensed:300,400,400i,700|Lora:400,400i,700,700i|Zilla+Slab:400,400i,500,600,700,700i|Oswald:200, 300, 400,500,600,700|Permanent+Marker:400&display=swap"> <link rel="preconnect" href="https://securepubads.g.doubleclick.net" > <link rel="preload" href="https://securepubads.g.doubleclick.net/tag/js/gpt.js" as="script" > <link rel="dns-prefetch" href="https://c.amazon-adsystem.com"> <link rel="preconnect" href="https://c.amazon-adsystem.com" crossorigin> <link rel="preconnect" href="https://api.time.com"> <script>(function(){const makeStub=()=>{const TCF_LOCATOR_NAME="__tcfapiLocator";const queue=[];const currentWindow=window;let frameLocator=currentWindow;let cmpFrame;function addFrame(){const doc=currentWindow.document;const otherCMP=!!(currentWindow.frames[TCF_LOCATOR_NAME]);if(!otherCMP){if(doc.body){const iframe=doc.createElement('iframe');iframe.style.cssText='display:none';iframe.name=TCF_LOCATOR_NAME;doc.body.appendChild(iframe);}else{setTimeout(addFrame,5);}}return!otherCMP;}function tcfAPIHandler(...args){if(!args.length){return queue;}else if(args[0]==='ping'){if(typeof args[2]==='function'){args[2]({cmpLoaded:false,cmpStatus:'stub'});}}else{queue.push(args);}}function postMessageEventHandler(event){const msgIsString=typeof event.data==='string';let json={};if(msgIsString){try{json=JSON.parse(event.data);}catch(ignore){}}else{json=event.data;}const payload=(typeof json==='object'&&json!==null)?json.__tcfapiCall:null;if(payload){window.__tcfapi(payload.command,payload.version,function(retValue,success){let returnMsg={__tcfapiReturn:{returnValue:retValue,success:success,callId:payload.callId,},};if(event&&event.source&&event.source.postMessage){event.source.postMessage((msgIsString)?JSON.stringify(returnMsg):returnMsg,'*');}},payload.parameter,);}}while(frameLocator){try{if(frameLocator.frames[TCF_LOCATOR_NAME]){cmpFrame=frameLocator;break;}}catch(ignore){}if(frameLocator===currentWindow.top){break;}frameLocator=frameLocator.parent;}if(!cmpFrame){addFrame();currentWindow.__tcfapi=tcfAPIHandler;currentWindow.addEventListener('message',postMessageEventHandler,false);}};makeStub();}());</script> <script>(function() {window.__gpp_addFrame = function(n) {if (!window.frames[n]) {if (document.body) {var i = document.createElement('iframe');i.style.cssText = 'display:none';i.name = n;document.body.appendChild(i);} else {window.setTimeout(window.__gpp_addFrame, 10, n);}}};window.__gpp_stub = function() {var b = arguments;__gpp.queue = __gpp.queue || [];if (!b.length) {return __gpp.queue;}var cmd = b[0];var clb = b.length > 1 ? b[1] : null;var par = b.length > 2 ? b[2] : null;if (cmd === 'ping') {return {cmpStatus: 'stub',signalStatus: 'notReady'};} else if (cmd === 'addEventListener') {__gpp.events = __gpp.events || [];if (!('lastId' in __gpp)) {__gpp.lastId = 0;}__gpp.lastId++;var lnr = __gpp.lastId;__gpp.events.push({'id': lnr,'callback': clb,'parameter': par});return {eventName: 'listenerRegistered',listenerId: lnr,data: true,pingData: {cmpStatus: 'stub',signalStatus: 'notReady'}};} else if (cmd === 'removeEventListener') {var success = false;__gpp.events = __gpp.events || [];for (var i = 0; i < __gpp.events.length; i++) {if (__gpp.events[i].id == par) {__gpp.events.splice(i, 1);success = true;break;}}return {eventName: 'listenerRemoved',listenerId: par,data: success,pingData: {cmpStatus: 'stub',signalStatus: 'notReady'}};} else if (cmd === 'hasSection' || cmd === 'getSection' || cmd === 'getField') {return null;} else {__gpp.queue.push([].slice.apply(b));}};window.__gpp_msghandler = function(event) {var msgIsString = typeof event.data === 'string';try {var json = msgIsString ? JSON.parse(event.data) : event.data;} catch (e) {var json = null;}if (typeof(json) === 'object' && json !== null && '__gppCall' in json) {var i = json.__gppCall;window.__gpp(i.command, function(retValue, success) {var returnMsg = {'__gppReturn': {'returnValue': retValue,'success': success,'callId': i.callId}};event.source.postMessage(msgIsString ? JSON.stringify(returnMsg) : returnMsg, '*');}, 'parameter' in i ? i.parameter : null, 'version' in i ? i.version : '1.1');}};if (!('__gpp' in window) || (typeof(window.__gpp) !== 'function')) {window.__gpp = window.__gpp_stub;window.addEventListener('message', window.__gpp_msghandler, false);window.__gpp_addFrame('__gppLocator');}})();</script> <script>!function () { window.semaphore = window.semaphore || [], window.ketch = function () { window.semaphore.push(arguments) }; var e = new URLSearchParams(document.location.search), o = e.has("property") ? e.get("property") : "time_com", n = document.createElement("script"); n.type = "text/javascript", n.src = "https://global.ketchcdn.com/web/v2/config/time/".concat(o, "/boot.js"), n.defer = n.async = !0, document.getElementsByTagName("head")[0].appendChild(n) }();</script> <script type="text/javascript"> (function(w,d,s,l,i){ w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src='https://www.googletagmanager.com/gtm.js?id='+i+'&l=dataLayer';f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-P59JVDP'); </script> <script async src="https://www.googletagmanager.com/gtag/js?id=UA-97981691-1"></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'UA-97981691-1', { 'send_page_view': false }); </script> <script type="text/javascript"> LUX=(function() {var a=("undefined"!==typeof(LUX)&&"undefined"!==typeof(LUX.gaMarks)?LUX.gaMarks:[]);var d=("undefined"!==typeof(LUX)&&"undefined"!==typeof(LUX.gaMeasures)?LUX.gaMeasures:[]);var j="LUX_start";var k=window.performance;var l=("undefined"!==typeof(LUX)&&LUX.ns?LUX.ns:(Date.now?Date.now():+(new Date())));if(k&&k.timing&&k.timing.navigationStart){l=k.timing.navigationStart}function f(){if(k&&k.now){return k.now()}var o=Date.now?Date.now():+(new Date());return o-l}function b(n){if(k){if(k.mark){return k.mark(n)}else{if(k.webkitMark){return k.webkitMark(n)}}}a.push({name:n,entryType:"mark",startTime:f(),duration:0});return}function m(p,t,n){if("undefined"===typeof(t)&&h(j)){t=j}if(k){if(k.measure){if(t){if(n){return k.measure(p,t,n)}else{return k.measure(p,t)}}else{return k.measure(p)}}else{if(k.webkitMeasure){return k.webkitMeasure(p,t,n)}}}var r=0,o=f();if(t){var s=h(t);if(s){r=s.startTime}else{if(k&&k.timing&&k.timing[t]){r=k.timing[t]-k.timing.navigationStart}else{return}}}if(n){var q=h(n);if(q){o=q.startTime}else{if(k&&k.timing&&k.timing[n]){o=k.timing[n]-k.timing.navigationStart}else{return}}}d.push({name:p,entryType:"measure",startTime:r,duration:(o-r)});return}function h(n){return c(n,g())}function c(p,o){for(i=o.length-1;i>=0;i--){var n=o[i];if(p===n.name){return n}}return undefined}function g(){if(k){if(k.getEntriesByType){return k.getEntriesByType("mark")}else{if(k.webkitGetEntriesByType){return k.webkitGetEntriesByType("mark")}}}return a}return{mark:b,measure:m,gaMarks:a,gaMeasures:d}})();LUX.ns=(Date.now?Date.now():+(new Date()));LUX.ac=[];LUX.cmd=function(a){LUX.ac.push(a)};LUX.init=function(){LUX.cmd(["init"])};LUX.send=function(){LUX.cmd(["send"])};LUX.addData=function(a,b){LUX.cmd(["addData",a,b])};LUX_ae=[];window.addEventListener("error",function(a){LUX_ae.push(a)});LUX_al=[];if("function"===typeof(PerformanceObserver)&&"function"===typeof(PerformanceLongTaskTiming)){var LongTaskObserver=new PerformanceObserver(function(c){var b=c.getEntries();for(var a=0;a<b.length;a++){var d=b[a];LUX_al.push(d)}});try{LongTaskObserver.observe({type:["longtask"]})}catch(e){}}; LUX = window.LUX || {}; LUX.label = "collection-article"; </script> <script src="https://cdn.speedcurve.com/js/lux.js?id=4265275546" defer crossorigin="anonymous"></script> <script async src='https://c.amazon-adsystem.com/aax2/apstag.js'></script> <script> window.apstag = window.apstag || { init: function() { apstag._Q.push(["i", arguments, (new Date).getTime()]) }, fetchBids: function() { apstag._Q.push(["f", arguments, (new Date).getTime()]) }, setDisplayBids: function() {}, _Q: [] }; window.apstag.init({ "pubID": "3928", "adServer": "googletag", "videoAdServer": "DFP", "simplerGPT": true, "bidTimeout": 2000, "cmpTimeout": 2000, "deals": true }); </script> <script type = "text/javascript"> window.googletag = window.googletag || {}; googletag.cmd = googletag.cmd || []; (function() { window.advBidxc = window.advBidxc || {}; window.advBidxc.timeout = 1e3; window.advBidxc.customerId = "8CUDF88I8"; //HB Account ID window.advBidxc.domain = window.location.hostname; window.advBidxc.version = 12.1; window.advBidxc.startTime = new Date().getTime(); window.advBidxc.limitedAds = false; //Can be set as true or false to restrict Ad Serving via HB var mnTgts = { section: "Tech", site: "time" }; window.advBidxc.pub = mnTgts; function loadScript(tagSrc) { var scriptTag = document.createElement('script'), placeTag = document.getElementsByTagName("script")[0]; scriptTag.type = 'text/javascript'; scriptTag.async = true; scriptTag.src = tagSrc; placeTag.parentNode.insertBefore(scriptTag, placeTag); } var stdGPT = '//securepubads.g.doubleclick.net/tag/js/gpt.js'; var ltdGPT = '//pagead2.googlesyndication.com/tag/js/gpt.js'; // loads Google's GAM API (gpt.js) for finalizing auction on GAM function loadGPT() { if (!window.advBidxc.isAdServerLoaded) { if (window.advBidxc.limitedAds) { loadScript(ltdGPT); } else { loadScript(stdGPT); } window.advBidxc.isAdServerLoaded = true; } } // Set timeout for loading GAM's API gpt.js window.advBidxc.loadGPT = setTimeout(loadGPT, window.advBidxc.timeout); var mnDn = 'hbx.media.net'; // Load the primary HB script var mnSrc = 'https://' + mnDn + '/bidexchange.js?' + 'cid=' + window.advBidxc.customerId + "&version=" + window.advBidxc.version + '&dn=' + window.advBidxc.domain + '&ysite=' + encodeURIComponent(mnTgts.site) + '&ysection=' + encodeURIComponent(mnTgts.section); loadScript(mnSrc); })(); </script> <script async src="https://pub.doubleverify.com/dvtag/21226187/DV759520/pub.js"></script> <script type="text/javascript" id="draper-script" src="//assets.time.com/draper/draper-next/0.7.0.js" data-targeting="%7B%22type%22%3A%22article%22%2C%22cid%22%3A%226326992%22%2C%22aid%22%3A%226326992%22%2C%22author%22%3A%5B%22Chris%20Stokel-Walker%22%5D%2C%22contentType%22%3A%22collection-article%22%2C%22ctype%22%3A%22collection-article%22%2C%22primarysection%22%3A%22tech%22%2C%22sections%22%3A%22tech%22%2C%22tags%22%3A%5B%22bestinventions%22%2C%22bestinventions2023%22%2C%22ecommerce%22%2C%22franchise%22%2C%22list%22%2C%22magazine%22%2C%22tech%22%5D%2C%22neg%22%3A%22%22%2C%22search%22%3A%22%22%2C%22vidonpage%22%3A%22false%22%2C%22app%22%3A%22element%22%7D" ></script> <script type="text/javascript"> Draper.init({ pageLevelTargeting: {"type":"article","cid":"6326992","aid":"6326992","author":["Chris Stokel-Walker"],"contentType":"collection-article","ctype":"collection-article","primarysection":"tech","sections":"tech","tags":["bestinventions","bestinventions2023","ecommerce","franchise","list","magazine","tech"],"neg":"","search":"","vidonpage":"false","app":"element"} }); // The triple-brace syntax is necessary show the raw // JSON object that is being passed to the `Draper` constructor. Draper.defineAds([{"id":"leaderboard-ad-1","sizes":[[[728,90],[970,250],[5,5],[1,1]],[[728,90],[5,5],[1,1]],[[320,50],[300,50],[5,5],[1,1]]],"display":"desktop","adUnitPath":"21801468956/time/tech/leaderboard1","slotLevelTargeting":{"pos":"leaderboard1"}},{"id":"stickyfooter-ad-1","display":"mobile","sizes":[[],[],[[300,50],[320,50],[5,5],[1,1]]],"adUnitPath":"21801468956/time/tech/stickyfooter1","slotLevelTargeting":{"pos":"stickyfooter1"}},{"id":"sponsorshiplogo1","sizes":[[[8,1],[1,1]]],"refreshable":false,"adUnitPath":"21801468956/time/tech/sponsorshiplogo1","slotLevelTargeting":{"pos":"sponsorshiplogo1"}},{"type":"ad","id":"inline-ad-1","sizes":[[[728,90],[300,250],[336,280],[1,1]],[[300,250],[300,600],[336,280],[1,1]],[[300,250],[300,600],[336,280],[1,1]]],"adUnitPath":"21801468956/time/tech/inline1","slotLevelTargeting":{"pos":"inline1"}}]); Draper.addEventListener('slotOnload', function(event) { var slotId = event.slot.getSlotElementId(); if (slotId.includes('sponsorshiplogo')) { const presentedByTextDiv = document.querySelector(`#${slotId}`).previousElementSibling; presentedByTextDiv.classList.add("visible"); } }) </script> <script type="text/javascript"> window.ntvConfig = window.ntvConfig || {}; window.ntvConfig.keyValues = {"type":"article","cid":"6326992","aid":"6326992","author":["Chris Stokel-Walker"],"contentType":"collection-article","ctype":"collection-article","primarysection":"tech","sections":"tech","tags":["bestinventions","bestinventions2023","ecommerce","franchise","list","magazine","tech"],"neg":"","search":"","vidonpage":"false","app":"element"}; window.ntvConfig.keyValues.tags = 'bestinventions,bestinventions2023,ecommerce,franchise,list,magazine,tech'; </script> <script type="text/javascript" async src="//s.ntv.io/serve/load.js" data-ntv-pub-injection></script> <script type='text/javascript'>window.NREUM||(NREUM={});NREUM.info = {"agent":"","beacon":"bam.nr-data.net","errorBeacon":"bam.nr-data.net","licenseKey":"9258b6847e","applicationID":"403458619","applicationTime":1.209624,"transactionName":"YFYDZUYAV0BXUkJRDFkcJElEE1xARVtFFyRyZ04e","queueTime":0,"ttGuid":"3cbc1a0e8866141f","agentToken":null}; (window.NREUM||(NREUM={})).init={privacy:{cookies_enabled:true},ajax:{deny_list:["bam.nr-data.net"]},session_trace:{sampling_rate:0.0,mode:"FIXED_RATE",enabled:true,error_sampling_rate:0.0},distributed_tracing:{enabled:true}};(window.NREUM||(NREUM={})).loader_config={agentID:"512212918",accountID:"2378226",trustKey:"2378226",licenseKey:"9258b6847e",applicationID:"403458619"};;/*! For license information please see nr-loader-rum-1.274.0.min.js.LICENSE.txt */ (()=>{var e,t,r={8122:(e,t,r)=>{"use strict";r.d(t,{a:()=>i});var n=r(944);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.R)(3);if(!t||"object"!=typeof t)return(0,n.R)(4);const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),o=0===Object.keys(r).length?e:r;for(let a in o)if(void 0!==e[a])try{if(null===e[a]){r[a]=null;continue}Array.isArray(e[a])&&Array.isArray(t[a])?r[a]=Array.from(new Set([...e[a],...t[a]])):"object"==typeof e[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555:(e,t,r)=>{"use strict";r.d(t,{Vp:()=>c,fn:()=>s,x1:()=>u});var n=r(384),i=r(8122);const o={beacon:n.NT.beacon,errorBeacon:n.NT.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0},a={};function s(e){try{const t=c(e);return!!t.licenseKey&&!!t.errorBeacon&&!!t.applicationID}catch(e){return!1}}function c(e){if(!e)throw new Error("All info objects require an agent identifier!");if(!a[e])throw new Error("Info for ".concat(e," was never set"));return a[e]}function u(e,t){if(!e)throw new Error("All info objects require an agent identifier!");a[e]=(0,i.a)(t,o);const r=(0,n.nY)(e);r&&(r.info=a[e])}},9417:(e,t,r)=>{"use strict";r.d(t,{D0:()=>g,gD:()=>h,xN:()=>p});var n=r(993);const i=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var o=r(2614),a=r(944),s=r(384),c=r(8122);const u="[data-nr-mask]",d=()=>{const e={mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,harvestTimeSeconds:10,autoStart:!0},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},feature_flags:[],generic_events:{enabled:!0,harvestTimeSeconds:30,autoStart:!0},harvest:{tooManyRequestsDelay:60},jserrors:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},logging:{enabled:!0,harvestTimeSeconds:10,autoStart:!0,level:n.p_.INFO},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,harvestTimeSeconds:30,autoStart:!0},performance:{capture_marks:!1,capture_measures:!1},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:o.wk,inactiveMs:o.BB},session_replay:{autoStart:!0,enabled:!1,harvestTimeSeconds:60,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inline_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){i(t)?e.mask_selector="".concat(t,",").concat(u):""===t||null===t?e.mask_selector=u:(0,a.R)(5,t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){i(t)?e.block_selector+=",".concat(t):""!==t&&(0,a.R)(6,t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,a.R)(7,t)}},session_trace:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},soft_navigations:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},spa:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},ssl:void 0,user_actions:{enabled:!0}}},l={},f="All configuration objects require an agent identifier!";function g(e){if(!e)throw new Error(f);if(!l[e])throw new Error("Configuration for ".concat(e," was never set"));return l[e]}function p(e,t){if(!e)throw new Error(f);l[e]=(0,c.a)(t,d());const r=(0,s.nY)(e);r&&(r.init=l[e])}function h(e,t){if(!e)throw new Error(f);var r=g(e);if(r){for(var n=t.split("."),i=0;i<n.length-1;i++)if("object"!=typeof(r=r[n[i]]))return;r=r[n[n.length-1]]}return r}},3371:(e,t,r)=>{"use strict";r.d(t,{V:()=>f,f:()=>l});var n=r(8122),i=r(384),o=r(6154),a=r(9324);let s=0;const c={buildEnv:a.F3,distMethod:a.Xs,version:a.xv,originTime:o.WN},u={customTransaction:void 0,disabled:!1,isolatedBacklog:!1,loaderType:void 0,maxBytes:3e4,onerror:void 0,ptid:void 0,releaseIds:{},appMetadata:{},session:void 0,denyList:void 0,timeKeeper:void 0,obfuscator:void 0},d={};function l(e){if(!e)throw new Error("All runtime objects require an agent identifier!");if(!d[e])throw new Error("Runtime for ".concat(e," was never set"));return d[e]}function f(e,t){if(!e)throw new Error("All runtime objects require an agent identifier!");d[e]={...(0,n.a)(t,u),...c},Object.hasOwnProperty.call(d[e],"harvestCount")||Object.defineProperty(d[e],"harvestCount",{get:()=>++s});const r=(0,i.nY)(e);r&&(r.runtime=d[e])}},9324:(e,t,r)=>{"use strict";r.d(t,{F3:()=>i,Xs:()=>o,xv:()=>n});const n="1.274.0",i="PROD",o="CDN"},6154:(e,t,r)=>{"use strict";r.d(t,{OF:()=>c,RI:()=>i,WN:()=>d,bv:()=>o,gm:()=>a,mw:()=>s,sb:()=>u});var n=r(1863);const i="undefined"!=typeof window&&!!window.document,o="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),a=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),s=Boolean("hidden"===a?.document?.visibilityState),c=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),u=c&&"undefined"==typeof SharedWorker,d=((()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);Array.isArray(e)&&e.length>=2&&e[1]})(),Date.now()-(0,n.t)())},1687:(e,t,r)=>{"use strict";r.d(t,{Ak:()=>c,Ze:()=>l,x3:()=>u});var n=r(7836),i=r(3606),o=r(860),a=r(2646);const s={};function c(e,t){const r={staged:!1,priority:o.P3[t]||0};d(e),s[e].get(t)||s[e].set(t,r)}function u(e,t){e&&s[e]&&(s[e].get(t)&&s[e].delete(t),g(e,t,!1),s[e].size&&f(e))}function d(e){if(!e)throw new Error("agentIdentifier required");s[e]||(s[e]=new Map)}function l(e="",t="feature",r=!1){if(d(e),!e||!s[e].get(t)||r)return g(e,t);s[e].get(t).staged=!0,f(e)}function f(e){const t=Array.from(s[e]);t.every((([e,t])=>t.staged))&&(t.sort(((e,t)=>e[1].priority-t[1].priority)),t.forEach((([t])=>{s[e].delete(t),g(e,t)})))}function g(e,t,r=!0){const o=e?n.ee.get(e):n.ee,s=i.i.handlers;if(!o.aborted&&o.backlog&&s){if(r){const e=o.backlog[t],r=s[t];if(r){for(let t=0;e&&t<e.length;++t)p(e[t],r);Object.entries(r).forEach((([e,t])=>{Object.values(t||{}).forEach((t=>{t[0]?.on&&t[0]?.context()instanceof a.y&&t[0].on(e,t[1])}))}))}}o.isolatedBacklog||delete s[t],o.backlog[t]=null,o.emit("drain-"+t,[])}}function p(e,t){var r=e[1];Object.values(t[r]||{}).forEach((t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],o=e[2];n.apply(i,o)}}))}},7836:(e,t,r)=>{"use strict";r.d(t,{P:()=>c,ee:()=>u});var n=r(384),i=r(8990),o=r(3371),a=r(2646),s=r(5607);const c="nr@context:".concat(s.W),u=function e(t,r){var n={},s={},d={},l=!1;try{l=16===r.length&&(0,o.f)(r).isolatedBacklog}catch(e){}var f={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,o){!1!==o&&(o=!0);if(u.aborted&&!i)return;t&&o&&t.emit(e,r,n);for(var a=g(n),c=h(e),d=c.length,l=0;l<d;l++)c[l].apply(a,r);var p=m()[s[e]];p&&p.push([f,e,r,a]);return a},get:v,listeners:h,context:g,buffer:function(e,t){const r=m();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach((([e,n])=>{s[n]=t,t in r||(r[t]=[])}))},abort:function(){f._aborted=!0,Object.keys(f.backlog).forEach((e=>{delete f.backlog[e]}))},isBuffering:function(e){return!!m()[s[e]]},debugId:r,backlog:l?{}:t&&"object"==typeof t.backlog?t.backlog:{},isolatedBacklog:l};return Object.defineProperty(f,"aborted",{get:()=>{let e=f._aborted||!1;return e||(t&&(e=t.aborted),e)}}),f;function g(e){return e&&e instanceof a.y?e:e?(0,i.I)(e,c,(()=>new a.y(c))):new a.y(c)}function p(e,t){n[e]=h(e).concat(t)}function h(e){return n[e]||[]}function v(t){return d[t]=d[t]||e(f,t)}function m(){return f.backlog}}(void 0,"globalEE"),d=(0,n.Zm)();d.ee||(d.ee=u)},2646:(e,t,r)=>{"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},9908:(e,t,r)=>{"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(7836).ee.get("handle");function i(e,t,r,i,o){o?(o.buffer([e],i),o.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606:(e,t,r)=>{"use strict";r.d(t,{i:()=>o});var n=r(9908);o.on=a;var i=o.handlers={};function o(e,t,r,o){a(o||n.d,i,e,t,r)}function a(e,t,r,i,o){o||(o="feature"),e||(e=n.d);var a=t[o]=t[o]||{};(a[r]=a[r]||[]).push([e,i])}},3878:(e,t,r)=>{"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function o(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>o,jT:()=>n,sp:()=>i})},5607:(e,t,r)=>{"use strict";r.d(t,{W:()=>n});const n=(0,r(9566).bz)()},9566:(e,t,r)=>{"use strict";r.d(t,{LA:()=>s,bz:()=>a});var n=r(6154);const i="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx";function o(e,t){return e?15&e[t]:16*Math.random()|0}function a(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),i.split("").map((e=>"x"===e?o(t,r++).toString(16):"y"===e?(3&o()|8).toString(16):e)).join("")}function s(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,i=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var s=0;s<e;s++)a.push(o(r,i++).toString(16));return a.join("")}},2614:(e,t,r)=>{"use strict";r.d(t,{BB:()=>a,H3:()=>n,g:()=>u,iL:()=>c,tS:()=>s,uh:()=>i,wk:()=>o});const n="NRBA",i="SESSION",o=144e5,a=18e5,s={STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},c={SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},u={OFF:0,FULL:1,ERROR:2}},1863:(e,t,r)=>{"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},944:(e,t,r)=>{"use strict";function n(e,t){"function"==typeof console.debug&&console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t)}r.d(t,{R:()=>n})},5284:(e,t,r)=>{"use strict";r.d(t,{t:()=>c,B:()=>s});var n=r(7836),i=r(6154);const o="newrelic";const a=new Set,s={};function c(e,t){const r=n.ee.get(t);s[t]??={},e&&"object"==typeof e&&(a.has(t)||(r.emit("rumresp",[e]),s[t]=e,a.add(t),function(e={}){try{i.gm.dispatchEvent(new CustomEvent(o,{detail:e}))}catch(e){}}({loaded:!0})))}},8990:(e,t,r)=>{"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},6389:(e,t,r)=>{"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout((()=>{i=clearTimeout(i)}),t)),n||(clearTimeout(i),i=setTimeout((()=>{e.apply(this,r)}),t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},5289:(e,t,r)=>{"use strict";r.d(t,{GG:()=>o,sB:()=>a});var n=r(3878);function i(){return"undefined"==typeof document||"complete"===document.readyState}function o(e,t){if(i())return e();(0,n.sp)("load",e,t)}function a(e){if(i())return e();(0,n.DD)("DOMContentLoaded",e)}},384:(e,t,r)=>{"use strict";r.d(t,{NT:()=>o,US:()=>d,Zm:()=>a,bQ:()=>c,dV:()=>s,nY:()=>u,pV:()=>l});var n=r(6154),i=r(1863);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function a(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function s(){let e=a();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate,CT:n.gm.clearTimeout,XHR:n.gm.XMLHttpRequest,REQ:n.gm.Request,EV:n.gm.Event,PR:n.gm.Promise,MO:n.gm.MutationObserver,FETCH:n.gm.fetch,WS:n.gm.WebSocket}),e}function c(e,t){let r=a();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t}function u(e){let t=a();return t.initializedAgents?.[e]}function d(e,t){a()[e]=t}function l(){return function(){let e=a();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=a();const t=e.init||{};e.init={...t}}(),s(),function(){let e=a();const t=e.loader_config||{};e.loader_config={...t}}(),a()}},2843:(e,t,r)=>{"use strict";r.d(t,{u:()=>i});var n=r(3878);function i(e,t=!1,r,i){(0,n.DD)("visibilitychange",(function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)}),r,i)}},3434:(e,t,r)=>{"use strict";r.d(t,{YM:()=>c});var n=r(7836),i=r(5607);const o="nr@original:".concat(i.W);var a=Object.prototype.hasOwnProperty,s=!1;function c(e,t){return e||(e=n.ee),r.inPlace=function(e,t,n,i,o){n||(n="");const a="-"===n.charAt(0);for(let s=0;s<t.length;s++){const c=t[s],u=e[c];d(u)||(e[c]=r(u,a?c+n:n,i,c,o))}},r.flag=o,r;function r(t,r,n,s,c){return d(t)?t:(r||(r=""),nrWrapper[o]=t,function(e,t,r){if(Object.defineProperty&&Object.keys)try{return Object.keys(e).forEach((function(r){Object.defineProperty(t,r,{get:function(){return e[r]},set:function(t){return e[r]=t,t}})})),t}catch(e){u([e],r)}for(var n in e)a.call(e,n)&&(t[n]=e[n])}(t,nrWrapper,e),nrWrapper);function nrWrapper(){var o,a,d,l;try{a=this,o=[...arguments],d="function"==typeof n?n(o,a):n||{}}catch(t){u([t,"",[o,a,s],d],e)}i(r+"start",[o,a,s],d,c);try{return l=t.apply(a,o)}catch(e){throw i(r+"err",[o,a,e],d,c),e}finally{i(r+"end",[o,a,l],d,c)}}}function i(r,n,i,o){if(!s||t){var a=s;s=!0;try{e.emit(r,n,i,t,o)}catch(t){u([t,r,n,i],e)}s=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function d(e){return!(e&&"function"==typeof e&&e.apply&&!e[o])}},993:(e,t,r)=>{"use strict";r.d(t,{ET:()=>o,p_:()=>i});var n=r(860);const i={ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"},o="log";n.K7.logging},3969:(e,t,r)=>{"use strict";r.d(t,{TZ:()=>n,XG:()=>s,rs:()=>i,xV:()=>a,z_:()=>o});const n=r(860).K7.metrics,i="sm",o="cm",a="storeSupportabilityMetrics",s="storeEventMetrics"},6630:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewEvent},782:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewTiming},6344:(e,t,r)=>{"use strict";r.d(t,{G4:()=>i});var n=r(2614);r(860).K7.sessionReplay;const i={RECORD:"recordReplay",PAUSE:"pauseReplay",REPLAY_RUNNING:"replayRunning",ERROR_DURING_REPLAY:"errorDuringReplay"};n.g.ERROR,n.g.FULL,n.g.OFF},4234:(e,t,r)=>{"use strict";r.d(t,{W:()=>o});var n=r(7836),i=r(1687);class o{constructor(e,t){this.agentIdentifier=e,this.ee=n.ee.get(e),this.featureName=t,this.blocked=!1}deregisterDrain(){(0,i.x3)(this.agentIdentifier,this.featureName)}}},7603:(e,t,r)=>{"use strict";r.d(t,{j:()=>P});var n=r(860),i=r(2555),o=r(3371),a=r(9908),s=r(7836),c=r(1687),u=r(5289),d=r(6154),l=r(944),f=r(3969),g=r(384),p=r(6344);const h=["setErrorHandler","finished","addToTrace","addRelease","addPageAction","setCurrentRouteName","setPageViewName","setCustomAttribute","interaction","noticeError","setUserId","setApplicationVersion","start",p.G4.RECORD,p.G4.PAUSE,"log","wrapLogger"],v=["setErrorHandler","finished","addToTrace","addRelease"];var m=r(1863),b=r(2614),y=r(993);var w=r(2646),A=r(3434);function R(e,t,r,n){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,l.R)(29);const i=function(e){return(e||s.ee).get("logger")}(e),o=(0,A.YM)(i),a=new w.y(s.P);return a.level=n.level,a.customAttributes=n.customAttributes,o.inPlace(t,[r],"wrap-logger-",a),i}function E(){const e=(0,g.pV)();h.forEach((t=>{e[t]=(...r)=>function(t,...r){let n=[];return Object.values(e.initializedAgents).forEach((e=>{e&&e.api?e.exposed&&e.api[t]&&n.push(e.api[t](...r)):(0,l.R)(38,t)})),n.length>1?n:n[0]}(t,...r)}))}const x={};function _(e,t,g=!1){t||(0,c.Ak)(e,"api");const h={};var w=s.ee.get(e),A=w.get("tracer");x[e]=b.g.OFF,w.on(p.G4.REPLAY_RUNNING,(t=>{x[e]=t}));var E="api-",_=E+"ixn-";function N(t,r,n,o){const a=(0,i.Vp)(e);return null===r?delete a.jsAttributes[t]:(0,i.x1)(e,{...a,jsAttributes:{...a.jsAttributes,[t]:r}}),j(E,n,!0,o||null===r?"session":void 0)(t,r)}function T(){}h.log=function(e,{customAttributes:t={},level:r=y.p_.INFO}={}){(0,a.p)(f.xV,["API/log/called"],void 0,n.K7.metrics,w),function(e,t,r={},i=y.p_.INFO){(0,a.p)(f.xV,["API/logging/".concat(i.toLowerCase(),"/called")],void 0,n.K7.metrics,e),(0,a.p)(y.ET,[(0,m.t)(),t,r,i],void 0,n.K7.logging,e)}(w,e,t,r)},h.wrapLogger=(e,t,{customAttributes:r={},level:i=y.p_.INFO}={})=>{(0,a.p)(f.xV,["API/wrapLogger/called"],void 0,n.K7.metrics,w),R(w,e,t,{customAttributes:r,level:i})},v.forEach((e=>{h[e]=j(E,e,!0,"api")})),h.addPageAction=j(E,"addPageAction",!0,n.K7.genericEvents),h.setPageViewName=function(t,r){if("string"==typeof t)return"/"!==t.charAt(0)&&(t="/"+t),(0,o.f)(e).customTransaction=(r||"http://custom.transaction")+t,j(E,"setPageViewName",!0)()},h.setCustomAttribute=function(e,t,r=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof t)||null===t)return N(e,t,"setCustomAttribute",r);(0,l.R)(40,typeof t)}else(0,l.R)(39,typeof e)},h.setUserId=function(e){if("string"==typeof e||null===e)return N("enduser.id",e,"setUserId",!0);(0,l.R)(41,typeof e)},h.setApplicationVersion=function(e){if("string"==typeof e||null===e)return N("application.version",e,"setApplicationVersion",!1);(0,l.R)(42,typeof e)},h.start=()=>{try{(0,a.p)(f.xV,["API/start/called"],void 0,n.K7.metrics,w),w.emit("manual-start-all")}catch(e){(0,l.R)(23,e)}},h[p.G4.RECORD]=function(){(0,a.p)(f.xV,["API/recordReplay/called"],void 0,n.K7.metrics,w),(0,a.p)(p.G4.RECORD,[],void 0,n.K7.sessionReplay,w)},h[p.G4.PAUSE]=function(){(0,a.p)(f.xV,["API/pauseReplay/called"],void 0,n.K7.metrics,w),(0,a.p)(p.G4.PAUSE,[],void 0,n.K7.sessionReplay,w)},h.interaction=function(e){return(new T).get("object"==typeof e?e:{})};const S=T.prototype={createTracer:function(e,t){var r={},i=this,o="function"==typeof t;return(0,a.p)(f.xV,["API/createTracer/called"],void 0,n.K7.metrics,w),g||(0,a.p)(_+"tracer",[(0,m.t)(),e,r],i,n.K7.spa,w),function(){if(A.emit((o?"":"no-")+"fn-start",[(0,m.t)(),i,o],r),o)try{return t.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw A.emit("fn-err",[arguments,this,t],r),t}finally{A.emit("fn-end",[(0,m.t)()],r)}}}};function j(e,t,r,i){return function(){return(0,a.p)(f.xV,["API/"+t+"/called"],void 0,n.K7.metrics,w),i&&(0,a.p)(e+t,[(0,m.t)(),...arguments],r?null:this,i,w),r?void 0:this}}function k(){r.e(296).then(r.bind(r,8778)).then((({setAPI:t})=>{t(e),(0,c.Ze)(e,"api")})).catch((e=>{(0,l.R)(27,e),w.abort()}))}return["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach((e=>{S[e]=j(_,e,void 0,g?n.K7.softNav:n.K7.spa)})),h.setCurrentRouteName=g?j(_,"routeName",void 0,n.K7.softNav):j(E,"routeName",!0,n.K7.spa),h.noticeError=function(t,r){"string"==typeof t&&(t=new Error(t)),(0,a.p)(f.xV,["API/noticeError/called"],void 0,n.K7.metrics,w),(0,a.p)("err",[t,(0,m.t)(),!1,r,!!x[e]],void 0,n.K7.jserrors,w)},d.RI?(0,u.GG)((()=>k()),!0):k(),h}var N=r(9417),T=r(8122);const S={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0},j={};var k=r(5284);const I=e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e};let O=!1;function P(e,t={},r,n){let{init:a,info:c,loader_config:u,runtime:l={},exposed:f=!0}=t;l.loaderType=r;const p=(0,g.pV)();c||(a=p.init,c=p.info,u=p.loader_config),(0,N.xN)(e.agentIdentifier,a||{}),function(e,t){if(!e)throw new Error("All loader-config objects require an agent identifier!");j[e]=(0,T.a)(t,S);const r=(0,g.nY)(e);r&&(r.loader_config=j[e])}(e.agentIdentifier,u||{}),c.jsAttributes??={},d.bv&&(c.jsAttributes.isWorker=!0),(0,i.x1)(e.agentIdentifier,c);const h=(0,N.D0)(e.agentIdentifier),v=[c.beacon,c.errorBeacon];O||(h.proxy.assets&&(I(h.proxy.assets),v.push(h.proxy.assets)),h.proxy.beacon&&v.push(h.proxy.beacon),E(),(0,g.US)("activatedFeatures",k.B),e.runSoftNavOverSpa&&=!0===h.soft_navigations.enabled&&h.feature_flags.includes("soft_nav")),l.denyList=[...h.ajax.deny_list||[],...h.ajax.block_internal?v:[]],l.ptid=e.agentIdentifier,(0,o.V)(e.agentIdentifier,l),e.ee=s.ee.get(e.agentIdentifier),void 0===e.api&&(e.api=_(e.agentIdentifier,n,e.runSoftNavOverSpa)),void 0===e.exposed&&(e.exposed=f),O=!0}},8374:(e,t,r)=>{r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860:(e,t,r)=>{"use strict";r.d(t,{$J:()=>o,K7:()=>n,P3:()=>i});const n={ajax:"ajax",genericEvents:"generic_events",jserrors:"jserrors",logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations",spa:"spa"},i={[n.pageViewEvent]:1,[n.pageViewTiming]:2,[n.metrics]:3,[n.jserrors]:4,[n.spa]:5,[n.ajax]:6,[n.sessionTrace]:7,[n.softNav]:8,[n.sessionReplay]:9,[n.logging]:10,[n.genericEvents]:11},o={[n.pageViewTiming]:"events",[n.ajax]:"events",[n.spa]:"events",[n.softNav]:"events",[n.metrics]:"jserrors",[n.jserrors]:"jserrors",[n.sessionTrace]:"browser/blobs",[n.sessionReplay]:"browser/blobs",[n.logging]:"browser/logs",[n.genericEvents]:"ins"}}},n={};function i(e){var t=n[e];if(void 0!==t)return t.exports;var o=n[e]={exports:{}};return r[e](o,o.exports,i),o.exports}i.m=r,i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,r)=>(i.f[r](e,t),t)),[])),i.u=e=>"nr-rum-1.274.0.min.js",i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="NRBA-1.274.0.PROD:",i.l=(r,n,o,a)=>{if(e[r])e[r].push(n);else{var s,c;if(void 0!==o)for(var u=document.getElementsByTagName("script"),d=0;d<u.length;d++){var l=u[d];if(l.getAttribute("src")==r||l.getAttribute("data-webpack")==t+o){s=l;break}}if(!s){c=!0;var f={296:"sha512-gkYkZDAwQ9PwaDXs2YM+rNIdRej1Ac1mupWobRJ8eahQcXz6/sunGZCKklrzi5kWxhOGRZr2tn0rEKuLTXzfAA=="};(s=document.createElement("script")).charset="utf-8",s.timeout=120,i.nc&&s.setAttribute("nonce",i.nc),s.setAttribute("data-webpack",t+o),s.src=r,0!==s.src.indexOf(window.location.origin+"/")&&(s.crossOrigin="anonymous"),f[a]&&(s.integrity=f[a])}e[r]=[n];var g=(t,n)=>{s.onerror=s.onload=null,clearTimeout(p);var i=e[r];if(delete e[r],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(n))),t)return t(n)},p=setTimeout(g.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=g.bind(null,s.onerror),s.onload=g.bind(null,s.onload),c&&document.head.appendChild(s)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.p="https://js-agent.newrelic.com/",(()=>{var e={840:0,374:0};i.f.j=(t,r)=>{var n=i.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else{var o=new Promise(((r,i)=>n=e[t]=[r,i]));r.push(n[2]=o);var a=i.p+i.u(t),s=new Error;i.l(a,(r=>{if(i.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var o=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;s.message="Loading chunk "+t+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,n[1](s)}}),"chunk-"+t,t)}};var t=(t,r)=>{var n,o,[a,s,c]=r,u=0;if(a.some((t=>0!==e[t]))){for(n in s)i.o(s,n)&&(i.m[n]=s[n]);if(c)c(i)}for(t&&t(r);u<a.length;u++)o=a[u],i.o(e,o)&&e[o]&&e[o][0](),e[o]=0},r=self["webpackChunk:NRBA-1.274.0.PROD"]=self["webpackChunk:NRBA-1.274.0.PROD"]||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),(()=>{"use strict";i(8374);var e=i(944),t=i(6344),r=i(9566);class n{agentIdentifier;constructor(e=(0,r.LA)(16)){this.agentIdentifier=e}#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}addPageAction(e,t){return this.#e("addPageAction",e,t)}setPageViewName(e,t){return this.#e("setPageViewName",e,t)}setCustomAttribute(e,t,r){return this.#e("setCustomAttribute",e,t,r)}noticeError(e,t){return this.#e("noticeError",e,t)}setUserId(e){return this.#e("setUserId",e)}setApplicationVersion(e){return this.#e("setApplicationVersion",e)}setErrorHandler(e){return this.#e("setErrorHandler",e)}addRelease(e,t){return this.#e("addRelease",e,t)}log(e,t){return this.#e("log",e,t)}}class o extends n{#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}start(){return this.#e("start")}finished(e){return this.#e("finished",e)}recordReplay(){return this.#e(t.G4.RECORD)}pauseReplay(){return this.#e(t.G4.PAUSE)}addToTrace(e){return this.#e("addToTrace",e)}setCurrentRouteName(e){return this.#e("setCurrentRouteName",e)}interaction(){return this.#e("interaction")}wrapLogger(e,t,r){return this.#e("wrapLogger",e,t,r)}}var a=i(860),s=i(9417);const c=Object.values(a.K7);function u(e){const t={};return c.forEach((r=>{t[r]=function(e,t){return!0===(0,s.gD)(t,"".concat(e,".enabled"))}(r,e)})),t}var d=i(7603);var l=i(1687),f=i(4234),g=i(5289),p=i(6154),h=i(384);const v=e=>p.RI&&!0===(0,s.gD)(e,"privacy.cookies_enabled");function m(e){return!!(0,h.dV)().o.MO&&v(e)&&!0===(0,s.gD)(e,"session_trace.enabled")}var b=i(6389);class y extends f.W{constructor(e,t,r=!0){super(e.agentIdentifier,t),this.auto=r,this.abortHandler=void 0,this.featAggregate=void 0,this.onAggregateImported=void 0,!1===e.init[this.featureName].autoStart&&(this.auto=!1),this.auto?(0,l.Ak)(e.agentIdentifier,t):this.ee.on("manual-start-all",(0,b.J)((()=>{(0,l.Ak)(e.agentIdentifier,this.featureName),this.auto=!0,this.importAggregator(e)})))}importAggregator(t,r={}){if(this.featAggregate||!this.auto)return;let n;this.onAggregateImported=new Promise((e=>{n=e}));const o=async()=>{let o;try{if(v(this.agentIdentifier)){const{setupAgentSession:e}=await i.e(296).then(i.bind(i,3861));o=e(t)}}catch(t){(0,e.R)(20,t),this.ee.emit("internal-error",[t]),this.featureName===a.K7.sessionReplay&&this.abortHandler?.()}try{if(t.sharedAggregator)await t.sharedAggregator;else{t.sharedAggregator=i.e(296).then(i.bind(i,9337));const{EventAggregator:e}=await t.sharedAggregator;t.sharedAggregator=new e}if(!this.#t(this.featureName,o))return(0,l.Ze)(this.agentIdentifier,this.featureName),void n(!1);const{lazyFeatureLoader:e}=await i.e(296).then(i.bind(i,6103)),{Aggregate:a}=await e(this.featureName,"aggregate");this.featAggregate=new a(t,r),n(!0)}catch(t){(0,e.R)(34,t),this.abortHandler?.(),(0,l.Ze)(this.agentIdentifier,this.featureName,!0),n(!1),this.ee&&this.ee.abort()}};p.RI?(0,g.GG)((()=>o()),!0):o()}#t(e,t){switch(e){case a.K7.sessionReplay:return m(this.agentIdentifier)&&!!t;case a.K7.sessionTrace:return!!t;default:return!0}}}var w=i(6630);class A extends y{static featureName=w.T;constructor(e,t=!0){super(e,w.T,t),this.importAggregator(e)}}var R=i(9908),E=i(2843),x=i(3878),_=i(782),N=i(1863);class T extends y{static featureName=_.T;constructor(e,t=!0){super(e,_.T,t),p.RI&&((0,E.u)((()=>(0,R.p)("docHidden",[(0,N.t)()],void 0,_.T,this.ee)),!0),(0,x.sp)("pagehide",(()=>(0,R.p)("winPagehide",[(0,N.t)()],void 0,_.T,this.ee))),this.importAggregator(e))}}var S=i(3969);class j extends y{static featureName=S.TZ;constructor(e,t=!0){super(e,S.TZ,t),this.importAggregator(e)}}new class extends o{constructor(t,r){super(r),p.gm?(this.features={},(0,h.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(t.features||[]),this.desiredFeatures.add(A),this.runSoftNavOverSpa=[...this.desiredFeatures].some((e=>e.featureName===a.K7.softNav)),(0,d.j)(this,t,t.loaderType||"agent"),this.run()):(0,e.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}run(){try{const t=u(this.agentIdentifier),r=[...this.desiredFeatures];r.sort(((e,t)=>a.P3[e.featureName]-a.P3[t.featureName])),r.forEach((r=>{if(!t[r.featureName]&&r.featureName!==a.K7.pageViewEvent)return;if(this.runSoftNavOverSpa&&r.featureName===a.K7.spa)return;if(!this.runSoftNavOverSpa&&r.featureName===a.K7.softNav)return;const n=function(e){switch(e){case a.K7.ajax:return[a.K7.jserrors];case a.K7.sessionTrace:return[a.K7.ajax,a.K7.pageViewEvent];case a.K7.sessionReplay:return[a.K7.sessionTrace];case a.K7.pageViewTiming:return[a.K7.pageViewEvent];default:return[]}}(r.featureName).filter((e=>!(e in this.features)));n.length>0&&(0,e.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)}))}catch(t){(0,e.R)(22,t);for(const e in this.features)this.features[e].abortHandler?.();const r=(0,h.Zm)();delete r.initializedAgents[this.agentIdentifier]?.api,delete r.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return r.ee.get(this.agentIdentifier).abort(),!1}}}({features:[A,T,j],loaderType:"lite"})})()})();</script> <!-- Google Fonts--> <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=PT+Serif:400,700|Roboto:300,400,700|Roboto+Condensed:300,400,400i,700|Lora:400,400i,700,700i|Zilla+Slab:400,400i,500,600,700,700i|Oswald:200, 300, 400,500,600,700|Permanent+Marker:400&display=swap"> <link rel="stylesheet" type="text/css" href="/dist/collection-article.css"></head> <body class="template-collection-article draper-enabled"> <noscript> <iframe src="https://www.googletagmanager.com/ns.html?id=GTM-P59JVDP" height="0" width="0" style="display:none;visibility:hidden"></iframe> </noscript> <header class="component navigation collection-nav collection-article sticky-ad-active" data-section-name="AI"> <nav class="main"> <div class="container primary"> <div class="container-inner left"> <button id="button-in-unless" class="menu-btn" title="Menu" aria-label="Menu"> <div class="menu-btn-box"> <div class="menu-btn-inner"></div> </div> </button> <div class="logo" id=""> <a href="/" data-action="primary-nav-logo" aria-label="Logo"> <svg role="img" itemprop="logo" width="90px" height="100%" preserveAspectRatio="xMinYMin meet" viewBox="0 0 98 32" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <title>TIME logo</title> <path fill="#e90606" d="M3 2.36h23.67v5.4h-.43l.05-3.46h-9.35v24.36h2.7v.8H10.4v-.8h2.5V4.3H3.45v3.46H3v-5.4zM27.8 2.36h9.3v.75h-2.65v25.56h2.64v.8h-9.3v-.8h2.7V3.1h-2.7v-.74zM45.3 2.3h1.78l8.7 20.9 8.64-20.9h1.73L71 28.66h2.44v.8h-9.6v-.8h2.47l-3-16.85-7.68 17.67h-1.8l-7.6-17.66-3.2 16.86h2.33l-.05.8h-7.07l.05-.8h2.16L45.3 2.3zM74.25 2.36h20.47l.05 5.35h-.37l-.17-3.3-13.4-.15v10.7h11.4l.27-2.5h.5c-.12 2.28-.12 4.5 0 6.76h-.5l-.27-2.58h-11.4V27.7h13.9l.04-3.68h.38v5.45h-20.9v-.76l2.7-.04V3.16l-2.7-.05v-.74z"/> </svg> </a> </div> </div> <div class="container-inner right"> <div class="primary-links" data-tracking-zone="nav"> <ul class="primary-text-links"> <li class="heading-list menu-list-item subscribe-link-container visible" data-action="primary-nav-pos-6"> <div> <a href="/subscribe-header-time" class="subscribe-link subx_track_952 link-and-photo" data-location="header-nav" data-key="qobuskf@g" data-event="2"> <span class="desktop"> Subscribe </span> <span class="mobile">Subscribe</span> </a> </div> </li> </ul> </div> <div class="collection-title desktop-only" data-collection-name="The Best Inventions of 2023"> <div class="collection-title__inner"> <div class="title"> <a href="/collection/best-inventions-2023">The Best Inventions of 2023</a> </div> </div> </div> <div class="buttons " data-tracking-zone="search"> <button class="icon search js-activate" data-action="primary-nav-pos-1" title="Search" aria-label="Search"><span class="icon icon-search utility-icon color-ribbon-primary-text " > <svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24" role="img" aria-hidden="true" tabindex="-1"><path fill="#685F55" d="M14.1 14.751a5.53 5.53 0 1 1 .651-.651L19 18.348l-.652.652-4.248-4.249zm-3.557.4a4.608 4.608 0 1 0 0-9.216 4.608 4.608 0 0 0 0 9.215z"/></svg> </span></button> <button class="icon search mobile-only"><span class="icon icon-search utility-icon color-ribbon-primary-text " > <svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24" role="img" aria-label="Search" tabindex="-1"><path fill="#685F55" d="M14.1 14.751a5.53 5.53 0 1 1 .651-.651L19 18.348l-.652.652-4.248-4.249zm-3.557.4a4.608 4.608 0 1 0 0-9.216 4.608 4.608 0 0 0 0 9.215z"/></svg> </span></button> <div class="search-container"> <form action="/search" name="search" method="GET"> <input name="q" type="text" class="search-field" value="" placeholder="Search..." title="Search..." aria-label="Search..."> </form> <button class="icon close close-search" data-action="primary-nav-close-search" title="Close Search" aria-label="Close Search"><span class="icon icon-close utility-icon color-ribbon-primary-text " > <svg width="14" height="14" viewBox="0 0 14 14" xmlns="http://www.w3.org/2000/svg" role="img" aria-hidden="true" tabindex="-1"><title>Close</title><path fill="#F0F1F3" d="M14 1.41L12.59 0 7 5.59 1.41 0 0 1.41 5.59 7 0 12.59 1.41 14 7 8.41 12.59 14 14 12.59 8.41 7z"/></svg> </span></button> </div> </div> </div> </div> </nav> <div class="nav-placeholder"> </div> <nav data-tracking-zone="nav" class="menu"> <section class="container"> <div class="account-mobile hidden"> <div class="button-container"> <button class="subscribe"> <a rel="nofollow" class="subscribe-link" href="/subscribe-hamburger-time" data-location="hamburger button"> Subscribe </a> </button> </div> </div> <section class="menu-section"> <label class="menu-label">Sections</label> <ul> <li class="menu-item"> <a href="https://time.com" > Home </a> </li> <li class="menu-item"> <a href="https://time.com/section/us/" > U.S. </a> </li> <li class="menu-item"> <a href="https://time.com/section/politics/" > Politics </a> </li> <li class="menu-item"> <a href="https://time.com/section/world/" > World </a> </li> <li class="menu-item"> <a href="https://time.com/section/health/" > Health </a> </li> <li class="menu-item"> <a href="https://time.com/section/climate/" > Climate </a> </li> <li class="menu-item"> <a href="https://time.com/charter/" > Future of Work by Charter </a> </li> <li class="menu-item"> <a href="https://time.com/section/business/" > Business </a> </li> <li class="menu-item"> <a href="https://time.com/section/tech/" > Tech </a> </li> <li class="menu-item"> <a href="https://time.com/section/entertainment/" > Entertainment </a> </li> <li class="menu-item"> <a href="https://time.com/section/ideas/" > Ideas </a> </li> <li class="menu-item"> <a href="https://time.com/section/science/" > Science </a> </li> <li class="menu-item"> <a href="https://time.com/section/history/" > History </a> </li> <li class="menu-item"> <a href="https://time.com/section/sports/" > Sports </a> </li> <li class="menu-item"> <a href="https://time.com/magazine" > Magazine </a> </li> <li class="menu-item"> <a href="https://time.com/time2030" > TIME 2030 </a> </li> <li class="menu-item"> <a href="https://time.com/collection/next-generation-leaders/" > Next Generation Leaders </a> </li> <li class="menu-item"> <a href="https://time.com/collection/time100-leadership-series/" > TIME100 Leadership Series </a> </li> <li class="menu-item"> <a href="https://time.com/studios/" > TIME Studios </a> </li> <li class="menu-item"> <a href="https://time.com/collection/video/" > Video </a> </li> <li class="menu-item"> <a href="https://time.com/collection/time100-talks/" > TIME100 Talks </a> </li> <li class="menu-item"> <a href="https://time.com/collection/timepieces-nft/" > TIMEPieces </a> </li> <li class="menu-item"> <a href="https://time.com/vault/" > The TIME Vault </a> </li> <li class="menu-item"> <a href="https://time.com/collection/live-well/" > TIME for Health </a> </li> <li class="menu-item"> <a href="https://www.timeforkids.com" > TIME for Kids </a> </li> <li class="menu-item"> <a href="https://www.timeedge.com/login" > TIME Edge </a> </li> <li class="menu-item"> <a href="https://www.co2.com/" > TIMECO2 </a> </li> <li class="menu-item"> <a href="https://redborder.time.com/home/" > Red Border: Branded Content by TIME </a> </li> <li class="menu-item"> <a href="https://time.com/coupons" > Coupons </a> </li> <li class="menu-item"> <a href="https://time.com/personal-finance/" > Personal Finance by TIME Stamped </a> </li> <li class="menu-item"> <a href="https://time.com/shopping/" > Shopping by TIME Stamped </a> </li> </ul> </section> <section class="menu-section"> <label class="menu-label">Join Us</label> <ul> <li class="menu-item"> <a href="https://time.com/newsletters/?source=time_nav" > Newsletters </a> </li> <li class="menu-item"> <a class="subx_track_952 subscribe-link" href="https://time.com/subscribe-hamburger-time" data-key="qobuskf@g" data-event="3" data-location="hamburger" > Subscribe </a> </li> <li class="menu-item"> <a href="https://get.time.com/servlet/OrdersGateway?cds_mag_code=TIM&cds_page_id=255457&utm_%5B…%5Dketing+site-reg-paid+all&utm_content=bau+gift22+na+na+na+na+na" > Give a Gift </a> </li> <li class="menu-item"> <a href="https://get.time.com/pubs/MX/TIM/TIME_Single_Issue_Store_50_Discount_Page2_Mar.jsp?cds_page_id=265727&cds_mag_code=TIM&id=1681921547077&lsid=31091125470044351&vid=1&cds_response_key=SCCGSTR04" > Shop the TIME Store </a> </li> <li class="menu-item"> <a href="https://timecoverstore.com/" > TIME Cover Store </a> </li> <li class="menu-item"> <a href="https://geo.ema.gs/time_digital" > Digital Magazine </a> </li> </ul> </section> <section class="menu-section"> <label class="menu-label">Customer Care</label> <ul> <li class="menu-item"> <a href="https://support.time.com/" > US & Canada </a> </li> <li class="menu-item"> <a href="https://support.time.com/" > Global Help Center </a> </li> </ul> </section> <section class="menu-section"> <label class="menu-label">Reach Out</label> <ul> <li class="menu-item"> <a href="https://time.com/longform/join-time/" > Careers </a> </li> <li class="menu-item"> <a href="https://time.com/section/press-room/" > Press Room </a> </li> <li class="menu-item"> <a href="mailto:letters@time.com" > Contact the Editors </a> </li> <li class="menu-item"> <a href="https://time.com/mediakit" > Media Kit </a> </li> <li class="menu-item"> <a href="https://www.parsintl.com/publication/time" > Reprints and Permissions </a> </li> </ul> </section> <section class="menu-section"> <label class="menu-label">More</label> <ul> <li class="menu-item"> <a href="https://time.com/longform/about-time/" > About Us </a> </li> <li class="menu-item"> <a href="https://time.com/privacy/privacy_policy.html" > Privacy Policy </a> </li> <li class="menu-item"> <a href="https://time.com/privacy/privacy_policy.html#_Toc26698205" > Your Privacy Rights </a> </li> <li class="menu-item"> <a href="https://time.com/privacy/privacy_terms_service.html" > Terms of Use </a> </li> <li class="menu-item"> <a href="https://time.com/modern-slavery-statement/" > Modern Slavery Statement </a> </li> <li class="menu-item"> <a href="https://time.com/html-sitemap/" > Site Map </a> </li> </ul> </section> <section class="menu-section"> <label class="menu-label">Connect with Us</label> <ul class="social-items"> <li class="social-items__item"> <span class="icon icon-facebook-circle-stroke social-stroke-icon color-accent margin-4-right " data-social-service="Facebook" > <a href="https://www.facebook.com/time" class="display-block " target="_blank" rel="noopener" title="Facebook share (opens in a new window)" aria-label="Share on Facebook (opens in a new window)" > <svg width="36" height="36" xmlns="http://www.w3.org/2000/svg" role="img" aria-hidden="true" tabindex="-1"><g fill-rule="evenodd" fill="none" stroke="null"><path d="M32.95 18c0 8.258-6.693 14.95-14.95 14.95S3.05 26.26 3.05 18 9.742 3.05 18 3.05 32.95 9.74 32.95 18" stroke-width="2" stroke="#B7B4B4"/><path d="M19.718 13.698c.433-.014.866-.004 1.3-.004h.18V11.57c-.232-.023-.473-.054-.716-.065-.445-.02-.89-.04-1.336-.03-.68.013-1.323.17-1.884.55-.644.435-.998 1.05-1.132 1.773-.057.3-.07.607-.08.912-.01.477-.002.953 0 1.43v.18h-2.16v2.373h2.147v5.966h2.622V18.7h2.134l.33-2.385h-.482c-.608.002-2.004 0-2.004 0s.006-1.177.02-1.687c.02-.7.46-.912 1.057-.932" fill="#B7B4B4"/></g></svg> </a> </span> </li> <li class="social-items__item"> <span class="icon icon-instagram-circle-stroke social-stroke-icon color-accent margin-4-right " data-social-service="Instagram" > <a href="https://www.instagram.com/time/?hl=en" class="display-block " target="_blank" rel="noopener" title="Instagram share (opens in a new window)" aria-label="Share on Instagram (opens in a new window)" > <svg width="36" height="36" xmlns="http://www.w3.org/2000/svg" role="img" aria-hidden="true" tabindex="-1"><g fill-rule="evenodd" fill="none" stroke="null"><path d="M32.95 18c0 8.257-6.693 14.95-14.95 14.95S3.05 26.258 3.05 18 9.742 3.05 18 3.05 32.95 9.742 32.95 18" stroke-width="2" stroke="#B7B4B4"/><path d="M22.624 22c0 .344-.28.624-.623.624h-8.47c-.342 0-.62-.28-.62-.623v-5.13h1.218c-.07.29-.104.59-.104.9 0 2.07 1.677 3.75 3.75 3.75 2.07 0 3.75-1.68 3.75-3.75 0-.306-.038-.604-.108-.89h1.22V22zm-7.137-5.13c.356-.907 1.24-1.552 2.274-1.552 1.04 0 1.92.645 2.28 1.553.11.28.17.58.17.9 0 1.347-1.1 2.444-2.44 2.444-1.345 0-2.442-1.097-2.442-2.443 0-.314.06-.615.17-.89zm4.916-3.576c0-.19.154-.344.344-.344h1.49c.19 0 .344.154.344.344v1.49c0 .19-.15.344-.34.344h-1.49c-.19 0-.34-.154-.34-.344v-1.49zM22 11.592h-8.478c-1.065 0-1.93.865-1.93 1.93v8.48c0 1.064.865 1.93 1.93 1.93h8.48c1.065 0 1.93-.866 1.93-1.93v-8.48c0-1.065-.865-1.93-1.93-1.93z" fill="#B7B4B4"/></g></svg> </a> </span> </li> <li class="social-items__item"> <span class="icon icon-twitter-circle-stroke social-stroke-icon color-accent margin-4-right " data-social-service="Twitter" > <a href="https://twitter.com/time" class="display-block " target="_blank" rel="noopener" title="Twitter share (opens in a new window)" aria-label="Share on Twitter (opens in a new window)" > <svg role="img" aria-hidden="true" width="36" height="36" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M32.977 18C32.977 26.272 26.272 32.976 18 32.976C9.728 32.976 3.023 26.272 3.023 18C3.023 9.728 9.728 3.024 18 3.024C26.272 3.024 32.977 9.728 32.977 18Z" stroke="#e90606" stroke-width="2"></path><path d="M18.5899 17.7781L22.712 13H21.7352L18.1559 17.1487L15.2972 13H12L16.323 19.2736L12 24.2842H12.9769L16.7566 19.903L19.7757 24.2842H23.0729L18.5896 17.7781H18.5899ZM17.2519 19.3289L16.8139 18.7042L13.3288 13.7333H14.8293L17.6417 17.745L18.0798 18.3697L21.7356 23.5843H20.2352L17.2519 19.3292V19.3289Z" fill="#e90606"></path></svg> </a> </span> </li> <li class="social-items__item"> <span class="icon icon-pinterest-circle-stroke social-stroke-icon color-accent " data-social-service="Pinterest" > <a href="https://www.pinterest.com/timemagazine" class="display-block " target="_blank" rel="noopener" title="Pinterest share (opens in a new window)" aria-label="Share on Pinterest (opens in a new window)" > <svg width="36" height="36" xmlns="http://www.w3.org/2000/svg" role="img" aria-hidden="true" tabindex="-1"><g fill-rule="evenodd" fill="none" stroke="null"><path d="M32.976 18c0 8.272-6.705 14.976-14.976 14.976-8.27 0-14.976-6.704-14.976-14.976C3.024 9.728 9.73 3.024 18 3.024S32.976 9.728 32.976 18" stroke-width="2" stroke="#B7B4B4"/><path d="M17.162 20.54c-.012.038-.022.072-.03.105-.505 1.976-.562 2.415-1.08 3.332-.247.437-.525.85-.834 1.246-.034.044-.067.102-.137.088-.07-.01-.08-.08-.08-.14-.08-.6-.13-1.2-.11-1.81.03-.79.13-1.06 1.15-5.34.02-.06 0-.12-.02-.18-.24-.65-.29-1.32-.08-2 .46-1.46 2.12-1.57 2.41-.36.18.75-.292 1.72-.654 3.16-.3 1.19 1.1 2.04 2.298 1.17 1.106-.8 1.534-2.72 1.45-4.08-.16-2.71-3.13-3.29-5.02-2.42-2.16 1-2.65 3.68-1.675 4.91.126.157.22.25.18.41-.06.244-.117.49-.186.735-.05.184-.2.25-.384.175-.36-.148-.66-.377-.9-.678-.83-1.026-1.07-3.057.03-4.776 1.212-1.906 3.47-2.676 5.534-2.443 2.468.28 4.02 1.964 4.316 3.873.13.87.035 3.012-1.186 4.53-1.404 1.74-3.68 1.854-4.73.785-.08-.08-.146-.18-.225-.272" fill="#B7B4B4"/></g></svg> </a> </span> </li> </ul> </section> </section> </nav> <div class="menu-overlay"></div> <div class="component adhesion-ad mobile-ad"> <div class="adhesion-ad-container"> <div id='stickyfooter-ad-1' class='ad ad-container ad-wrapper mobile-ad' role='complementary' aria-hidden='true' > </div> </div> </div> <div class="ad-wrapper outer tablet-ad desktop-ad mobile-ad full-column"> <div id='leaderboard-ad-1' class='ad ad-container ad-wrapper ' role='complementary' aria-hidden='true' > </div> </div> </header> <div class="container-full-width single-column "> <div class="inner-container"> <main class="content collection-article clearfix" data-section-name="AI"> <meta content="https://time.com/best-inventions-2023/6326992/dedrone-city-wide-drone-detection/"> <div class="sponsorship-div margin-20-top"> <div id='sponsorshiplogo1' class='ad ad-container ad-wrapper ' role='complementary' aria-hidden='true' > </div></div> <div class="collection-name"> <span> <a href="/collection/best-inventions-2023"> <svg width="15px" height="11px" viewBox="0 0 15 11" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <g id="Draft-6" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"> <g id="Desktop-Headline-Text-Copy-2" transform="translate(-659.000000, -226.000000)" stroke="#000000" stroke-width="1.5"> <g id="arrow" transform="translate(645.000000, 211.000000)"> <g id="Group-4" transform="translate(15.000000, 13.000000)"> <g id="Group" transform="translate(0.000000, 2.000000)"> <polyline id="Path-3" transform="translate(5.500000, 5.500000) rotate(45.000000) translate(-5.500000, -5.500000) " points="2 2 2 9 9 9"></polyline> <line x1="1" y1="5.5" x2="13" y2="5.5" id="Line" stroke-linecap="square"></line> </g> </g> </g> </g> </g> </svg> <span class="button-text">The Best Inventions of 2023</span> <hr /> </a> </span> </div> <div class="article-top"> <div class="article-header text-align-center padding-24-bottom "> <!-- Headline --> <div class="intro article-info "> <a href="https://api.time.com/wp-admin/post.php?post=6326992&action=edit" class="component edit-link " target="_blank" title="Edit link" aria-label="Edit link"> <svg xmlns="http://www.w3.org/2000/svg" width="13" height="9" viewBox="0 0 13 9" role="img" aria-hidden="true" tabindex="-1"> <path fill="#929499" d="M212.759918,28 L205.220444,34.8496054 L205,36.6666667 L206.993876,36.4618019 L214.533333,29.6121965 L212.759918,28 L212.759918,28 Z M209.622222,35.8 C209.462669,35.8 209.333333,35.9940033 209.333333,36.2333333 C209.333333,36.4726633 209.462669,36.6666667 209.622222,36.6666667 L217.711111,36.6666667 C217.870664,36.6666667 218,36.4726633 218,36.2333333 C218,35.9940033 217.870664,35.8 217.711111,35.8 L209.622222,35.8 L209.622222,35.8 Z" transform="translate(-205 -28)"/> </svg> </a> <h1 class="headline heading-content margin-8-top">Eyes in the Skies</h1> <h2 class="margin-0-top secondary-title">Dedrone City-Wide Drone Detection</h2> </div> </div> </div> <div class="article-content"> <!-- Lead Media --> <div class="partial lead-image"> <div class="image-and-burst"> <a href="https://api.time.com/wp-admin/post.php?post=6328384&action=edit" class="component edit-link " target="_blank" title="Edit link" aria-label="Edit link"> <svg xmlns="http://www.w3.org/2000/svg" width="13" height="9" viewBox="0 0 13 9" role="img" aria-hidden="true" tabindex="-1"> <path fill="#929499" d="M212.759918,28 L205.220444,34.8496054 L205,36.6666667 L206.993876,36.4618019 L214.533333,29.6121965 L212.759918,28 L212.759918,28 Z M209.622222,35.8 C209.462669,35.8 209.333333,35.9940033 209.333333,36.2333333 C209.333333,36.4726633 209.462669,36.6666667 209.622222,36.6666667 L217.711111,36.6666667 C217.870664,36.6666667 218,36.4726633 218,36.2333333 C218,35.9940033 217.870664,35.8 217.711111,35.8 L209.622222,35.8 L209.622222,35.8 Z" transform="translate(-205 -28)"/> </svg> </a> <div class="component hero" style="max-width:2400px;"> <div class="partial figure"> <figure class="layout-shift-fix-base" style="padding-top:64.75%;"> <a href="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-city-wide.jpg" tabindex="-1" aria-hidden="true"> <picture> <source media="(max-width: 479px)" srcset="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-city-wide.jpg?quality=85&w=479, https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-city-wide.jpg?quality=85&w=958 2x"> <source media="(min-width: 480px) and (max-width: 767px)" srcset="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-city-wide.jpg?quality=85&w=767, https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-city-wide.jpg?quality=85&w=1534 2x"> <source media="(min-width: 768px)" srcset="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-city-wide.jpg?quality=85&w=800, https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-city-wide.jpg?quality=85&w=1600 2x"> <img src="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-city-wide.jpg?quality=85&w=2400" loading="lazy" title="best-inventions-2023-city-wide" alt="" class="fix-layout-shift" fetchpriority="high"/> </picture> </a> </figure> <div class="image-wrap-container clearfix" style="max-width:2400px;"> </div> </div> </div> </div> </div> <!-- Author and Date --> <div class="author scale-12 padded margin-24-tb clearfix"> <div class="author-text" data-tracking-zone="author"> <div class="padding-8-right author-byline"> By <a class="bold author-name" href="/author/chris-stokel-walker/"> Chris Stokel-Walker </a> </div> <div class="timestamp published-date padding-12-left"> <time datetime="2023-10-24T11:00:35.000Z">October 24, 2023 7:00 AM EDT</time> </div> </div> </div> <div class="affiliateLinkdisclaimer"> These are independent reviews of the products mentioned, but TIME receives a commission when purchases are made through affiliate links at no additional cost to the purchaser. </div> <!-- Article Content --> <div id="article-body" class="article content body clearfix" data-tracking-zone="body"> <div class="padded"> <p><span role="presentation" class="dropcap">D</span>rones can be as disruptive as they are beneficial. Dedrone’s City-Wide Drone Detection product throws a virtual shield around a geographical area, warning law enforcement within seconds if a drone has entered the designated airspace. Dedrone tracks a proprietary blend of signals from drones, including radio frequency, ADS-B data (also used in planes), and RemoteID beacons, to identify the location of incursions. Mary-Lou Smulders, the company’s chief marketing officer, compares it to an air traffic control system for drones—something that didn’t previously exist. Customers include Con Edison, which is using it to protect its infrastructure; Barcelona’s police force; and an unspecified number of airports. </p> <div class="component inline-article-recirc"> <div class="title"> <div class="heading heading-6">More Must-Reads from TIME</div> <hr class="line-decorative"> </div> <ul> <li>Why <a href="https://time.com/7175758/hispanic-men-us-election-trump/?utm_source=roundup&utm_campaign=20230202"><strong>Trump’s Message</strong></a> Worked on Latino Men</li> <li>What Trump’s Win Could <a href="https://time.com/7176549/what-donald-trump-win-could-mean-for-housing/?utm_source=roundup&utm_campaign=20230202"><strong>Mean for Housing</strong></a></li> <li>The <a href="https://time.com/collection/must-read-books-2024/?utm_source=roundup&utm_campaign=20230202"><strong>100 Must-Read Books</strong></a> of 2024</li> <li>Sleep Doctors <a href="https://time.com/7175972/sleep-doctors-best-advice/?utm_source=roundup&utm_campaign=20230202"><strong>Share the 1 Tip</strong></a> That’s Changed Their Lives</li> <li>Column: Let’s <a href="https://time.com/7176684/bring-back-romance-essay/?utm_source=roundup&utm_campaign=20230202"><strong>Bring Back Romance</strong></a></li> <li>What It’s Like to Have <a href="https://api.time.com/wp-admin/edit.php?page=time-add-inline-article-recirc?utm_source=roundup&utm_campaign=20230202"><strong>Long COVID</strong></a> As a Kid</li> <li>FX’s <a href="https://time.com/7174152/say-nothing-review-fx/?utm_source=roundup&utm_campaign=20230202"><strong><i>Say Nothing</i> Is the Must-Watch</strong></a> Political Thriller of 2024</li> <li><a href="https://time.com/7174932/merle-bombardieri-profile-baby-decision-book/?utm_source=roundup&utm_campaign=20230202"><strong>Merle Bombardieri</strong></a> Is Helping People Make the Baby Decision</li> </ul> </div> <p class="author-feedback-text"><strong>Contact us</strong> at <a href="mailto:letters@time.com?subject=(READER FEEDBACK) Eyes in the Skies&body=https%3A%2F%2Ftime.com%2Fcollection-post%2F6326992%2Fdedrone-city-wide-drone-detection%2F" target="_self" rel="noopener noreferrer">letters@time.com</a>.</p> <div id='inline-ad-1' class='ad ad-container ad-wrapper ' role='complementary' aria-hidden='true' > </div> </div> </div> <!-- Generic Page Content --> <div class="article-bottom padding-12-tb padded"> <div class="article-bottom-ad"> <div id='article-bottom-ad-desktop' class='ad ad-container ad-wrapper desktop-ad tablet-ad desktop-only x2' role='complementary' aria-hidden='true' > </div> </div> <div class="social-share-hed padding-12-top margin-0-auto">SHARE THIS STORY</div> <div class="padding-32-bottom" data-tracking-zone="footer"> <div class="component share "> <div class="social-container display-flex"> <span class="icon icon-facebook-circle-solid social-icon padding-8-right color-white " data-social-service="facebook" > <a href="https://www.facebook.com/sharer/sharer.php?u=https://time.com/collection/best-inventions-2023/6326992/dedrone-city-wide-drone-detection/%3Futm_source=facebook%26utm_medium=social%26utm_campaign=social-share-article%26utm-term=tech" class="display-block component popup" title="facebook share" aria-label="Share on facebook" > <svg width="32" height="32" viewBox="0 0.75 32 32" xmlns="http://www.w3.org/2000/svg" role="img" aria-hidden="true" tabindex="-1"><g fill="none" fill-rule="evenodd"><path d="M32 16.792c0 8.837-7.164 16-16 16-8.837 0-16-7.163-16-16 0-8.838 7.163-16 16-16 8.836 0 16 7.162 16 16" fill="#4C76BE"/><path d="M18.625 11.493c.5-.015 1.001-.004 1.504-.004h.206V9.105c-.267-.024-.546-.06-.827-.072-.513-.02-1.028-.044-1.542-.034-.785.015-1.528.19-2.177.616-.744.49-1.152 1.178-1.307 1.99a6.262 6.262 0 0 0-.091 1.023c-.015.534-.004 1.069-.002 1.604v.2h-2.493v2.663h2.478v6.692h3.028v-6.68h2.47l.38-2.676h-.555c-.702.003-2.315 0-2.315 0s.007-1.32.024-1.892c.024-.784.533-1.023 1.22-1.046" fill="#FFF"/></g></svg> </a> </span> <span class="icon icon-twitter-circle-solid social-icon padding-8-right color-white " data-social-service="twitter" > <a href="https://twitter.com/intent/tweet?text=Find%20out%20why%20Dedrone%20City-Wide%20Drone%20Detection%20is%20one%20of%20TIME's%20200%20best%20inventions%20of%202023%20https://ti.me/49hEu1I" class="display-block component popup" target="_blank" rel="noopener" title="twitter share" aria-label="Share on twitter" > <svg width="32" height="32" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg" role="img" aria-hidden="true" tabindex="-1"> <g fill="none" fill-rule="evenodd"> <path d="M16 0C24.837 0 32 7.163 32 16c0 8.837-7.163 16-16 16C7.163 32 0 24.837 0 16 0 7.163 7.163 0 16 0z" fill="#4C76BE"></path> <path d="M18.244 3.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z" fill="#FFF" transform="translate(8.5 8.5) scale(0.625)"></path> </g> </svg> </a> </span> <span class="icon icon-email-circle-solid social-icon padding-8-right color-white " data-social-service="email" > <a href="mailto:?subject=Eyes%20in%20the%20Skies%20&body=https://time.com/collection/best-inventions-2023/6326992/dedrone-city-wide-drone-detection/%3Futm_source=email%26utm_medium=email%26utm_campaign=email-share-article%26utm-term=tech" class="display-block " title="email share" aria-label="Share on email" > <svg width="32" height="32" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="1 1 32 32"> <path class="cls-1" d="M17,33A16,16,0,1,1,33,17,16,16,0,0,1,17,33Z" fill="#595959"/> <path class="cls-2" d="M25,11.29v12H9v-12Zm-14.8,2v8.81H23.8V13.33L17,19.5ZM23,12.49H11.11L17,17.88Z" fill="#fff"/> </svg> </a> </span> <span class="icon icon-linkedin-circle-solid social-icon padding-8-right color-white " data-social-service="linkedin" > <a href="https://www.linkedin.com/shareArticle?mini=true&title=Dedrone%20City-Wide%20Drone%20Detection%3A%20The%20200%20Best%20Inventions%20of%202023%20&url=https://time.com/collection/best-inventions-2023/6326992/dedrone-city-wide-drone-detection/&source=%3Futm_source=linkedin%26utm_medium=social%26utm_campaign=social-share-article" class="display-block component popup" target="_blank" rel="noopener" title="linkedin share" aria-label="Share on linkedin" > <svg width="32px" height="32px" viewBox="0 0 30 30" role="img" aria-hidden="true" tabindex="-1"> <g fill="none" fill-rule="evenodd"> <path fill="#33669F" d="M15 30C6.71571334 30 0 23.2847441 0 15 0 6.71525592 6.71571334 0 15 0c8.2842867 0 15 6.71525592 15 15 0 8.2847441-6.7157133 15-15 15z"/> <path fill="#FFF" d="M10.7282777 9.11714286c.75350245 0 1.36601692.62063492 1.36601692 1.38333333 0 .7642857-.61251447 1.38571428-1.36601692 1.38571428-.7566355 0-1.36758344-.62142858-1.36758344-1.3857143 0-.7626984.61094793-1.38333332 1.36758344-1.38333332zM9.54789497 20.6163492h2.3599822v-7.68095237h-2.3599822v7.68095237zM13.38637116 12.93507937h2.25972408v1.05h.03133066c.31487317-.60396826 1.08404094-1.24126985 2.2307432-1.24126985 2.38583 0 2.8260258 1.5904762 2.8260258 3.65873016v4.21349202h-2.3544993v-3.7349206c0-.89047618-.01723187-2.03650793-1.22424567-2.03650793-1.22737872 0-1.41457944.96904762-1.41457944 1.97142858v3.79999995h-2.35449934v-7.68095233z"/> </g> </svg> </a> </span> </div> </div> </div> </div> <!-- Bottom Recirc --> </div> <!-- Bottom Recirc Cards --> <div class="collection-recirc-card"> <div class="collection-recirc-title"> <span> <a href="/collection/best-inventions-2023"> <svg width="15px" height="11px" viewBox="0 0 15 11" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> <g id="Draft-6" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"> <g id="Desktop-Headline-Text-Copy-2" transform="translate(-659.000000, -226.000000)" stroke="#000000" stroke-width="1.5"> <g id="arrow" transform="translate(645.000000, 211.000000)"> <g id="Group-4" transform="translate(15.000000, 13.000000)"> <g id="Group" transform="translate(0.000000, 2.000000)"> <polyline id="Path-3" transform="translate(5.500000, 5.500000) rotate(45.000000) translate(-5.500000, -5.500000) " points="2 2 2 9 9 9"></polyline> <line x1="1" y1="5.5" x2="13" y2="5.5" id="Line" stroke-linecap="square"></line> </g> </g> </g> </g> </g> </svg> MORE FROM <span> The Best Inventions of 2023 </span> <hr /> </a> </span> </div> <div class="collection-recirc-card-list"> <div class="collection-recirc-card-item"> <a href=https://time.com/collection/best-inventions-2023/6324400/owala-freesip/> <div class="partial aspect-ratio-box" style="--aspect-ratio:1; --mobile-aspect-ratio:1;"> <div class="component image-new image "> <div class="image-container " data-loading="lazy" data-src="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-owala-freesip-water-bottle.jpg?quality=85&w=700&h=1050&crop=1" data-alt="" > <noscript> <img style="opacity:1;" src="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-owala-freesip-water-bottle.jpg?quality=85&w=700&h=1050&crop=1" alt="" loading="lazy" /> </noscript> </div> </div> </div> <div class="block-image-overlay" data-post-url=https://time.com/collection/best-inventions-2023/6324400/owala-freesip/></div> </a> <div class="title">Hydration Made Fun</div> <div class="byline"> </div> </div> <div class="collection-recirc-card-item"> <a href=https://time.com/collection/best-inventions-2023/6324029/samsung-galaxy-z-flip5/> <div class="partial aspect-ratio-box" style="--aspect-ratio:1; --mobile-aspect-ratio:1;"> <div class="component image-new image "> <div class="image-container " data-loading="lazy" data-src="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-Samsung-galaxy-flip-02.jpg?quality=85&w=700&h=1050&crop=1" data-alt="" > <noscript> <img style="opacity:1;" src="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-Samsung-galaxy-flip-02.jpg?quality=85&w=700&h=1050&crop=1" alt="" loading="lazy" /> </noscript> </div> </div> </div> <div class="block-image-overlay" data-post-url=https://time.com/collection/best-inventions-2023/6324029/samsung-galaxy-z-flip5/></div> </a> <div class="title">A Modern Flip Phone</div> <div class="byline"> By <span class="bold author-name"> Chris Stokel-Walker </span> </div> </div> <div class="collection-recirc-card-item"> <a href=https://time.com/collection/best-inventions-2023/6326907/salistick/> <div class="partial aspect-ratio-box" style="--aspect-ratio:1; --mobile-aspect-ratio:1;"> <div class="component image-new image "> <div class="image-container " data-loading="lazy" data-src="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-Salistick.jpg?quality=85&w=700&h=1050&crop=1" data-alt="" > <noscript> <img style="opacity:1;" src="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-Salistick.jpg?quality=85&w=700&h=1050&crop=1" alt="" loading="lazy" /> </noscript> </div> </div> </div> <div class="block-image-overlay" data-post-url=https://time.com/collection/best-inventions-2023/6326907/salistick/></div> </a> <div class="title">A Saliva Pregnancy Test</div> <div class="byline"> By <span class="bold author-name"> Chris Stokel-Walker </span> </div> </div> <div class="collection-recirc-card-item"> <a href=https://time.com/collection/best-inventions-2023/6324746/czinger-21c/> <div class="partial aspect-ratio-box" style="--aspect-ratio:1; --mobile-aspect-ratio:1;"> <div class="component image-new image "> <div class="image-container " data-loading="lazy" data-src="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-czinger-21c.jpg?quality=85&w=700&h=1050&crop=1" data-alt="" > <noscript> <img style="opacity:1;" src="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-czinger-21c.jpg?quality=85&w=700&h=1050&crop=1" alt="" loading="lazy" /> </noscript> </div> </div> </div> <div class="block-image-overlay" data-post-url=https://time.com/collection/best-inventions-2023/6324746/czinger-21c/></div> </a> <div class="title">More Than a Fast Car</div> <div class="byline"> By <span class="bold author-name"> Alison Van Houten </span> </div> </div> <div class="collection-recirc-card-item"> <a href=https://time.com/collection/best-inventions-2023/6324484/snoo-smart-sleeper/> <div class="partial aspect-ratio-box" style="--aspect-ratio:1; --mobile-aspect-ratio:1;"> <div class="component image-new image "> <div class="image-container " data-loading="lazy" data-src="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-snoo.jpg?quality=85&w=700&h=1050&crop=1" data-alt="" > <noscript> <img style="opacity:1;" src="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-snoo.jpg?quality=85&w=700&h=1050&crop=1" alt="" loading="lazy" /> </noscript> </div> </div> </div> <div class="block-image-overlay" data-post-url=https://time.com/collection/best-inventions-2023/6324484/snoo-smart-sleeper/></div> </a> <div class="title">A Breakthrough Bassinet</div> <div class="byline"> By <span class="bold author-name"> Charlotte Alter </span> </div> </div> </div> <div class="collection-recirc-card-list--mobile"> <div class="component mobile-carousel variation-collection-article-recirc-cards" data-items-count=5> <span class="story-count">5 stories</span> <div class="item-selectors"> <form> <nav> <input id="6324400-carousel-item-0" type="radio" name="item-selector-dots" value=0 checked> <label for="6324400-carousel-item-0">Go to item 0</label> <input id="6324029-carousel-item-1" type="radio" name="item-selector-dots" value=1 > <label for="6324029-carousel-item-1">Go to item 1</label> <input id="6326907-carousel-item-2" type="radio" name="item-selector-dots" value=2 > <label for="6326907-carousel-item-2">Go to item 2</label> <input id="6324746-carousel-item-3" type="radio" name="item-selector-dots" value=3 > <label for="6324746-carousel-item-3">Go to item 3</label> <input id="6324484-carousel-item-4" type="radio" name="item-selector-dots" value=4 > <label for="6324484-carousel-item-4">Go to item 4</label> </nav> </form> </div> <ul class="tout__list items swipe-h"> <li id="6324400-item" class="item tout__list-item selected show-credit show " data-index=0> <a class="tout__list-item-link" href="https://time.com/collection/best-inventions-2023/6324400/owala-freesip/"> <div class="tout__list-item-dek"> <h3 class="headline">Hydration Made Fun</h3> <h3 class="byline"> </h3> </div> <div class="tout__list-item-block-image"> <div class="partial aspect-ratio-box" style="--aspect-ratio:1; --mobile-aspect-ratio:1;"> <div class="component image-new image "> <div class="image-container " data-loading="lazy" data-src="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-owala-freesip-water-bottle.jpg?quality=85&w=700&h=1050&crop=1" data-alt="" > <noscript> <img style="opacity:1;" src="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-owala-freesip-water-bottle.jpg?quality=85&w=700&h=1050&crop=1" alt="" loading="lazy" /> </noscript> </div> </div> </div> </div> <div class="tout__list-item-block-image-overlay"></div> </a> </li> <li id="6324029-item" class="item tout__list-item show " data-index=1> <a class="tout__list-item-link" href="https://time.com/collection/best-inventions-2023/6324029/samsung-galaxy-z-flip5/"> <div class="tout__list-item-dek"> <h3 class="headline">A Modern Flip Phone</h3> <h3 class="byline"> By <span class="bold author-name"> Chris Stokel-Walker </span> </h3> </div> <div class="tout__list-item-block-image"> <div class="partial aspect-ratio-box" style="--aspect-ratio:1; --mobile-aspect-ratio:1;"> <div class="component image-new image "> <div class="image-container " data-loading="lazy" data-src="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-Samsung-galaxy-flip-02.jpg?quality=85&w=700&h=1050&crop=1" data-alt="" > <noscript> <img style="opacity:1;" src="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-Samsung-galaxy-flip-02.jpg?quality=85&w=700&h=1050&crop=1" alt="" loading="lazy" /> </noscript> </div> </div> </div> </div> <div class="tout__list-item-block-image-overlay"></div> </a> </li> <li id="6326907-item" class="item tout__list-item show " data-index=2> <a class="tout__list-item-link" href="https://time.com/collection/best-inventions-2023/6326907/salistick/"> <div class="tout__list-item-dek"> <h3 class="headline">A Saliva Pregnancy Test</h3> <h3 class="byline"> By <span class="bold author-name"> Chris Stokel-Walker </span> </h3> </div> <div class="tout__list-item-block-image"> <div class="partial aspect-ratio-box" style="--aspect-ratio:1; --mobile-aspect-ratio:1;"> <div class="component image-new image "> <div class="image-container " data-loading="lazy" data-src="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-Salistick.jpg?quality=85&w=700&h=1050&crop=1" data-alt="" > <noscript> <img style="opacity:1;" src="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-Salistick.jpg?quality=85&w=700&h=1050&crop=1" alt="" loading="lazy" /> </noscript> </div> </div> </div> </div> <div class="tout__list-item-block-image-overlay"></div> </a> </li> <li id="6324746-item" class="item tout__list-item show " data-index=3> <a class="tout__list-item-link" href="https://time.com/collection/best-inventions-2023/6324746/czinger-21c/"> <div class="tout__list-item-dek"> <h3 class="headline">More Than a Fast Car</h3> <h3 class="byline"> By <span class="bold author-name"> Alison Van Houten </span> </h3> </div> <div class="tout__list-item-block-image"> <div class="partial aspect-ratio-box" style="--aspect-ratio:1; --mobile-aspect-ratio:1;"> <div class="component image-new image "> <div class="image-container " data-loading="lazy" data-src="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-czinger-21c.jpg?quality=85&w=700&h=1050&crop=1" data-alt="" > <noscript> <img style="opacity:1;" src="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-czinger-21c.jpg?quality=85&w=700&h=1050&crop=1" alt="" loading="lazy" /> </noscript> </div> </div> </div> </div> <div class="tout__list-item-block-image-overlay"></div> </a> </li> <li id="6324484-item" class="item tout__list-item " data-index=4> <a class="tout__list-item-link" href="https://time.com/collection/best-inventions-2023/6324484/snoo-smart-sleeper/"> <div class="tout__list-item-dek"> <h3 class="headline">A Breakthrough Bassinet</h3> <h3 class="byline"> By <span class="bold author-name"> Charlotte Alter </span> </h3> </div> <div class="tout__list-item-block-image"> <div class="partial aspect-ratio-box" style="--aspect-ratio:1; --mobile-aspect-ratio:1;"> <div class="component image-new image "> <div class="image-container " data-loading="lazy" data-src="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-snoo.jpg?quality=85&w=700&h=1050&crop=1" data-alt="" > <noscript> <img style="opacity:1;" src="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-snoo.jpg?quality=85&w=700&h=1050&crop=1" alt="" loading="lazy" /> </noscript> </div> </div> </div> </div> <div class="tout__list-item-block-image-overlay"></div> </a> </li> </ul> <div class="gradient-start"> <span class="chevron-left"><svg xmlns="http://www.w3.org/2000/svg" width=24 height=24 viewBox="0 0 24 24" role="img" aria-hidden="true" tabindex="-1"><polygon points="15.41 7.41 14 6 8 12 14 18 15.41 16.59 10.83 12"></polygon></svg></span> </div> <div class="gradient-end"> <span class="chevron-right"><svg xmlns="http://www.w3.org/2000/svg" width=24 height=24 viewBox="0 0 24 24" role="img" aria-hidden="true" tabindex="-1"><polygon points="10 6 8.59 7.41 13.17 12 8.59 16.59 10 18 16 12"></polygon></svg></span> </div> </div> </div> </div> <a href="https://api.time.com/wp-admin/post.php?post=6326992&action=edit" class="component edit-link is-fixed" target="_blank" title="Edit link" aria-label="Edit link"> <svg xmlns="http://www.w3.org/2000/svg" width="13" height="9" viewBox="0 0 13 9" role="img" aria-hidden="true" tabindex="-1"> <path fill="#929499" d="M212.759918,28 L205.220444,34.8496054 L205,36.6666667 L206.993876,36.4618019 L214.533333,29.6121965 L212.759918,28 L212.759918,28 Z M209.622222,35.8 C209.462669,35.8 209.333333,35.9940033 209.333333,36.2333333 C209.333333,36.4726633 209.462669,36.6666667 209.622222,36.6666667 L217.711111,36.6666667 C217.870664,36.6666667 218,36.4726633 218,36.2333333 C218,35.9940033 217.870664,35.8 217.711111,35.8 L209.622222,35.8 L209.622222,35.8 Z" transform="translate(-205 -28)"/> </svg> <span>EDIT POST</span> </a> </main> </div> </div> <div class="above-footer"></div> <footer class="main padding-24-top "> <nav class="footer-links margin-0-auto padding-16-tb rule-bottom" data-tracking-zone="footer" aria-label="Footer Navigation"> <section> <ul class="margin-8-top"> <li> <a href="https://time.com" > Home </a> </li> <li> <a href="https://time.com/section/us/" > U.S. </a> </li> <li> <a href="https://time.com/section/politics/" > Politics </a> </li> <li> <a href="https://time.com/section/world/" > World </a> </li> <li> <a href="https://time.com/section/health/" > Health </a> </li> <li> <a href="https://time.com/section/business/" > Business </a> </li> <li> <a href="https://time.com/section/tech/" > Tech </a> </li> <li> <a href="https://time.com/personal-finance/" > Personal Finance by TIME Stamped </a> </li> <li> <a href="https://time.com/shopping/" > Shopping by TIME Stamped </a> </li> <li> <a href="https://time.com/charter/" > Future of Work by Charter </a> </li> </ul> </section> <section> <ul class="margin-8-top"> <li> <a href="https://time.com/section/entertainment/" > Entertainment </a> </li> <li> <a href="https://time.com/section/ideas/" > Ideas </a> </li> <li> <a href="https://time.com/section/science/" > Science </a> </li> <li> <a href="https://time.com/section/history/" > History </a> </li> <li> <a href="https://time.com/section/sports/" > Sports </a> </li> <li> <a href="https://time.com/magazine" > Magazine </a> </li> <li> <a href="https://time.com/vault/" > The TIME Vault </a> </li> <li> <a href="https://www.timeforkids.com/" > TIME For Kids </a> </li> <li> <a href="https://www.co2.com/" > TIMECO2 </a> </li> <li> <a href="https://time.com/coupons" > Coupons </a> </li> </ul> </section> <section> <ul class="margin-8-top"> <li> <a href="https://timeedge.com/login" > TIME Edge </a> </li> <li> <a href="https://time.com/collection/video/" > Video </a> </li> <li> <a href="https://time.com/time-masthead/" > Masthead </a> </li> <li> <a href="https://time.com/newsletters/?source=TD_Footer_Link" > Newsletters </a> </li> <li> <a href="https://time.com/subscribe-footer-time" class="subx_track_952 subscribe-link" data-key="qobuskf@g" data-event="4" data-location="footer" > Subscribe </a> </li> <li> <a href="https://geo.ema.gs/time_digital" > Digital Magazine </a> </li> <li> <a href="https://time.com/giveagift/" > Give a Gift </a> </li> <li> <a href="https://timecoverstore.com/" > Shop the TIME Store </a> </li> <li> <a href="https://time.com/longform/join-time/" > Careers </a> </li> <li> <a href="https://time.com/modern-slavery-statement/" > Modern Slavery Statement </a> </li> </ul> </section> <section> <ul class="margin-8-top"> <li> <a href="https://time.com/section/press-room/" > Press Room </a> </li> <li> <a href="https://time.com/studios/" > TIME Studios </a> </li> <li> <a href="https://support.time.com/" > U.S. & Canada Customer Care </a> </li> <li> <a href="https://support.time.com/" > Global Help Center </a> </li> <li> <a href="mailto:feedback@time.com" > Contact the Editors </a> </li> <li> <a href="https://www.parsintl.com/publication/time" > Reprints and Permissions </a> </li> <li> <a href="https://time.com/html-sitemap/" > Site Map </a> </li> <li> <a href="https://time.com/mediakit/" > Media Kit </a> </li> <li> <a href="https://time.com/partnercontent/" > Supplied Partner Content </a> </li> <li> <a href="https://time.com/longform/about-time/" > About Us </a> </li> </ul> </section> </nav> <div class="footer-legal padding-16-tb text-align-center"> © 2024 TIME USA, LLC. All Rights Reserved. Use of this site constitutes acceptance of our <a href="https://time.com/privacy/privacy_terms_service.html">Terms of Service</a>, <a href="https://time.com/privacy/privacy_policy.html">Privacy Policy</a> (<a href="https://time.com/privacy/privacy_policy.html#_Toc26698205">Your Privacy Rights</a>) and <a href="javascript:ketch('showPreferences')" class="grey-link">Do Not Sell or Share My Personal Information</a>.<br /> TIME may receive compensation for some links to products and services on this website. Offers may be subject to change without notice. </div> </footer> <div id="page-gtm-values"> <div class="keyvals" data-ad_tags="tech" data-affiliate_link_count="0" data-content_author_name="Chris Stokel-Walker" data-content_cms_sub_category="" data-content_cms_id="6326992" data-content_featured_image="https://api.time.com/wp-content/uploads/2023/10/best-inventions-2023-city-wide.jpg" data-content_headline="Eyes in the Skies" data-content_is_post="post" data-content_modified_date="" data-content_published_date="2023-10-24T11:00:35.000Z" data-content_shown_on_platform="own" data-content_type="collection article" data-content_post_status="publish" data-path="/best-inventions-2023/6326992/dedrone-city-wide-drone-detection/" data-referrer="" data-search="" data-title="Eyes in the Skies" data-us_user="false" data-tags="best inventions,Best Inventions 2023,E-Commerce,franchise,list,Magazine,ecommerce,tech" data-time_tas_userID="false" data-time_userLoginStatus="false" data-time_userType="anonymous" data-is_time_pieces_holder="false" data-content_cms_category="Tech" data-content_cms_tags="best inventions|Best Inventions 2023|E-Commerce|franchise|list|Magazine|ecommerce" data-content_cms_terms="Tech,best inventions,Best Inventions 2023,E-Commerce,franchise,list,Magazine,ecommerce" data-content_syndicated="false" data-content_syndicated_brand="" data-content_syndicated_url="" data-content_nlp_sentiment_label="" data-content_nlp_sentiment_score="" data-content_nlp_sentiment_magnitude="" data-content_nlp_entities="" data-content_nlp_payload="" data-content_nlp_categories="" data-user_region="asia" ></div> </div> <div id="site-components" data-async="navigation,navigation-charter,feed,dropdown,search-results-form,embed-playbuzz,embed-facebook,embed-instagram,embed-twitter,embed-omnivirt,image-link,collection-navigation,newsletter-signup-form,multi-newsletter-signup-form,newsletter-thank-you-notice,image-link,embed-ap-interactive,expandable-table,mobile-carousel,image-carousel,mobile-anchor-recirc,page-recirc,subscription-checkout,subscription-cancel,subscription-offer-card,video-collection-player-jw,video-collection-grid,nativo-campaign-tout,video-collection-posters,video-jw,popup,video-youtube,taas-iframe,countdown-clock,expandable-text,taxonomy-related-touts,recurly-checkout-price,crx-recirc,page-menu,taboola-bottom-recirc,homepage-video-player,hero-card-intro,video-article-recirc,charter-newsletter-mobile,embed-time-sites" data-sync="lazy-image,image-new" ></div> <script type="text/javascript" async src="/dist/collection-article.js"></script> <script async src="//s.skimresources.com/js/143429X1608040.skimlinks.js"></script> <script type="text/javascript" async src="//z-na.associates-amazon.com/onetag/v2?MarketPlace=US&instanceId=1dee68ea-cc65-49d9-94ae-0415f87051b5"></script> </body> </html>