CINXE.COM
Create, Design, and Deploy Robotics Applications Using New NVIDIA Isaac Foundation Models and Workflows | NVIDIA Technical Blog
<!doctype html> <html lang="en-US" id="html"> <head> <meta charset="utf-8"> <meta http-equiv="x-ua-compatible" content="ie=edge"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <link rel="shortcut icon" href="https://developer-blogs.nvidia.com/wp-content/themes/nvidia/dist/images/favicon_300a1064.ico" type="image/vnd.microsoft.icon"> <link media="all" href="https://developer-blogs.nvidia.com/wp-content/uploads/autoptimize/1/css/aggregated_61cb4f5a3725d1aa6eecb31d5cfc4db0.css" rel="stylesheet"><title>Create, Design, and Deploy Robotics Applications Using New NVIDIA Isaac Foundation Models and Workflows | NVIDIA Technical Blog</title> <!-- OneTrust Cookies Consent Notice start for nvidia.com --> <script src="https://cdn.cookielaw.org/scripttemplates/otSDKStub.js" data-document-language="true" type="text/javascript" charset="UTF-8" data-domain-script="3e2b62ff-7ae7-4ac5-87c8-d5949ecafff5" ></script> <script type="text/javascript"> function OptanonWrapper() { var event = new Event('bannerLoaded'); window.dispatchEvent(event); } </script> <!-- OneTrust Cookies Consent Notice end for nvidia.com --><link rel="preload" href="https://developer-blogs.nvidia.com/wp-content/themes/nvidia/dist/scripts/main_5b99443a.js" as="script"><script src="//app-sj14.marketo.com/js/forms2/js/forms2.min.js?ver=5.6.2" defer></script><script src="https://unpkg.com/infinite-scroll@4/dist/infinite-scroll.pkgd.min.js" defer></script><meta property="interest" content="Robotics"><meta property="estimated-read-time" content="10 MIN"> <!-- The SEO Framework by Sybre Waaijer --> <meta name="robots" content="max-snippet:-1,max-image-preview:standard,max-video-preview:-1" /> <link rel="canonical" href="https://developer.nvidia.com/blog/create-design-and-deploy-robotics-applications-using-new-nvidia-isaac-foundation-models-and-workflows/" /> <link rel="shortlink" href="https://developer.nvidia.com/blog/?p=83281" /> <meta name="description" content="The application of robotics is rapidly expanding in diverse environments such as smart manufacturing facilities, commercial kitchens, hospitals…" /> <meta property="og:type" content="article" /> <meta property="og:locale" content="en_US" /> <meta property="og:site_name" content="NVIDIA Technical Blog" /> <meta property="og:title" content="Create, Design, and Deploy Robotics Applications Using New NVIDIA Isaac Foundation Models and Workflows | NVIDIA Technical Blog" /> <meta property="og:description" content="The application of robotics is rapidly expanding in diverse environments such as smart manufacturing facilities, commercial kitchens, hospitals, warehouse logistics, and agricultural fields." /> <meta property="og:url" content="https://developer.nvidia.com/blog/create-design-and-deploy-robotics-applications-using-new-nvidia-isaac-foundation-models-and-workflows/" /> <meta property="og:image" content="https://developer-blogs.nvidia.com/wp-content/uploads/2024/05/Isaac-robotics-500x282.gif" /> <meta property="og:image:width" content="500" /> <meta property="og:image:height" content="282" /> <meta property="og:image:alt" content="A GIF showing a robotic arm maneuvering items." /> <meta property="article:published_time" content="2024-06-02T12:30+00:00" /> <meta property="article:modified_time" content="2024-06-13T19:06+00:00" /> <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:title" content="Create, Design, and Deploy Robotics Applications Using New NVIDIA Isaac Foundation Models and Workflows | NVIDIA Technical Blog" /> <meta name="twitter:description" content="The application of robotics is rapidly expanding in diverse environments such as smart manufacturing facilities, commercial kitchens, hospitals, warehouse logistics, and agricultural fields." /> <meta name="twitter:image" content="https://developer-blogs.nvidia.com/wp-content/uploads/2024/05/Isaac-robotics-500x282.gif" /> <meta name="twitter:image:alt" content="A GIF showing a robotic arm maneuvering items." /> <script type="application/ld+json">{"@context":"https://schema.org","@graph":[{"@type":"WebSite","@id":"https://developer.nvidia.com/blog/#/schema/WebSite","url":"https://developer.nvidia.com/blog/","name":"NVIDIA Technical Blog","description":"News and tutorials for developers, data scientists, and IT admins","inLanguage":"en-US","potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://developer.nvidia.com/blog/search/{search_term_string}/"},"query-input":"required name=search_term_string"},"publisher":{"@type":"Organization","@id":"https://developer.nvidia.com/blog/#/schema/Organization","name":"NVIDIA Technical Blog","url":"https://developer.nvidia.com/blog/"}},{"@type":"WebPage","@id":"https://developer.nvidia.com/blog/create-design-and-deploy-robotics-applications-using-new-nvidia-isaac-foundation-models-and-workflows/","url":"https://developer.nvidia.com/blog/create-design-and-deploy-robotics-applications-using-new-nvidia-isaac-foundation-models-and-workflows/","name":"Create, Design, and Deploy Robotics Applications Using New NVIDIA Isaac Foundation Models and Workflows | NVIDIA Technical Blog","description":"The application of robotics is rapidly expanding in diverse environments such as smart manufacturing facilities, commercial kitchens, hospitals…","inLanguage":"en-US","isPartOf":{"@id":"https://developer.nvidia.com/blog/#/schema/WebSite"},"breadcrumb":{"@type":"BreadcrumbList","@id":"https://developer.nvidia.com/blog/#/schema/BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"item":"https://developer.nvidia.com/blog/","name":"NVIDIA Technical Blog"},{"@type":"ListItem","position":2,"item":"https://developer.nvidia.com/blog/category/robotics/","name":"Category: Robotics"},{"@type":"ListItem","position":3,"name":"Create, Design, and Deploy Robotics Applications Using New NVIDIA Isaac Foundation Models and Workflows"}]},"potentialAction":{"@type":"ReadAction","target":"https://developer.nvidia.com/blog/create-design-and-deploy-robotics-applications-using-new-nvidia-isaac-foundation-models-and-workflows/"},"datePublished":"2024-06-02T12:30+00:00","dateModified":"2024-06-13T19:06+00:00","author":{"@type":"Person","@id":"https://developer.nvidia.com/blog/#/schema/Person/4ddad95f38b3244bc07ec39787e1a784","name":"Asawaree Bhide","description":"Asawaree Bhide is a technical marketing engineer at NVIDIA, working on robotics and deep learning applications on the Jetson platform. She did her master’s in computer science at Georgia Tech and is interested in solving complex perception tasks in..."}}]}</script> <!-- / The SEO Framework by Sybre Waaijer | 10.00ms meta | 0.21ms boot --> <link rel='dns-prefetch' href='//developer-blogs.nvidia.com' /> <link rel='dns-prefetch' href='//secure.gravatar.com' /> <link rel='dns-prefetch' href='//widgets.wp.com' /> <link rel='dns-prefetch' href='//s0.wp.com' /> <link rel='dns-prefetch' href='//0.gravatar.com' /> <link rel='dns-prefetch' href='//1.gravatar.com' /> <link rel='dns-prefetch' href='//2.gravatar.com' /> <link rel='dns-prefetch' href='//v0.wordpress.com' /> <link href='https://assets.adobedtm.com' rel='preconnect' /> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/themes/nvidia/resources/assets/scripts/munchkin.js?ver=1733873849" id="munchkin-js-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/themes/nvidia/resources/assets/scripts/user-dropdown.js?ver=1733873849" id="user_dropdown.js-js"></script> <link rel="https://api.w.org/" href="https://developer-blogs.nvidia.com/wp-json/" /><link rel="alternate" title="JSON" type="application/json" href="https://developer-blogs.nvidia.com/wp-json/wp/v2/posts/83281" /><link rel="EditURI" type="application/rsd+xml" title="RSD" href="https://developer-blogs.nvidia.com/xmlrpc.php?rsd" /> <link rel="alternate" title="oEmbed (JSON)" type="application/json+oembed" href="https://developer-blogs.nvidia.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fdeveloper.nvidia.com%2Fblog%2Fcreate-design-and-deploy-robotics-applications-using-new-nvidia-isaac-foundation-models-and-workflows%2F" /> <link rel="alternate" title="oEmbed (XML)" type="text/xml+oembed" href="https://developer-blogs.nvidia.com/wp-json/oembed/1.0/embed?url=https%3A%2F%2Fdeveloper.nvidia.com%2Fblog%2Fcreate-design-and-deploy-robotics-applications-using-new-nvidia-isaac-foundation-models-and-workflows%2F&format=xml" /> <link rel="alternate" hreflang="en" href="https://developer.nvidia.com/blog/create-design-and-deploy-robotics-applications-using-new-nvidia-isaac-foundation-models-and-workflows/" title="en_US" /> <link rel="alternate" hreflang="zh" href="https://developer.nvidia.com/zh-cn/blog/create-design-and-deploy-robotics-applications-using-new-nvidia-isaac-foundation-models-and-workflows/" title="zh_CN" /> <!-- Stream WordPress user activity plugin v4.0.1 --> <!--wp code prettify--> <script src="//assets.adobedtm.com/5d4962a43b79/c1061d2c5e7b/launch-191c2462b890.min.js" data-ot-ignore="true"></script> <link rel="stylesheet" href="https://pro.fontawesome.com/releases/v5.12.1/css/all.css" integrity="sha384-TxKWSXbsweFt0o2WqfkfJRRNVaPdzXJ/YLqgStggBVRREXkwU7OKz+xXtqOU4u8+" crossorigin="anonymous" media="none" onload="if(media!='all')media='all'"> <script src='https://developer-blogs.nvidia.com/wp-content/plugins/nv-faceted-search/js/faceted-search/build/direflowBundle.js?ver=ec450c1'></script> </head> <body class="post-template-default single single-post postid-83281 single-format-standard create-design-and-deploy-robotics-applications-using-new-nvidia-isaac-foundation-models-and-workflows app-data index-data singular-data single-data single-post-data single-post-create-design-and-deploy-robotics-applications-using-new-nvidia-isaac-foundation-models-and-workflows-data"> <svg xmlns="http://www.w3.org/2000/svg" class="hide" style="display: none;"> <symbol id="n24-user-circle" viewBox="0 0 24 24"> <defs> </defs> <rect id="n24-icon-user-circle-bounds" class="n24-bounds" width="24" height="24"></rect> <g id="n24-icon-user-circle"> <circle id="user-circle" class="n24-user-circle-cls-1" cx="12" cy="12" r="9.75"></circle> <polyline id="user-body" class="n24-user-circle-cls-1" points="17.55 20.01 16.34 15.48 7.66 15.48 6.45 20.01"></polyline> <circle id="user-head" class="n24-user-circle-cls-1" cx="12" cy="9.91" r="3.48"></circle> </g> </symbol> </svg> <header class="page-header"> <div class="container"> <button class="navbar-toggle" type="button"> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <div class="logo"> <a class="primary-logo" href="/" title="Home" data-wpel-link="internal" target="_blank" rel="follow noopener"> <img alt="Home" width="142" height="32" src="https://developer-blogs.nvidia.com/wp-content/themes/nvidia/dist/images/nvidia-logo_28b633c7.svg"> </a> <a class="secondary-logo" href="/" title="Home" data-wpel-link="internal" target="_blank" rel="follow noopener">DEVELOPER</a> </div> <nav class="navbar primary navbar-expand-md navbar-inverse"> <div class="collapse navbar-collapse" id="navbarSupportedContent"> <div class="menu-top-menu-container"><ul id="menu-top-menu" class="menu nav navbar-nav primary mr-auto"><li id="menu-item-25291" class="menu-item menu-item-type-custom menu-item-object-custom nav-item nav-item-25291"><a title="Home" href="/" class="nav-link" data-wpel-link="internal" target="_blank" rel="follow noopener">Home</a></li><li id="menu-item-25292" class="menu-item menu-item-type-custom menu-item-object-custom nav-item nav-item-25292"><a title="Blog" href="/blog" class="nav-link active" data-wpel-link="internal" target="_blank" rel="follow noopener">Blog</a></li><li id="menu-item-25293" class="menu-item menu-item-type-custom menu-item-object-custom nav-item nav-item-25293"><a title="Forums" href="https://forums.developer.nvidia.com/" class="nav-link" data-wpel-link="internal" target="_blank" rel="follow noopener">Forums</a></li><li id="menu-item-25294" class="menu-item menu-item-type-custom menu-item-object-custom nav-item nav-item-25294"><a title="Docs" href="https://docs.nvidia.com/" class="nav-link" data-wpel-link="internal" target="_blank" rel="follow noopener">Docs</a></li><li id="menu-item-25295" class="menu-item menu-item-type-custom menu-item-object-custom nav-item nav-item-25295"><a title="Downloads" href="https://developer.nvidia.com/downloads" class="nav-link" data-wpel-link="internal" target="_blank" rel="follow noopener">Downloads</a></li><li id="menu-item-25296" class="menu-item menu-item-type-custom menu-item-object-custom nav-item nav-item-25296"><a title="Training" href="https://www.nvidia.com/en-us/training/" class="nav-link" data-wpel-link="internal" target="_blank" rel="follow noopener">Training</a></li></ul></div> </div> </nav> <nav class="navbar navbar-right" id="topRightNavbar"> <ul class="nav navbar-nav navbar-margin navbar-right navbar-margin-media login-nav"> <li class="search" id="search-top"> <div class="search-form" id="search-top-form"> <form class="gss form-search content-search" data-base-url="https://developer.nvidia.com/blog/" action="https://developer.nvidia.com/blog/search-posts" method="GET" id="nvidia-site-search-form" accept-charset="UTF-8"> <div> <div class="input-group"> <div id="top-site-search-form"> <input placeholder="Search" class="form-control form-text" type="text" id="edit-term" name="q" value="" size="15" maxlength="128"> </div> <span class="input-group-btn"> <button type="submit" class="btn btn-default"> <i class="fa fa-search" aria-hidden="true"></i> </button> </span> </div> <button class="btn element-invisible btn-primary form-submit" type="submit" id="edit-submit" name="op" value="Search">Search</button> </div> </form> </div> </li> <li class="leaf" id="dzauth_join_link"> <a href="https://developer.nvidia.com/login" class="cta--prim nv-join" data-wpel-link="internal" target="_blank" rel="follow noopener">Join</a> </li> <li class="leaf last" id="dzauth_login_link"> <a href="https://developer.nvidia.com/login" class="nv-login" data-wpel-link="internal" target="_blank" rel="follow noopener"> <svg aria-label="User Account" class="n24-icon nvprofileicon n24-account" style="width: 24px; height: 24px;"> <use xlink:href="#n24-user-circle"></use> </svg> </a> </li> </ul> </nav> </div> </header> <section class="main"> <div class="faceted-search-top-wrapper"> <div class="container"> <div class="row"> <div class="col col-lg-12 faceted-search-component-wrapper"> <faceted-search-bar appUrl="https://developer.nvidia.com/blog" componentTitle="Technical Blog" text="" subscribeUrl="https://developer.nvidia.com/email-signup" subscribeLabel="Subscribe" locale="en-US" redirectUrl="https://developer.nvidia.com/blog/search-posts/" autocompleteEndpointUrl="https://developer.nvidia.com/blog/wp-json/faceted-search/v1/autocomplete/" data-search-page="false"></faceted-search-bar> </div> </div> </div> </div> <div class="search-filters-component-wrapper--inner-page position-fixed w-100"> <div class="container"> <div class="row"> <faceted-search-filters endpoint="https://developer.nvidia.com/blog/wp-json/faceted-search/v1/select/" redirectUrl="https://developer.nvidia.com/blog/search-posts/" data-expanded="false" data-with-redirect="true" data-with-overlay="false" sortBy="post_date" locale="en-US" handleURls=""></faceted-search-filters> </div> </div> </div> <div class="container single-page"> <div id="main-content" class="row"> <script> sessionStorage.removeItem('facets.search.text'); sessionStorage.removeItem('facets.search.text-copy'); sessionStorage.removeItem('facets.search.filters'); </script> <div class="col-sm-12 d-none text-right sidebar-toggle-link-wrapper"> <a class="sidebar-toggle sidebar-toggle-link" href="#main-content-end"> Related Resources <i class="fa fa-angle-right" aria-hidden="true"></i> </a> </div> <div class="main-content col-lg-9 col-md-9 mt-0 mb-0"> <div class="post-card--single"> <div class="row"> <div class="col-lg-12 mb-0"> <div class="card--post-attributes"> <span class="category-name content-s"> <a href="https://developer.nvidia.com/blog/category/robotics/" data-wpel-link="internal" target="_blank" rel="follow noopener">Robotics</a> </span> <span class="post-rate-widget content-s"></span> <span class="post-lang-switcher"> <div class="posts-filter-form"><div class="filter-item form-type-select"><select class="msls_languages"><option value="https://developer.nvidia.com/blog/create-design-and-deploy-robotics-applications-using-new-nvidia-isaac-foundation-models-and-workflows/" selected>English</option><option value="https://developer.nvidia.com/zh-cn/blog/create-design-and-deploy-robotics-applications-using-new-nvidia-isaac-foundation-models-and-workflows/">中文</option></select></div></div> </span> </div> <h1 class="h--large txt-clr--blck mt-2 mb-0">Create, Design, and Deploy Robotics Applications Using New NVIDIA Isaac Foundation Models and Workflows</h1> <div class="post-info"> <div class="post-published-date"> Jun 02, 2024 </div> <div class="post-authors"> By <a href="https://developer.nvidia.com/blog/author/asawareeb/" title="Posts by Asawaree Bhide" class="author url fn" rel="author follow noopener" data-wpel-link="internal" target="_blank">Asawaree Bhide</a>, <a href="https://developer.nvidia.com/blog/author/spencerh/" title="Posts by Spencer Huang" class="author url fn" rel="author follow noopener" data-wpel-link="internal" target="_blank">Spencer Huang</a>, <a href="https://developer.nvidia.com/blog/author/shrisundaram/" title="Posts by Shri Sundaram" class="author url fn" rel="author follow noopener" data-wpel-link="internal" target="_blank">Shri Sundaram</a> and <a href="https://developer.nvidia.com/blog/author/amulyav/" title="Posts by Amulya Vishwanath" class="author url fn" rel="author follow noopener" data-wpel-link="internal" target="_blank">Amulya Vishwanath</a> </div> <div class="card--post-attributes-secondary card--post-attributes-header"> <div class="post--rate secondary--attribute"> <div class="wpulike wpulike-heart " ><div class="wp_ulike_general_class wp_ulike_is_not_liked"><button type="button" aria-label="Like Button" data-ulike-id="83281" data-ulike-nonce="eb700da6f0" data-ulike-type="post" data-ulike-template="wpulike-heart" data-ulike-display-likers="" data-ulike-likers-style="popover" class="wp_ulike_btn wp_ulike_put_text wp_post_btn_83281"><span><i class="far fa-thumbs-up"></i></span> </button><span class="count-box wp_ulike_counter_up" data-ulike-counter-value="+15"></span> </div></div> <span class="js-like-click like-click"> Like </span> </div> <div class="post--comments-count secondary--attribute"> <a href="#entry-content-comments"> <i class="fad fa-comment-alt-lines"></i> Discuss (0) </a> </div> </div> </div> <img width="600" height="338" src="https://developer-blogs.nvidia.com/wp-content/uploads/2024/05/Isaac-robotics.gif" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="A GIF showing a robotic arm maneuvering items." decoding="async" fetchpriority="high" /> </div> </div> </div> </div> <div class="col-lg-3 col-md-3 mt-0 mb-0"></div> <div class="main-content col-lg-9 col-md-9 mt-0"> <div class="entry-meta-social"> <ul class="entry-meta-social-links-list"> <li><a data-wpel-link="external" href="https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fdeveloper.nvidia.com%2Fblog%2Fcreate-design-and-deploy-robotics-applications-using-new-nvidia-isaac-foundation-models-and-workflows%2F" class="for-linkedin" target="_blank" rel="follow external noopener">L</a></li> <li><a data-wpel-link="external" href="https://twitter.com/intent/tweet?text=Create%2C+Design%2C+and+Deploy+Robotics+Applications+Using+New+NVIDIA+Isaac+Foundation+Models+and+Workflows+%7C+NVIDIA+Technical+Blog+https%3A%2F%2Fdeveloper.nvidia.com%2Fblog%2Fcreate-design-and-deploy-robotics-applications-using-new-nvidia-isaac-foundation-models-and-workflows%2F" class="for-twitter" target="_blank" rel="follow external noopener">T</a></li> <li><a data-wpel-link="external" href="https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fdeveloper.nvidia.com%2Fblog%2Fcreate-design-and-deploy-robotics-applications-using-new-nvidia-isaac-foundation-models-and-workflows%2F" class="for-facebook" target="_blank" rel="follow external noopener">F</a></li> <li><a data-wpel-link="external" href="https://www.reddit.com/submit?url=https%3A%2F%2Fdeveloper.nvidia.com%2Fblog%2Fcreate-design-and-deploy-robotics-applications-using-new-nvidia-isaac-foundation-models-and-workflows%2F&title=Create%2C+Design%2C+and+Deploy+Robotics+Applications+Using+New+NVIDIA+Isaac+Foundation+Models+and+Workflows+%7C+NVIDIA+Technical+Blog" class="for-reddit" target="_blank" rel="follow external noopener">R</a></li> <li><a href="mailto:?subject=I'd like to share a link with you&body=https%3A%2F%2Fdeveloper.nvidia.com%2Fblog%2Fcreate-design-and-deploy-robotics-applications-using-new-nvidia-isaac-foundation-models-and-workflows%2F" class="for-mail">E</a></li> </ul> </div> <div class="entry-content"> <p>The application of robotics is rapidly expanding in diverse environments such as smart manufacturing facilities, commercial kitchens, hospitals, warehouse logistics, and agricultural fields. The industry is shifting towards intelligent automation, which requires enhanced robot capabilities to perform functions including perception, mapping, navigation, load handling, object grasping, and intricate assembly tasks. </p> <p>AI plays a pivotal role in this evolution, enhancing robotic performance. By integrating NVIDIA AI acceleration, robots can tackle complex tasks with greater precision and efficiency, unlocking their full potential across diverse applications.</p> <p>At COMPUTEX, we <a href="https://nvidianews.nvidia.com/news/robotics-industry-development-ai-autonomous-machines" data-wpel-link="internal" target="_blank" rel="follow noopener">announced</a> several new features to help roboticists and engineers build smart robots. These include: </p> <ul class="wp-block-list"> <li><a href="https://developer.nvidia.com/isaac/perceptor" data-wpel-link="internal" target="_blank" rel="follow noopener">NVIDIA Isaac Perceptor</a><strong>, </strong>a<strong> </strong>new reference workflow for autonomous mobile robots (AMRs) and automated guided vehicles (AGVs).</li> <li><a href="https://developer.nvidia.com/isaac/manipulator" data-wpel-link="internal" target="_blank" rel="follow noopener">NVIDIA Isaac Manipulator</a> offers new foundation models and a reference workflow for industrial robotic arms.</li> <li><a href="https://developer.nvidia.com/embedded/jetpack" data-wpel-link="internal" target="_blank" rel="follow noopener">NVIDIA Jetson for Robotics</a><strong>,</strong> with new updates in NVIDIA JetPack 6.0.</li> <li><a href="https://developer.nvidia.com/isaac/sim" data-wpel-link="internal" target="_blank" rel="follow noopener">NVIDIA Isaac Sim 4.0</a> brings NVIDIA Isaac Lab, a lightweight app for robot learning.</li> </ul> <figure class="wp-block-embed aligncenter is-type-video is-provider-youtube wp-block-embed-youtube"><div style="display: contents;" > <div class="arve" data-mode="normal" data-oembed="1" data-provider="youtube" id="arve-youtube-aysfcgvv9-u" style="max-width:900px;"> <div class="arve-inner"> <div class="arve-embed arve-embed--has-aspect-ratio" style="aspect-ratio: 500 / 281"> <span class="arve-ar" style="padding-top:56.200000%"></span><iframe credentialless referrerpolicy="strict-origin-when-cross-origin" allow="accelerometer 'none';ambient-light-sensor 'none';autoplay 'none';battery 'none';bluetooth 'none';browsing-topics 'none';camera 'none';ch-ua 'none';clipboard-read 'none';clipboard-write;display-capture 'none';document-domain 'none';domain-agent 'none';encrypted-media 'none';execution-while-not-rendered 'none';execution-while-out-of-viewport 'none';gamepad 'none';geolocation 'none';gyroscope 'none';hid 'none';identity-credentials-get 'none';idle-detection 'none';keyboard-map 'none';local-fonts 'none';magnetometer 'none';microphone 'none';midi 'none';navigation-override 'none';otp-credentials 'none';payment 'none';picture-in-picture;publickey-credentials-create 'none';publickey-credentials-get 'none';screen-wake-lock 'none';serial 'none';speaker-selection;sync-xhr 'none';usb 'none';web-share;window-management 'none';xr-spatial-tracking 'none';" allowfullscreen class="arve-iframe fitvidsignore" data-arve="arve-youtube-aysfcgvv9-u" data-src-no-ap="https://www.youtube-nocookie.com/embed/AYSfcgVv9-U?feature=oembed&iv_load_policy=3&modestbranding=1&rel=0&autohide=1&playsinline=0&autoplay=0" frameborder="0" height="505.8" name sandbox="allow-scripts allow-same-origin allow-presentation allow-popups allow-popups-to-escape-sandbox" scrolling="no" src="https://www.youtube-nocookie.com/embed/AYSfcgVv9-U?feature=oembed&iv_load_policy=3&modestbranding=1&rel=0&autohide=1&playsinline=0&autoplay=0" width="900" title loading="lazy"></iframe> </div> </div> </div> </div><figcaption class="wp-element-caption"><em>Video 1. The world’s leaders in robot development are adopting NVIDIA Isaac for research, development and production of next generation AI-enabled robots.</em></figcaption></figure> <h2 id="nvidia_isaac_perceptor" class="wp-block-heading">NVIDIA Isaac Perceptor<a href="#nvidia_isaac_perceptor" class="heading-anchor-link"><i class="fas fa-link"></i></a></h2> <p>AMRs and AGVs are critical to assembly line efficiency, material handling, and healthcare logistics. As these robots navigate complex and unstructured environments, the ability to perceive and react to their surroundings becomes essential.</p> <p>Isaac Perceptor, built on top of the <a href="https://developer.nvidia.com/isaac/ros" data-wpel-link="internal" target="_blank" rel="follow noopener">NVIDIA Isaac Robot Operating System (ROS)</a>, empowers original equipment manufacturers (OEMs), freight service providers, software vendors, and the AMR ecosystem to accelerate development for robotics. Teams can equip mobile robots with perception capabilities for successful navigation and obstacle avoidance in unstructured environments.</p> <p>Isaac Perceptor early collaborators include industry leaders in warehousing/ intralogistics to automakers, industrial robotics manufacturing companies, and robotic solution providers, such as <a href="https://arcb.com/blog/vaux-smart-autonomy-update" data-wpel-link="external" target="_blank" rel="follow external noopener">ArcBest</a>, <a href="https://electronics.byd.com/elecen/index.html" data-wpel-link="external" target="_blank" rel="follow external noopener">BYD Electronics</a>, <a href="https://www.gideon.ai/news-press/nvidia-gideon-collaboration/" data-wpel-link="external" target="_blank" rel="follow external noopener">Gideon</a>, <a href="https://www.kiongroup.com/en/" data-wpel-link="external" target="_blank" rel="follow external noopener">KION</a>, <a href="https://www.kudan.io/" data-wpel-link="external" target="_blank" rel="follow external noopener">Kudan</a>, <a href="https://idealworks.com/en/news/en/robotics-ecosystem-nvidia-keynote-computex-2024/" data-wpel-link="external" target="_blank" rel="follow external noopener">idealworks</a>, <a href="https://rgorobotics.ai/#nvidia-rgo-collaboration" data-wpel-link="external" target="_blank" rel="follow external noopener">RGo</a>, and <a href="https://investors.teradyne.com/news/teradyne-robotics-to-bring-the-power-of-ai-to-robotics-with-nvidia/f89e3bc0-1345-4627-9349-569db0a6b88d" data-wpel-link="external" target="_blank" rel="follow external noopener">Teradyne Robotics</a>.</p> <h3 id="key_features_of_isaac_perceptor " class="wp-block-heading">Key features of Isaac Perceptor <a href="#key_features_of_isaac_perceptor " class="heading-anchor-link"><i class="fas fa-link"></i></a></h3> <p>Isaac Perceptor provides features to deliver multi-camera, 3D surround-vision capabilities for AI-based autonomous mobile robots.</p> <h4 class="wp-block-heading">Multi-camera AI-based depth perception</h4> <p>Isaac Perceptor processes 16.5M depth points per second per camera at 30 Hz. The stereo disparity is calculated from a time-synchronized image pair sourced from a stereo camera and is used to produce a depth image or a point cloud for a scene. An efficient semi-supervised deep neural network (<a href="https://nvidia-isaac-ros.github.io/concepts/stereo_depth/ess/index.html" data-wpel-link="external" target="_blank" rel="follow external noopener">ESS DNN</a>) provides a GPU-accelerated package for DNN-based stereo disparity. </p> <div class="wp-block-image"> <figure class="aligncenter size-full"><img decoding="async" width="1330" height="392" src="https://developer-blogs.nvidia.com/wp-content/uploads/2024/05/isaac-forklift.png" alt="Side-by-side images showing a forklift captured from a camera and AI-learned predictions of obstacles such as forklift tines. " class="wp-image-83283" srcset="https://developer-blogs.nvidia.com/wp-content/uploads/2024/05/isaac-forklift.png 1330w, https://developer-blogs.nvidia.com/wp-content/uploads/2024/05/isaac-forklift-300x88.png 300w, https://developer-blogs.nvidia.com/wp-content/uploads/2024/05/isaac-forklift-625x184.png 625w, https://developer-blogs.nvidia.com/wp-content/uploads/2024/05/isaac-forklift-179x53.png 179w, https://developer-blogs.nvidia.com/wp-content/uploads/2024/05/isaac-forklift-768x226.png 768w, https://developer-blogs.nvidia.com/wp-content/uploads/2024/05/isaac-forklift-645x190.png 645w, https://developer-blogs.nvidia.com/wp-content/uploads/2024/05/isaac-forklift-500x147.png 500w, https://developer-blogs.nvidia.com/wp-content/uploads/2024/05/isaac-forklift-160x47.png 160w, https://developer-blogs.nvidia.com/wp-content/uploads/2024/05/isaac-forklift-362x107.png 362w, https://developer-blogs.nvidia.com/wp-content/uploads/2024/05/isaac-forklift-373x110.png 373w, https://developer-blogs.nvidia.com/wp-content/uploads/2024/05/isaac-forklift-1024x302.png 1024w" sizes="(max-width: 1330px) 100vw, 1330px" /><figcaption class="wp-element-caption"><em>Figure 1. ESS DNN detecting obstacles at 5m</em></figcaption></figure></div> <h4 class="wp-block-heading">Multi-camera visual inertial odometry</h4> <p>Isaac ROS Visual SLAM provides ROS 2 packages for visual simultaneous localization and mapping (VSLAM) and visual odometry (VO). This is based on the NVIDIA <a href="https://nvidia-isaac-ros.github.io/concepts/visual_slam/cuvslam/index.html" data-wpel-link="external" target="_blank" rel="follow external noopener">CUDA Visual SLAM (cuVSLAM)</a> library and provides robust navigation with less than 1% translation error while navigating in featureless environments.</p> <p>Navigating environments with sparse visual features or repetitive patterns presents a well-known challenge for VSLAM solutions. This can be mitigated by fusing input from multiple viewpoints. In the latest update, cuVSLAM incorporates concurrent visual odometry estimation from multiple stereo cameras. </p> <p>Our testing indicated a marked improvement. Robots consistently achieved their navigation goals using multiple cameras, compared to less than 25% with a single camera. </p> <figure class="wp-block-table aligncenter"><table><thead><tr><th><strong>VO method</strong></th><th><strong>Runtime</strong></th></tr></thead><tbody><tr><td>cuVSLAM</td><td>5 ms</td></tr><tr><td>FRVO, S-PTAM</td><td>30 ms</td></tr><tr><td>ORB-SLAM2</td><td>60 ms</td></tr></tbody></table><figcaption class="wp-element-caption"><em>Table 1. Performance comparison of cuVSLAM with FRVO, S-PTAM, and ORB-SLAM2. cuVSLAM shows accelerated performance in robot navigation using multiple cameras</em></figcaption></figure> <p>Learn more on the <a href="https://nvidia-isaac-ros.github.io/repositories_and_packages/isaac_ros_visual_slam/isaac_ros_visual_slam/index.html" data-wpel-link="external" target="_blank" rel="follow external noopener">GitHub page</a>.</p> <div class="wp-block-image is-style-rounded"> <figure class="aligncenter size-full"><img decoding="async" width="600" height="338" src="https://developer-blogs.nvidia.com/wp-content/uploads/2024/06/Isaac-Perception.gif" alt="A GIF that shows how a robot is navigating using multiple camera angles. " class="wp-image-83318"/><figcaption class="wp-element-caption"><em>Figure 2. Isaac ROS Visual SLAM with one camera compared to two cameras and then four cameras</em></figcaption></figure></div> <h4 class="wp-block-heading">Real-time, multi-camera voxel grid mapping</h4> <p>At the core of the Isaac Perceptor is <a href="https://nvidia-isaac-ros.github.io/concepts/scene_reconstruction/nvblox/index.html" data-wpel-link="external" target="_blank" rel="follow external noopener">nvblox</a>, the CUDA-accelerated 3D reconstruction library that can identify obstacles up to five meters away to provide a 2D costmap and update them in under 300 ms. </p> <p><a href="https://nvidia-isaac-ros.github.io/repositories_and_packages/isaac_ros_nvblox/index.html#" data-wpel-link="external" target="_blank" rel="follow external noopener">Isaac ROS nvblox</a> provides ROS 2 packages for 3D scene reconstruction and local obstacle costmap generation for navigation. This package can be used for stationary environments and scenes with people and mobile objects.</p> <p>What’s new in this release is multiple-camera support for expanded coverage using up to three HAWK cameras, providing about a 270° field of view. </p> <p>For more information, visit the <a href="https://isaac_ros.gitlab-master-pages.nvidia.com/isaac_ros_docs/repositories_and_packages/isaac_ros_nvblox/index.html" data-wpel-link="internal" target="_blank" rel="follow noopener">Isaac ROS nvblox documentation</a>.</p> <div class="wp-block-image"> <figure class="aligncenter size-full is-resized"><img loading="lazy" decoding="async" width="580" height="270" src="https://developer-blogs.nvidia.com/wp-content/uploads/2024/05/Nvblox.gif" alt="A GIF showing voxel 3D reconstruction of a warehouse using Nvblox. The visualization highlights Isaac ROS Nvblox also reconstructing overhanging obstacles during navigation. " class="wp-image-83284" style="width:672px;height:auto"/><figcaption class="wp-element-caption"><em>Figure 3. Voxel 3D reconstruction using Isaac ROS Nvblox, including reconstruction of overhanging obstacles</em></figcaption></figure></div> <h4 class="wp-block-heading">NVIDIA Nova Orin Developer Kit </h4> <p>This developer kit, featuring the NVIDIA Jetson AGX Orin, supports up to six cameras, including up to three stereo and three fisheye cameras, with intra-camera latency of under 100 microseconds.</p> <p>The stereo cameras boast a resolution of 2MP per camera, with a field of view of 110X70, suitable for 3D occupancy grid mapping, depth perception, visual odometry, and people detection. Purchase a Nova Orin developer kit from <a href="https://robotics.segway.com/nova-dev-kit/" data-wpel-link="external" target="_blank" rel="follow external noopener">Segway</a> or <a href="https://leopardimaging.com/product/platform-partners/nvidia/nova-orin-development-kit/nova-developer-kit/" data-wpel-link="external" target="_blank" rel="follow external noopener">Leopard Imaging</a> to use Isaac Perceptor.</p> <p>Isaac Perceptor has a reference graph supporting up to three stereo cameras on this Developer Kit. With enhanced modularity with ROS 2 packages, this release also features a reference integration with <a href="https://nav2.org/" data-wpel-link="external" target="_blank" rel="follow external noopener">Nav2</a> on the Nova Carter reference robot.</p> <h4 class="wp-block-heading">Enhanced compatibility with cameras and sensors</h4> <p>Isaac Perceptor brings enhanced support for integration with camera and sensor partners. <a href="https://www.orbbec.com/news/orbbec-gemini-330-series-stereo-vision-cameras-integrated-with-nvidia-isaac-robotics-platform/" target="_blank" rel="noreferrer noopener follow external" data-wpel-link="external">Orbbec</a> successfully integrated its <a href="https://youtu.be/jpbjC_9eQEI?feature=shared" data-wpel-link="external" target="_blank" rel="follow external noopener">Gemini 335L</a> camera with NVIDIA Isaac Perceptor components. This integration is demonstrated on the NVIDIA Jetson AGX Orin using Isaac ROS Visual SLAM and Nvblox. </p> <p><a href="https://bit.ly/4bBs99c" data-wpel-link="external" target="_blank" rel="follow external noopener">LIPS</a> also successfully integrated its AE450 camera with the Isaac Perceptor component, Nvblox. </p> <h2 id="nvidia_isaac_manipulator " class="wp-block-heading">NVIDIA Isaac Manipulator <a href="#nvidia_isaac_manipulator " class="heading-anchor-link"><i class="fas fa-link"></i></a></h2> <p>Isaac Manipulator is a workflow of NVIDIA-accelerated libraries and AI models. It enables developers to bring AI acceleration to robotic arms, or manipulators, that can seamlessly perceive, understand, and interact with their environments.</p> <p>Its foundation models and accelerated libraries can be integrated as independent modules or as an entire workflow in solutions development. Along with independent, modular components, developers are also provided sample workflows (ROS 2 launch scripts) that combine Isaac Manipulator components for a full end-to-end reference integration. </p> <div class="wp-block-image"> <figure class="aligncenter size-full is-resized"><img decoding="async" src="https://developer-blogs.nvidia.com/wp-content/uploads/2024/05/Isaac-Manipulator-workflow.png" alt="A block diagram showing an Isaac Manipulator optimized workflow using NVIDIA components including SyntheticaDETR for object detection, FoundationPose for pose estimation, ESS depth estimation, NVBlox voxel mapping, and cuMotion for trajectory planning. " class="wp-image-83285" style="width:851px;height:auto"/><figcaption class="wp-element-caption"><em>Figure 4. An example of an Isaac Manipulator workflow leveraging NVIDIA components (in green)</em></figcaption></figure></div> <p>Isaac Manipulator early collaborators include robotic developer platform companies, OEMs, and ISVs/SIs, including <a href="https://www.intrinsic.ai/blog/posts/unlocking-new-value-in-industrial-automation-with-ai" data-wpel-link="external" target="_blank" rel="follow external noopener">Intrinsic</a> (an Alphabet company), <a href="https://nvidianews.nvidia.com/news/robotics-industry-development-ai-autonomous-machines" data-wpel-link="internal" target="_blank" rel="follow noopener">Siemens</a>, <a href="https://supr.link/Tl95g" data-wpel-link="external" target="_blank" rel="follow external noopener">Solomon</a>, <a href="https://www.tm-robot.com/en/tm-news-post/techman-robot-to-showcase-ai-robots-built-on-nvidia-isaac-at-computex/" data-wpel-link="external" target="_blank" rel="follow external noopener">Techman Robot</a>, <a href="https://investors.teradyne.com/news/teradyne-robotics-to-bring-the-power-of-ai-to-robotics-with-nvidia/f89e3bc0-1345-4627-9349-569db0a6b88d" data-wpel-link="external" target="_blank" rel="follow external noopener">Teradyne Robotics</a>, <a href="https://vention.io/press" data-wpel-link="external" target="_blank" rel="follow external noopener">Vention</a>, and <a href="https://www.yaskawa-global.com/" data-wpel-link="external" target="_blank" rel="follow external noopener">Yaskawa</a>. </p> <h3 id="key_features_of_isaac_manipulator" class="wp-block-heading">Key features of Isaac Manipulator<a href="#key_features_of_isaac_manipulator" class="heading-anchor-link"><i class="fas fa-link"></i></a></h3> <p>Isaac Manipulator brings AI features to accelerate the development of robotic arms. </p> <h4 class="wp-block-heading">cuMotion for faster path planning</h4> <p>This GPU-accelerated motion planner helps reduce cycle times. cuMotion is available as a plugin for the <a href="https://moveit.ros.org/" data-wpel-link="external" target="_blank" rel="follow external noopener">MoveIt 2 motion planning framework</a>, an open-source project developed by an international community and led by PickNik Robotics.</p> <p>cuMotion runs trajectory optimization across several seeds in parallel and returns the best solution.</p> <div class="wp-block-image"> <figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="320" height="240" src="https://developer-blogs.nvidia.com/wp-content/uploads/2024/05/cuMotion.gif" alt="A GIF showing a UR10 robot arm in motion using the NVIDIA cuMotion plugin with MoveIt2." class="wp-image-83287"/><figcaption class="wp-element-caption"><em>Figure 5. NVIDIA cuMotion plugin to PickNik’s MoveIt 2</em></figcaption></figure></div> <p>Solomon, a leader in advanced vision and robotics solutions, is an Isaac Manipulator early collaborator. Their bin-picking system enhanced by Isaac Manipulator cuMotion delivered eight times faster path planning and reduced path singularity occurrences by 50% compared to conventional algorithms. </p> <figure class="wp-block-table aligncenter"><table><tbody><tr><td><strong>Metric</strong></td><td><strong>Improvement Ratio (%)</strong></td></tr><tr><td>Success Rate Improvement</td><td>346.43</td></tr><tr><td>Move Time Reduction</td><td>55.50</td></tr><tr><td>Trajectory Length Reduction</td><td>42.27</td></tr><tr><td>Trajectory Planning Time Reduction</td><td>816.66</td></tr></tbody></table><figcaption class="wp-element-caption"><em>Table 2. Performance enhancements in Solomon’s Bin Picking System with Isaac Manipulator. Solomon experienced significant improvements in success rate, move time, trajectory length, and planning time, with reductions in path singularity occurrences. Data provided by Solomon</em></figcaption></figure> <h4 class="wp-block-heading">FoundationPose</h4> <p><a href="https://nvidia-isaac-ros.github.io/concepts/pose_estimation/foundationpose/index.html" data-wpel-link="external" target="_blank" rel="follow external noopener">FoundationPose</a> is a new unified foundation model for single-shot 6D pose estimation and tracking of novel objects. This model is designed to work with high accuracy in applications that encounter previously unseen objects, without fine-tuning.</p> <p>FoundationPose is currently at the top of the <a href="https://bop.felk.cvut.cz/leaderboards/pose-estimation-unseen-bop23/core-datasets/" data-wpel-link="external" target="_blank" rel="follow external noopener">2023 BOP Leaderboard</a> for 6D localization of unseen objects. It is robust to occlusions, rapid motion, and diverse object properties like texture and scale, ensuring reliable performance across scenarios. Developers can generate realistic views of the object from any angle. Get the Foundation Pose model from <a href="https://nvidia-isaac-ros.github.io/repositories_and_packages/isaac_ros_pose_estimation/index.html" data-wpel-link="external" target="_blank" rel="follow external noopener">GitHub</a>.</p> <div class="wp-block-image"> <figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="600" height="360" src="https://developer-blogs.nvidia.com/wp-content/uploads/2024/05/FoundationPose.gif" alt="A GIF showing pose estimation and tracking using FoundationPose. The visualization shows five objects on a table with accurate 3D poses and bounding boxes around them. " class="wp-image-83289"/><figcaption class="wp-element-caption"><em>Figure 6. Pose estimation and tracking using NVIDIA FoundationPose</em></figcaption></figure></div> <h4 class="wp-block-heading">SyntheticaDETR</h4> <p>SyntheticaDETR is a set of Real-Time DEtection TRansformer (DETRs)-based models for single-shot, image space object detection trained on synthetic data generated using <a href="https://www.nvidia.com/en-us/omniverse/" data-wpel-link="internal" target="_blank" rel="follow noopener">NVIDIA Omniverse</a>. It implements a more efficient approach to traditional object detectors by predicting all objects at once using a transformer encoder-decoder architecture.</p> <div class="wp-block-image"> <figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="384" height="290" src="https://developer-blogs.nvidia.com/wp-content/uploads/2024/05/SyntheticaDETR.gif" alt="A GIF showing pose estimation and tracking using SyntheticaDETR." class="wp-image-83291"/><figcaption class="wp-element-caption"><em>Figure 7. Object detection and tracking using SyntheticaDETR</em></figcaption></figure></div> <p>Trained on synthetic and real-world data, SyntheticaDETR is at the top of the <a href="https://bop.felk.cvut.cz/leaderboards/detection-bop22/ycb-v/" data-wpel-link="external" target="_blank" rel="follow external noopener">BOP leaderboard</a> for 2D detection for seen objects on the YCB-Video dataset (with a mean average precision of 0.885 and a mean average recall of 0.903).</p> <p>These models can also detect objects as a 2D bounding box region-of-interest for pose estimators like NVIDIA FoundationPose. Download the <a href="https://catalog.ngc.nvidia.com/orgs/nvidia/teams/isaac/models/synthetica_detr" data-wpel-link="internal" target="_blank" rel="follow noopener">SyntheticaDETR mode</a>l and download <a href="https://developer.nvidia.com/isaac/manipulator" data-wpel-link="internal" target="_blank" rel="follow noopener">Isaac Manipulator</a>.</p> <h4 class="wp-block-heading">NVIDIA JetPack 6.0</h4> <p>NVIDIA Isaac ROS 3.0 is compatible with <a href="https://developer.nvidia.com/embedded/jetpack" data-wpel-link="internal" target="_blank" rel="follow noopener">JetPack 6.0</a> and is supported on all NVIDIA <a href="https://www.nvidia.com/en-us/autonomous-machines/embedded-systems/jetson-orin/" data-wpel-link="internal" target="_blank" rel="follow noopener">Jetson Orin</a> modules and developer kits. </p> <p>Modular, API-driven services to build generative AI and robotics applications faster and easier are coming soon with NVIDIA Jetson Platform Services. These pre-built and customizable services are designed to accelerate AI application development on NVIDIA Jetson Orin system-on-modules. </p> <h2 id="nvidia_isaac_sim_40" class="wp-block-heading">NVIDIA Isaac Sim 4.0<a href="#nvidia_isaac_sim_40" class="heading-anchor-link"><i class="fas fa-link"></i></a></h2> <p>Using Isaac Sim, developers can generate synthetic data and diverse, virtual complex test environments with industry-leading sensor and robot-type testing. This enables highly realistic simulations for testing thousands of robots simultaneously in real time. </p> <h4 class="wp-block-heading">NVIDIA Isaac Lab </h4> <p><a href="https://developer.nvidia.com/isaac/sim#isaac-lab" data-wpel-link="internal" target="_blank" rel="follow noopener">Isaac Lab</a> is a lightweight reference application built on the Isaac Sim platform and plays a pivotal role in robot foundation model training. It supports reinforcement learning, imitation learning, and transfer learning. It can train a wide range of robot embodiments, for developers to explore designs and functionalities.</p> <p>The new release also provides ease of use with VSCode integration with a compatibility checker, multi-GPU support for reinforcement learning, performance improvements with RTX sensor tiled rendering, optimized cache, and shader management.</p> <p>Additional new features in Isaac Sim include:</p> <ul class="wp-block-list"> <li>Ease of use with PIP installation and a wizard for importing robots and more.</li> <li>Improved performance with up to 80% faster synthetic data generation (SDG)</li> <li>New SDG formats that support the COCO format and custom writer for pose estimation.</li> <li>ROS 2 launch support with an end-to-end workflow and better performance for image-based publishers.</li> <li>More built-in robots support: including Universal Robots UR20 and UR30 and Boston Dynamics Spot. There’s also a host of humanoids including the 1X Neo, Unitree H1, Agility Digit, Fourier Intelligence GR1, Sanctuary A1 Phoenix, and XiaoPeng PX5.</li> </ul> <h2 id="get_started_today" class="wp-block-heading">Get started today<a href="#get_started_today" class="heading-anchor-link"><i class="fas fa-link"></i></a></h2> <p>Developers can get started by downloading <a href="https://developer.nvidia.com/isaac/ros" data-wpel-link="internal" target="_blank" rel="follow noopener">Isaac ROS</a>, <a href="https://developer.nvidia.com/isaac/perceptor" data-wpel-link="internal" target="_blank" rel="follow noopener">Isaac Perceptor</a>, <a href="https://developer.nvidia.com/isaac/manipulator" data-wpel-link="internal" target="_blank" rel="follow noopener">Isaac Manipulator</a>, and <a href="https://developer.nvidia.com/isaac/sim" data-wpel-link="internal" target="_blank" rel="follow noopener">Isaac Sim</a>. </p> <p>Additional Resources:</p> <ul class="wp-block-list"> <li>See the latest <a href="https://nvidia-isaac-ros.github.io/releases/index.html" data-wpel-link="external" target="_blank" rel="follow external noopener">release notes</a> and <a href="https://nvidia-isaac-ros.github.io/index.html" data-wpel-link="external" target="_blank" rel="follow external noopener">documentation</a> for Isaac ROS.</li> <li>Learn more about Isaac ROS from <a href="https://forums.developer.nvidia.com/c/agx-autonomous-machines/isaac/isaac-ros/600" data-wpel-link="internal" target="_blank" rel="follow noopener">developer forums</a>, <a href="https://gateway.on24.com/wcc/experience/elitenvidiabrill/1407606/3998202/isaac-ros-webinar-series?partner-ref=product-page" data-wpel-link="external" target="_blank" rel="follow external noopener">technical on-demand webinars</a>, and <a href="https://nvda.ws/4chMvF6" data-wpel-link="external" target="_blank" rel="follow external noopener">Isaac ROS office hours</a>.</li> </ul> </div> <div class="block--prospero-assets"> <h2 class="h--smaller txt-clr--blck"> Related resources </h2> <ul><li>GTC session: <a class='wpel-ignore' target='_blank' href='https://www.nvidia.com/gtc/session-catalog/?tab.catalogallsessionstab=1700692987788001F1cG&search=S61706&ncid=em-even-124008-vt33-23spring#/'>Full Product Life Cycle Powered by Isaac Sim</a></li><li>GTC session: <a class='wpel-ignore' target='_blank' href='https://www.nvidia.com/gtc/session-catalog/?tab.catalogallsessionstab=1700692987788001F1cG&search=DLIT61534&ncid=em-even-124008-vt33-23spring#/'>Elevate Your Robotics Game: Unleash High Performance with Isaac ROS & Isaac SIM</a></li><li>NGC Containers: <a class='wpel-ignore' target='_blank' href='https://catalog.ngc.nvidia.com/orgs/nvidia/containers/isaac-sim?ncid=em-nurt-245273-vt33'>Isaac Sim</a></li><li>SDK: <a class='wpel-ignore' target='_blank' href='https://docs.omniverse.nvidia.com/isaacsim/latest/isaac_lab_tutorials/index.html?ncid=em-nurt-245273-vt33'>Isaac Lab</a></li><li>SDK: <a class='wpel-ignore' target='_blank' href='https://developer.nvidia.com/isaac-sim?ncid=em-nurt-245273-vt33'>Isaac Sim</a></li><li>SDK: <a class='wpel-ignore' target='_blank' href='https://developer.nvidia.com/isaac-ros-gems?ncid=em-nurt-245273-vt33'>Isaac ROS</a></li></ul> </div> <div class="card--post-attributes-secondary"> <div class="post--comments-count secondary--attribute"> <a href="#entry-content-comments"> <i class="fad fa-comment-alt-lines"></i> Discuss (0) </a> </div> <div class="post--rate secondary--attribute"> <div class="wpulike wpulike-heart " ><div class="wp_ulike_general_class wp_ulike_is_not_liked"><button type="button" aria-label="Like Button" data-ulike-id="83281" data-ulike-nonce="eb700da6f0" data-ulike-type="post" data-ulike-template="wpulike-heart" data-ulike-display-likers="" data-ulike-likers-style="popover" class="wp_ulike_btn wp_ulike_put_text wp_post_btn_83281"><span><i class="far fa-thumbs-up"></i></span> </button><span class="count-box wp_ulike_counter_up" data-ulike-counter-value="+15"></span> </div></div> <span class="js-like-click like-click"> Like </span> </div> </div> <div class="card--post-attributes-secondary tags"> <div class="caption"> <h2 class="h--smaller txt-clr--blck">Tags</h2> </div> <div class="content-s post-tags--list mt-0"> <a href="https://developer.nvidia.com/blog/category/robotics/" data-wpel-link="internal" target="_blank" rel="follow noopener">Robotics</a> | <a href="https://developer.nvidia.com/blog/recent-posts/?industry=Architecture+%2F+Engineering+%2F+Construction" data-wpel-link="internal" target="_blank" rel="follow noopener">Architecture / Engineering / Construction</a> | <a href="https://developer.nvidia.com/blog/recent-posts/?products=Isaac+Sim" data-wpel-link="internal" target="_blank" rel="follow noopener">Isaac Sim</a> | <a href="https://developer.nvidia.com/blog/recent-posts/?products=Jetson" data-wpel-link="internal" target="_blank" rel="follow noopener">Jetson</a> | <a href="https://developer.nvidia.com/blog/recent-posts/?learning_levels=Intermediate+Technical" data-wpel-link="internal" target="_blank" rel="follow noopener">Intermediate Technical</a> | <a href="https://developer.nvidia.com/blog/recent-posts/?content_types=Deep+dive" data-wpel-link="internal" target="_blank" rel="follow noopener">Deep dive</a> | <a href="https://developer.nvidia.com/blog/tag/featured/" data-wpel-link="internal" target="_blank" rel="follow noopener">featured</a> | <a href="https://developer.nvidia.com/blog/tag/isaac-ros/" data-wpel-link="internal" target="_blank" rel="follow noopener">Isaac ROS</a> | <a href="https://developer.nvidia.com/blog/tag/perception/" data-wpel-link="internal" target="_blank" rel="follow noopener">Robot Perception</a> </div> </div> <div class="post-authors-list"> <div class="entry-content-author"> <div class="caption"> <h2 class="h--smaller txt-clr--blck"> About the Authors </h2> </div> <div class="media author-info"> <div class="author-media-left media-left"> <img alt='Avatar photo' src='https://developer-blogs.nvidia.com/wp-content/uploads/2020/11/asawaree-131x131.png' srcset='https://developer-blogs.nvidia.com/wp-content/uploads/2020/11/asawaree-262x262.png 2x' class='avatar avatar-131 photo' height='131' width='131' loading='lazy' decoding='async'/> </div> <div class="author-media-body media-body"> <b> About Asawaree Bhide </b> <br/> Asawaree Bhide is a technical marketing engineer at NVIDIA, working on robotics and deep learning applications on the Jetson platform. She did her master’s in computer science at Georgia Tech and is interested in solving complex perception tasks in autonomous navigation for embodied agents. <div id="author-link"> <a href="https://developer.nvidia.com/blog/author/asawareeb/" rel="author follow noopener" data-wpel-link="internal" target="_blank"> View all posts by Asawaree Bhide<svg width="16" height="16" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 612"><path d="M305 239c9.4 9.4 9.4 24.6 0 33.9L113 465c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l175-175L79 81c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0L305 239z"/></svg> </a> </div> </div> </div> <div class="media author-info"> <div class="author-media-left media-left"> <img alt='Avatar photo' src='https://developer-blogs.nvidia.com/wp-content/uploads/2024/03/Spencer-Huang-131x131.jpg' srcset='https://developer-blogs.nvidia.com/wp-content/uploads/2024/03/Spencer-Huang-262x262.jpg 2x' class='avatar avatar-131 photo' height='131' width='131' loading='lazy' decoding='async'/> </div> <div class="author-media-body media-body"> <b> About Spencer Huang </b> <br/> Spencer Huang is a product manager at NVIDIA with a focus on building cloud native technologies to simplify and accelerate the adoption of robotics simulation applications. His work includes scaling simulation workloads, such as synthetic data generation and validation and testing pipelines. Prior to NVIDIA, Spencer received a technical MBA from NYU with a focus on AI. <div id="author-link"> <a href="https://developer.nvidia.com/blog/author/spencerh/" rel="author follow noopener" data-wpel-link="internal" target="_blank"> View all posts by Spencer Huang<svg width="16" height="16" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 612"><path d="M305 239c9.4 9.4 9.4 24.6 0 33.9L113 465c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l175-175L79 81c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0L305 239z"/></svg> </a> </div> </div> </div> <div class="media author-info"> <div class="author-media-left media-left"> <img alt='Avatar photo' src='https://developer-blogs.nvidia.com/wp-content/uploads/2024/06/cropped-Shri-Sundaram-NVIDIA-bio-photo-131x131.jpg' srcset='https://developer-blogs.nvidia.com/wp-content/uploads/2024/06/cropped-Shri-Sundaram-NVIDIA-bio-photo.jpg 2x' class='avatar avatar-131 photo' height='131' width='131' loading='lazy' decoding='async'/> </div> <div class="author-media-body media-body"> <b> About Shri Sundaram </b> <br/> Shri Sundaram leads product management of NVIDIA's Isaac Robotics Platform. Previously he was responsible for NVIDIA DRIVE AI Car computer and software products for NVIDIA SHIELD. <div id="author-link"> <a href="https://developer.nvidia.com/blog/author/shrisundaram/" rel="author follow noopener" data-wpel-link="internal" target="_blank"> View all posts by Shri Sundaram<svg width="16" height="16" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 612"><path d="M305 239c9.4 9.4 9.4 24.6 0 33.9L113 465c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l175-175L79 81c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0L305 239z"/></svg> </a> </div> </div> </div> <div class="media author-info"> <div class="author-media-left media-left"> <img alt='Avatar photo' src='https://developer.nvidia.com/blog/wp-content/uploads/2018/11/Amulya-Vishwanath_avatar_1541957626.jpg' srcset='https://developer.nvidia.com/blog/wp-content/uploads/2018/11/Amulya-Vishwanath_avatar_1541957626.jpg 2x' class='avatar avatar-131 photo' height='131' width='131' loading='lazy' decoding='async'/> </div> <div class="author-media-body media-body"> <b> About Amulya Vishwanath </b> <br/> Amulya Vishwanath is a developer marketing lead for Deep Learning and Vision AI at NVIDIA. Amulya drives key product marketing initiatives and launches new and innovative developer-friendly software products. Before NVIDIA, Amulya drove software product marketing for AI inference in data center solutions at semiconductor companies. Amulya has a master’s degree in electrical engineering and management of technology from the University of Minnesota Twin Cities. <div id="author-link"> <a href="https://developer.nvidia.com/blog/author/amulyav/" rel="author follow noopener" data-wpel-link="internal" target="_blank"> View all posts by Amulya Vishwanath<svg width="16" height="16" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 612"><path d="M305 239c9.4 9.4 9.4 24.6 0 33.9L113 465c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l175-175L79 81c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0L305 239z"/></svg> </a> </div> </div> </div> </div> </div> <div class="entry-content-comments" id="entry-content-comments"> <div class="container" id="pf-disqus-thread"> <div class="row" id="respond"> <div class="col-md-12 related-posts-comments mb-0"><h2 class="h--smaller txt-clr--blck mb-0">Comments</h2></div> </div> <div class="row"> <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12"> <div class="wpdc-comments-loading" id="wpdc-comments" data-post-id="83281"></div> </div> </div> </div> </div> <div id="main-content-end"></div> </div> <div id="sidebar" class="sidebar col-lg-3 col-md-3 mt-0"> <div class="sticky-top-pre"></div> <div class="sidebar-item not-sticky-top"> <div id="sidebar-content" class="sidebar__inner"> <script> window.is_post_page = true; window.nv_homepage_url = 'https://developer.nvidia.com/blog'; </script> <div class="block--related-posts prspr-related" data-source="nv"> <h2 class="h--smaller txt-clr--blck">Related posts</h2> <div class="carousel-row__slide js-post-card related-post--row" data-post-id="59234" data-post-title="Simulating Intelligent Robots of the Future with NVIDIA Isaac Sim 2022.2"> <div class="carousel-row-slide__inner"> <div class="carousel-row-slide__thumbnail"> <img width="1920" height="1080" src="https://developer-blogs.nvidia.com/wp-content/uploads/2023/01/isaac-sim-warehouse-simulation-featured.jpg" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://developer-blogs.nvidia.com/wp-content/uploads/2023/01/isaac-sim-warehouse-simulation-featured.jpg 1920w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/01/isaac-sim-warehouse-simulation-featured-300x169.jpg 300w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/01/isaac-sim-warehouse-simulation-featured-625x352.jpg 625w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/01/isaac-sim-warehouse-simulation-featured-179x101.jpg 179w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/01/isaac-sim-warehouse-simulation-featured-768x432.jpg 768w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/01/isaac-sim-warehouse-simulation-featured-1536x864.jpg 1536w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/01/isaac-sim-warehouse-simulation-featured-500x281.jpg 500w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/01/isaac-sim-warehouse-simulation-featured-160x90.jpg 160w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/01/isaac-sim-warehouse-simulation-featured-362x204.jpg 362w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/01/isaac-sim-warehouse-simulation-featured-196x110.jpg 196w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/01/isaac-sim-warehouse-simulation-featured-1024x576.jpg 1024w" sizes="(max-width: 1920px) 100vw, 1920px" /> </div> <div class="carousel-row-slide__content"> <div class="carousel-row-slide__title"> <h3 class="h--smallest carousel-row-slide__heading"> Simulating Intelligent Robots of the Future with NVIDIA Isaac Sim 2022.2 </h3> </div> </div> <a href="https://developer.nvidia.com/blog/simulating-intelligent-robots-of-the-future-with-isaac-sim-2022-2/" class="carousel-row-slide__link" data-wpel-link="internal" target="_blank" rel="follow noopener"> <span class="visually-hidden">Simulating Intelligent Robots of the Future with NVIDIA Isaac Sim 2022.2</span> </a> </div> </div> <div class="carousel-row__slide js-post-card related-post--row" data-post-id="32502" data-post-title="Develop Robotics Applications - Top Resources from GTC 21"> <div class="carousel-row-slide__inner"> <div class="carousel-row-slide__thumbnail"> <img width="1000" height="600" src="https://developer-blogs.nvidia.com/wp-content/uploads/2021/06/NVIDIA-Isaac-SDK-featured.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://developer-blogs.nvidia.com/wp-content/uploads/2021/06/NVIDIA-Isaac-SDK-featured.png 1000w, https://developer-blogs.nvidia.com/wp-content/uploads/2021/06/NVIDIA-Isaac-SDK-featured-300x180.png 300w, https://developer-blogs.nvidia.com/wp-content/uploads/2021/06/NVIDIA-Isaac-SDK-featured-625x375.png 625w, https://developer-blogs.nvidia.com/wp-content/uploads/2021/06/NVIDIA-Isaac-SDK-featured-179x107.png 179w, https://developer-blogs.nvidia.com/wp-content/uploads/2021/06/NVIDIA-Isaac-SDK-featured-768x461.png 768w, https://developer-blogs.nvidia.com/wp-content/uploads/2021/06/NVIDIA-Isaac-SDK-featured-500x300.png 500w, https://developer-blogs.nvidia.com/wp-content/uploads/2021/06/NVIDIA-Isaac-SDK-featured-150x90.png 150w, https://developer-blogs.nvidia.com/wp-content/uploads/2021/06/NVIDIA-Isaac-SDK-featured-362x217.png 362w, https://developer-blogs.nvidia.com/wp-content/uploads/2021/06/NVIDIA-Isaac-SDK-featured-183x110.png 183w" sizes="(max-width: 1000px) 100vw, 1000px" /> </div> <div class="carousel-row-slide__content"> <div class="carousel-row-slide__title"> <h3 class="h--smallest carousel-row-slide__heading"> Develop Robotics Applications - Top Resources from GTC 21 </h3> </div> </div> <a href="https://developer.nvidia.com/blog/develop-robotics-applications-top-5-resources-from-gtc-21/" class="carousel-row-slide__link" data-wpel-link="internal" target="_blank" rel="follow noopener"> <span class="visually-hidden">Develop Robotics Applications - Top Resources from GTC 21</span> </a> </div> </div> <div class="carousel-row__slide js-post-card related-post--row" data-post-id="29266" data-post-title="Introducing Isaac SDK and Sim 2020.1"> <div class="carousel-row-slide__inner"> <div class="carousel-row-slide__thumbnail"> <img width="251" height="151" src="https://developer-blogs.nvidia.com/wp-content/uploads/2020/06/isaac_new_feature.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://developer-blogs.nvidia.com/wp-content/uploads/2020/06/isaac_new_feature.png 251w, https://developer-blogs.nvidia.com/wp-content/uploads/2020/06/isaac_new_feature-179x108.png 179w, https://developer-blogs.nvidia.com/wp-content/uploads/2020/06/isaac_new_feature-150x90.png 150w, https://developer-blogs.nvidia.com/wp-content/uploads/2020/06/isaac_new_feature-183x110.png 183w" sizes="(max-width: 251px) 100vw, 251px" /> </div> <div class="carousel-row-slide__content"> <div class="carousel-row-slide__title"> <h3 class="h--smallest carousel-row-slide__heading"> Introducing Isaac SDK and Sim 2020.1 </h3> </div> </div> <a href="https://developer.nvidia.com/blog/introducing-isaac-sdk-2020-1/" class="carousel-row-slide__link" data-wpel-link="internal" target="_blank" rel="follow noopener"> <span class="visually-hidden">Introducing Isaac SDK and Sim 2020.1</span> </a> </div> </div> <div class="carousel-row__slide js-post-card related-post--row" data-post-id="29243" data-post-title="BMW Group Selects NVIDIA to Redefine Factory Logistics"> <div class="carousel-row-slide__inner"> <div class="carousel-row-slide__thumbnail"> <img width="251" height="151" src="https://developer-blogs.nvidia.com/wp-content/uploads/2020/04/BMW_feature_new.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://developer-blogs.nvidia.com/wp-content/uploads/2020/04/BMW_feature_new.png 251w, https://developer-blogs.nvidia.com/wp-content/uploads/2020/04/BMW_feature_new-179x108.png 179w, https://developer-blogs.nvidia.com/wp-content/uploads/2020/04/BMW_feature_new-150x90.png 150w, https://developer-blogs.nvidia.com/wp-content/uploads/2020/04/BMW_feature_new-183x110.png 183w" sizes="(max-width: 251px) 100vw, 251px" /> </div> <div class="carousel-row-slide__content"> <div class="carousel-row-slide__title"> <h3 class="h--smallest carousel-row-slide__heading"> BMW Group Selects NVIDIA to Redefine Factory Logistics </h3> </div> </div> <a href="https://developer.nvidia.com/blog/bmw-group-selects-nvidia-to-redefine-factory-logistics/" class="carousel-row-slide__link" data-wpel-link="internal" target="_blank" rel="follow noopener"> <span class="visually-hidden">BMW Group Selects NVIDIA to Redefine Factory Logistics</span> </a> </div> </div> <div class="carousel-row__slide js-post-card related-post--row" data-post-id="13577" data-post-title="NVIDIA Isaac SDK Now Available for Download to Kickstart Robotics Development"> <div class="carousel-row-slide__inner"> <div class="carousel-row-slide__thumbnail"> <img width="251" height="151" src="https://developer-blogs.nvidia.com/wp-content/uploads/2019/04/Isaac_Feature.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" decoding="async" loading="lazy" /> </div> <div class="carousel-row-slide__content"> <div class="carousel-row-slide__title"> <h3 class="h--smallest carousel-row-slide__heading"> NVIDIA Isaac SDK Now Available for Download to Kickstart Robotics Development </h3> </div> </div> <a href="https://developer.nvidia.com/blog/nvidia-isaac-sdk-download/" class="carousel-row-slide__link" data-wpel-link="internal" target="_blank" rel="follow noopener"> <span class="visually-hidden">NVIDIA Isaac SDK Now Available for Download to Kickstart Robotics Development</span> </a> </div> </div> </div> <div class="block--related-posts hide" data-source="wp"> <h2 class="h--smaller txt-clr--blck">Related posts</h2> <div class="carousel-row__slide js-post-card related-post--row" data-post-id="85684" data-post-title="Webinar: Improving Robot Uptime Featuring Nav2 Autonomous Docking with NVIDIA Isaac ROS"> <div class="carousel-row-slide__inner"> <div class="carousel-row-slide__thumbnail"> <img width="1480" height="830" src="https://developer-blogs.nvidia.com/wp-content/uploads/2024/07/isaac-robotics-social-autonomous-docking-nav2-for-ros-1480x830-1.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://developer-blogs.nvidia.com/wp-content/uploads/2024/07/isaac-robotics-social-autonomous-docking-nav2-for-ros-1480x830-1.png 1480w, https://developer-blogs.nvidia.com/wp-content/uploads/2024/07/isaac-robotics-social-autonomous-docking-nav2-for-ros-1480x830-1-300x168.png 300w, https://developer-blogs.nvidia.com/wp-content/uploads/2024/07/isaac-robotics-social-autonomous-docking-nav2-for-ros-1480x830-1-625x351.png 625w, https://developer-blogs.nvidia.com/wp-content/uploads/2024/07/isaac-robotics-social-autonomous-docking-nav2-for-ros-1480x830-1-179x100.png 179w, https://developer-blogs.nvidia.com/wp-content/uploads/2024/07/isaac-robotics-social-autonomous-docking-nav2-for-ros-1480x830-1-768x431.png 768w, https://developer-blogs.nvidia.com/wp-content/uploads/2024/07/isaac-robotics-social-autonomous-docking-nav2-for-ros-1480x830-1-645x362.png 645w, https://developer-blogs.nvidia.com/wp-content/uploads/2024/07/isaac-robotics-social-autonomous-docking-nav2-for-ros-1480x830-1-500x280.png 500w, https://developer-blogs.nvidia.com/wp-content/uploads/2024/07/isaac-robotics-social-autonomous-docking-nav2-for-ros-1480x830-1-160x90.png 160w, https://developer-blogs.nvidia.com/wp-content/uploads/2024/07/isaac-robotics-social-autonomous-docking-nav2-for-ros-1480x830-1-362x203.png 362w, https://developer-blogs.nvidia.com/wp-content/uploads/2024/07/isaac-robotics-social-autonomous-docking-nav2-for-ros-1480x830-1-196x110.png 196w, https://developer-blogs.nvidia.com/wp-content/uploads/2024/07/isaac-robotics-social-autonomous-docking-nav2-for-ros-1480x830-1-1024x574.png 1024w" sizes="(max-width: 1480px) 100vw, 1480px" /> </div> <div class="carousel-row-slide__content"> <div class="carousel-row-slide__title"> <h3 class="h--smallest carousel-row-slide__heading"> Webinar: Improving Robot Uptime Featuring Nav2 Autonomous Docking with NVIDIA Isaac ROS </h3> </div> </div> <a href="https://nvda.ws/46cFZNC#new_tab" class="carousel-row-slide__link" data-wpel-link="external" target="_blank" rel="follow external noopener"> <span class="visually-hidden">Webinar: Improving Robot Uptime Featuring Nav2 Autonomous Docking with NVIDIA Isaac ROS</span> </a> </div> </div> <div class="carousel-row__slide js-post-card related-post--row" data-post-id="75640" data-post-title="Generate Synthetic Data for Deep Object Pose Estimation Training with NVIDIA Isaac ROS"> <div class="carousel-row-slide__inner"> <div class="carousel-row-slide__thumbnail"> <img width="1480" height="832" src="https://developer-blogs.nvidia.com/wp-content/uploads/2023/12/Isaac-ROS-DOPE.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="An image of the inside of an industrial manufacturing building." decoding="async" loading="lazy" srcset="https://developer-blogs.nvidia.com/wp-content/uploads/2023/12/Isaac-ROS-DOPE.png 1480w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/12/Isaac-ROS-DOPE-300x169.png 300w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/12/Isaac-ROS-DOPE-625x351.png 625w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/12/Isaac-ROS-DOPE-179x101.png 179w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/12/Isaac-ROS-DOPE-768x432.png 768w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/12/Isaac-ROS-DOPE-645x363.png 645w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/12/Isaac-ROS-DOPE-960x540.png 960w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/12/Isaac-ROS-DOPE-500x281.png 500w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/12/Isaac-ROS-DOPE-160x90.png 160w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/12/Isaac-ROS-DOPE-362x204.png 362w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/12/Isaac-ROS-DOPE-196x110.png 196w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/12/Isaac-ROS-DOPE-1024x576.png 1024w" sizes="(max-width: 1480px) 100vw, 1480px" /> </div> <div class="carousel-row-slide__content"> <div class="carousel-row-slide__title"> <h3 class="h--smallest carousel-row-slide__heading"> Generate Synthetic Data for Deep Object Pose Estimation Training with NVIDIA Isaac ROS </h3> </div> </div> <a href="https://developer.nvidia.com/blog/generate-synthetic-data-for-deep-object-pose-estimation-training-with-nvidia-isaac-ros/" class="carousel-row-slide__link" data-wpel-link="internal" target="_blank" rel="follow noopener"> <span class="visually-hidden">Generate Synthetic Data for Deep Object Pose Estimation Training with NVIDIA Isaac ROS</span> </a> </div> </div> <div class="carousel-row__slide js-post-card related-post--row" data-post-id="74503" data-post-title="Take the ‘AI Innovation Challenge’ and Unleash Your Creativity with NVIDIA Jetson "> <div class="carousel-row-slide__inner"> <div class="carousel-row-slide__thumbnail"> <img width="2048" height="1151" src="https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/hackster_tw.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/hackster_tw.png 2048w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/hackster_tw-300x169.png 300w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/hackster_tw-625x351.png 625w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/hackster_tw-179x101.png 179w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/hackster_tw-768x432.png 768w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/hackster_tw-1536x863.png 1536w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/hackster_tw-645x362.png 645w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/hackster_tw-960x540.png 960w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/hackster_tw-500x281.png 500w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/hackster_tw-160x90.png 160w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/hackster_tw-362x203.png 362w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/hackster_tw-196x110.png 196w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/hackster_tw-1024x576.png 1024w" sizes="(max-width: 2048px) 100vw, 2048px" /> </div> <div class="carousel-row-slide__content"> <div class="carousel-row-slide__title"> <h3 class="h--smallest carousel-row-slide__heading"> Take the ‘AI Innovation Challenge’ and Unleash Your Creativity with NVIDIA Jetson </h3> </div> </div> <a href="https://nvda.ws/46Qlbu1#new_tab" class="carousel-row-slide__link" data-wpel-link="external" target="_blank" rel="follow external noopener"> <span class="visually-hidden">Take the ‘AI Innovation Challenge’ and Unleash Your Creativity with NVIDIA Jetson </span> </a> </div> </div> <div class="carousel-row__slide js-post-card related-post--row" data-post-id="74008" data-post-title="Boosting Custom ROS Graphs Using NVIDIA Isaac Transport for ROS"> <div class="carousel-row-slide__inner"> <div class="carousel-row-slide__thumbnail"> <img width="3840" height="2160" src="https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/Boosting-Custom-ROS-Graphs-Using-NVIDIA-Isaac-Transpot.jpg" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" decoding="async" loading="lazy" srcset="https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/Boosting-Custom-ROS-Graphs-Using-NVIDIA-Isaac-Transpot.jpg 3840w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/Boosting-Custom-ROS-Graphs-Using-NVIDIA-Isaac-Transpot-300x169.jpg 300w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/Boosting-Custom-ROS-Graphs-Using-NVIDIA-Isaac-Transpot-625x352.jpg 625w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/Boosting-Custom-ROS-Graphs-Using-NVIDIA-Isaac-Transpot-179x101.jpg 179w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/Boosting-Custom-ROS-Graphs-Using-NVIDIA-Isaac-Transpot-768x432.jpg 768w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/Boosting-Custom-ROS-Graphs-Using-NVIDIA-Isaac-Transpot-1536x864.jpg 1536w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/Boosting-Custom-ROS-Graphs-Using-NVIDIA-Isaac-Transpot-2048x1152.jpg 2048w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/Boosting-Custom-ROS-Graphs-Using-NVIDIA-Isaac-Transpot-645x363.jpg 645w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/Boosting-Custom-ROS-Graphs-Using-NVIDIA-Isaac-Transpot-960x540.jpg 960w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/Boosting-Custom-ROS-Graphs-Using-NVIDIA-Isaac-Transpot-500x281.jpg 500w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/Boosting-Custom-ROS-Graphs-Using-NVIDIA-Isaac-Transpot-160x90.jpg 160w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/Boosting-Custom-ROS-Graphs-Using-NVIDIA-Isaac-Transpot-362x204.jpg 362w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/Boosting-Custom-ROS-Graphs-Using-NVIDIA-Isaac-Transpot-196x110.jpg 196w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/Boosting-Custom-ROS-Graphs-Using-NVIDIA-Isaac-Transpot-1024x576.jpg 1024w" sizes="(max-width: 3840px) 100vw, 3840px" /> </div> <div class="carousel-row-slide__content"> <div class="carousel-row-slide__title"> <h3 class="h--smallest carousel-row-slide__heading"> Boosting Custom ROS Graphs Using NVIDIA Isaac Transport for ROS </h3> </div> </div> <a href="https://developer.nvidia.com/blog/boosting-custom-ros-graphs-using-nvidia-isaac-transport-for-ros/" class="carousel-row-slide__link" data-wpel-link="internal" target="_blank" rel="follow noopener"> <span class="visually-hidden">Boosting Custom ROS Graphs Using NVIDIA Isaac Transport for ROS</span> </a> </div> </div> <div class="carousel-row__slide js-post-card related-post--row" data-post-id="72916" data-post-title="Using Synthetic Data to Address Novel Viewpoints for Autonomous Vehicle Perception"> <div class="carousel-row-slide__inner"> <div class="carousel-row-slide__thumbnail"> <img width="2560" height="1440" src="https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/KeyVisual_HighRes.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Using Synthetic Data to Address Novel Viewpoints for AV Perception" decoding="async" loading="lazy" srcset="https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/KeyVisual_HighRes.png 2560w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/KeyVisual_HighRes-300x169.png 300w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/KeyVisual_HighRes-625x352.png 625w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/KeyVisual_HighRes-179x101.png 179w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/KeyVisual_HighRes-768x432.png 768w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/KeyVisual_HighRes-1536x864.png 1536w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/KeyVisual_HighRes-2048x1152.png 2048w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/KeyVisual_HighRes-645x363.png 645w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/KeyVisual_HighRes-960x540.png 960w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/KeyVisual_HighRes-500x281.png 500w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/KeyVisual_HighRes-160x90.png 160w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/KeyVisual_HighRes-362x204.png 362w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/KeyVisual_HighRes-196x110.png 196w, https://developer-blogs.nvidia.com/wp-content/uploads/2023/11/KeyVisual_HighRes-1024x576.png 1024w" sizes="(max-width: 2560px) 100vw, 2560px" /> </div> <div class="carousel-row-slide__content"> <div class="carousel-row-slide__title"> <h3 class="h--smallest carousel-row-slide__heading"> Using Synthetic Data to Address Novel Viewpoints for Autonomous Vehicle Perception </h3> </div> </div> <a href="https://developer.nvidia.com/blog/using-synthetic-data-to-address-novel-viewpoints-for-autonomous-vehicle-perception/" class="carousel-row-slide__link" data-wpel-link="internal" target="_blank" rel="follow noopener"> <span class="visually-hidden">Using Synthetic Data to Address Novel Viewpoints for Autonomous Vehicle Perception</span> </a> </div> </div> </div> </div> </div> </div> </div> </div> </section> <!--wp code prettify--> <script type="text/javascript"> function $(id) {return !id ? null : document.getElementById(id);} loadPrettifyCss = function () { if(!$('prettify_css')) { css = document.createElement('link'); css.id = 'prettify_css'; css.type = 'text/css'; css.rel = 'stylesheet'; css.href = 'https://developer-blogs.nvidia.com/wp-content/plugins/wp-code-prettify/css/prettify.css'; var headNode = document.getElementsByTagName("head")[0]; headNode.appendChild(css); } else { $('prettify_css').href = 'https://developer-blogs.nvidia.com/wp-content/plugins/wp-code-prettify/css/prettify.css'; } if(!$('prettify_custom')) { css = document.createElement('style'); css.id = 'prettify_custom'; css.type = 'text/css'; css.rel = 'stylesheet'; css.innerHTML = 'pre.prettyprint { max-height: 500px; white-space: pre; word-wrap: normal; overflow: auto; background-color: #f8f8f8;border-radius: 3px; } pre.prettyprint[title]:before { float: right; border: 1px solid #ccc; border-radius: 3px; background: #ddd; padding: 10px; content: attr(title); font: 13px "Trebuchet MS", "Helvetica Neue", Helvetica, Arial, sans-serif; }'; var headNode = document.getElementsByTagName("head")[0]; headNode.appendChild(css); } else { $('prettify_css').innerHTML = 'pre.prettyprint { max-height: 500px; white-space: pre; word-wrap: normal; overflow: auto; background-color: #f8f8f8;border-radius: 3px; } pre.prettyprint[title]:before { float: right; border: 1px solid #ccc; border-radius: 3px; background: #ddd; padding: 10px; content: attr(title); font: 13px "Trebuchet MS", "Helvetica Neue", Helvetica, Arial, sans-serif; }'; } } </script> <script type="text/javascript"> loadPrettifyCss(); </script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/wp-code-prettify/js/prettify.js"></script> <script type="text/javascript"> function wpCodePrettifyOnLoad(func){ var wpCodePrettifyOldOnLoad = window.onload; if (typeof window.onload != 'function') { window.onload = func } else { window.onload = function () { wpCodePrettifyOldOnLoad(); func() } } } wpCodePrettifyOnLoad(function(){prettyPrint();}); </script> <!--//wp code prettify--> <footer id="nv-footer"></footer> <script type="text/javascript"> (function() { const defaultLinks = JSON.parse("{\n \"columns\": [],\n \"links\": [\n {\n \"text\": \"Legal Information\",\n \"href\": \"https:\/\/www.nvidia.com\/en-us\/about-nvidia\/legal-info\/\"\n },\n {\n \"text\": \"Terms of Use\",\n \"href\": \"https:\/\/developer.nvidia.com\/legal\/terms\"\n },\n {\n \"text\": \"Privacy Policy\",\n \"href\": \"https:\/\/www.nvidia.com\/en-us\/about-nvidia\/privacy-policy\/\"\n },\n {\n \"text\": \"Cookie Policy\",\n \"href\": \"https:\/\/www.nvidia.com\/en-us\/about-nvidia\/cookie-policy\/\"\n },\n {\n \"text\": \"Contact\",\n \"href\": \"https:\/\/developer.nvidia.com\/contact\"\n }\n ],\n \"news\": {\n \"title\": \"Sign up for NVIDIA News\",\n \"href\": \"https:\/\/developer.nvidia.com\/email-signup\"\n },\n \"social\": {\n \"title\": \"Follow NVIDIA Developer\",\n \"links\": [\n {\n \"text\": \"Facebook\",\n \"href\": \"https:\/\/facebook.com\/nvidiaai\",\n \"provider\": \"facebook\"\n },\n {\n \"text\": \"Instagram\",\n \"href\": \"https:\/\/instagram.com\/nvidiadeveloper\",\n \"provider\": \"instagram\"\n },\n {\n \"text\": \"LinkedIn\",\n \"href\": \"https:\/\/www.linkedin.com\/showcase\/nvidia-ai\",\n \"provider\": \"linkedin\"\n },\n {\n \"text\": \"Twitter\",\n \"href\": \"https:\/\/twitter.com\/nvidiadeveloper\",\n \"provider\": \"twitter\"\n },\n {\n \"text\": \"YouTube\",\n \"href\": \"https:\/\/www.youtube.com\/user\/NVIDIADeveloper\",\n \"provider\": \"youtube\"\n }\n ]\n }\n }\n ") const mountFooterComponent = (locale, response) => { new NVDeveloperFooter({ target: document.getElementById('nv-footer'), props: { locale: locale, menu: response } }) } const handleError = (error, locale, menu) => { console.debug(error) mountFooterComponent(locale, menu) } const initFooter = () => { let menuUrl = 'https://d29g4g2dyqv443.cloudfront.net/menu/en-US/footer.json' let locale = 'en-US'; if (!menuUrl) { handleError('Footer menu URL not defined.', locale, defaultLinks) return } fetch(menuUrl) .then((response) => response.json()) .then((response) => mountFooterComponent(locale, response)) .catch((error) => handleError(error, locale, defaultLinks)) } document.addEventListener('DOMContentLoaded', initFooter); })(); </script> <script type="text/javascript">_satellite.pageBottom();</script> <!-- OneTrust gpc signal detection script start --> <!-- OneTrust Cookies Consent Notice end for nvidia.com --> <script type="text/javascript" src="https://images.nvidia.com/aem-dam/Solutions/ot-js/ot-custom.js"></script> <!-- OneTrust gpc signal detection script end --> <div style="display:none"> <div class="grofile-hash-map-c1eb1024a4c6bd1296884ff17b0e0cbf"> </div> <div class="grofile-hash-map-d428d1c8bccaa159c14a95bc9b443dec"> </div> <div class="grofile-hash-map-9d8ef9e6e886db065dd3b6913ab7deeb"> </div> <div class="grofile-hash-map-6b729d3b55cecf1116761d098423b503"> </div> </div> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shCore.js?ver=3.0.9b" id="syntaxhighlighter-core-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushAS3.js?ver=3.0.9b" id="syntaxhighlighter-brush-as3-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushArduino.js?ver=3.0.9b" id="syntaxhighlighter-brush-arduino-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushBash.js?ver=3.0.9b" id="syntaxhighlighter-brush-bash-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushColdFusion.js?ver=3.0.9b" id="syntaxhighlighter-brush-coldfusion-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/third-party-brushes/shBrushClojure.js?ver=20090602" id="syntaxhighlighter-brush-clojure-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushCpp.js?ver=3.0.9b" id="syntaxhighlighter-brush-cpp-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushCSharp.js?ver=3.0.9b" id="syntaxhighlighter-brush-csharp-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushCss.js?ver=3.0.9b" id="syntaxhighlighter-brush-css-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushDelphi.js?ver=3.0.9b" id="syntaxhighlighter-brush-delphi-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushDiff.js?ver=3.0.9b" id="syntaxhighlighter-brush-diff-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushErlang.js?ver=3.0.9b" id="syntaxhighlighter-brush-erlang-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/third-party-brushes/shBrushFSharp.js?ver=20091003" id="syntaxhighlighter-brush-fsharp-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushGo.js?ver=3.0.9b" id="syntaxhighlighter-brush-go-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushGroovy.js?ver=3.0.9b" id="syntaxhighlighter-brush-groovy-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushHaskell.js?ver=3.0.9b" id="syntaxhighlighter-brush-haskell-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushJava.js?ver=3.0.9b" id="syntaxhighlighter-brush-java-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushJavaFX.js?ver=3.0.9b" id="syntaxhighlighter-brush-javafx-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushJScript.js?ver=3.0.9b" id="syntaxhighlighter-brush-jscript-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/third-party-brushes/shBrushLatex.js?ver=20090613" id="syntaxhighlighter-brush-latex-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/third-party-brushes/shBrushMatlabKey.js?ver=20091209" id="syntaxhighlighter-brush-matlabkey-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/third-party-brushes/shBrushObjC.js?ver=20091207" id="syntaxhighlighter-brush-objc-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushPerl.js?ver=3.0.9b" id="syntaxhighlighter-brush-perl-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushPhp.js?ver=3.0.9b" id="syntaxhighlighter-brush-php-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushPlain.js?ver=3.0.9b" id="syntaxhighlighter-brush-plain-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushPowerShell.js?ver=3.0.9b" id="syntaxhighlighter-brush-powershell-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushPython.js?ver=3.0.9b" id="syntaxhighlighter-brush-python-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/third-party-brushes/shBrushR.js?ver=20100919" id="syntaxhighlighter-brush-r-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushRuby.js?ver=3.0.9b" id="syntaxhighlighter-brush-ruby-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushScala.js?ver=3.0.9b" id="syntaxhighlighter-brush-scala-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushSql.js?ver=3.0.9b" id="syntaxhighlighter-brush-sql-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushSwift.js?ver=3.0.9b" id="syntaxhighlighter-brush-swift-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushVb.js?ver=3.0.9b" id="syntaxhighlighter-brush-vb-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushXml.js?ver=3.0.9b" id="syntaxhighlighter-brush-xml-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushYaml.js?ver=3.0.9b" id="syntaxhighlighter-brush-yaml-js"></script> <script type='text/javascript'> (function(){ var corecss = document.createElement('link'); var themecss = document.createElement('link'); var corecssurl = "https://developer-blogs.nvidia.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/styles/shCore.css?ver=3.0.9b"; if ( corecss.setAttribute ) { corecss.setAttribute( "rel", "stylesheet" ); corecss.setAttribute( "type", "text/css" ); corecss.setAttribute( "href", corecssurl ); } else { corecss.rel = "stylesheet"; corecss.href = corecssurl; } document.head.appendChild( corecss ); var themecssurl = "https://developer-blogs.nvidia.com/wp-content/plugins/nv-tweaks/css/shThemeNvidia.css?ver=3.0.9b"; if ( themecss.setAttribute ) { themecss.setAttribute( "rel", "stylesheet" ); themecss.setAttribute( "type", "text/css" ); themecss.setAttribute( "href", themecssurl ); } else { themecss.rel = "stylesheet"; themecss.href = themecssurl; } document.head.appendChild( themecss ); })(); SyntaxHighlighter.config.strings.expandSource = '+ expand source'; SyntaxHighlighter.config.strings.help = '?'; SyntaxHighlighter.config.strings.alert = 'SyntaxHighlighter\n\n'; SyntaxHighlighter.config.strings.noBrush = 'Can\'t find brush for: '; SyntaxHighlighter.config.strings.brushNotHtmlScript = 'Brush wasn\'t configured for html-script option: '; SyntaxHighlighter.defaults['gutter'] = false; SyntaxHighlighter.defaults['pad-line-numbers'] = false; SyntaxHighlighter.defaults['toolbar'] = false; SyntaxHighlighter.all(); // Infinite scroll support if ( typeof( jQuery ) !== 'undefined' ) { jQuery( function( $ ) { $( document.body ).on( 'post-load', function() { SyntaxHighlighter.highlight(); } ); } ); } </script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-includes/js/jquery/jquery.min.js?ver=3.7.1" id="jquery-core-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1" id="jquery-migrate-js"></script> <script type="text/javascript" id="load_comments_js-js-extra"> /* <![CDATA[ */ var wpdc = {"commentsURL":"https:\/\/developer.nvidia.com\/blog\/wp-json\/wp-discourse\/v1\/discourse-comments"}; /* ]]> */ </script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/wp-discourse/lib/../js/load-comments.js?ver=1733873849" id="load_comments_js-js"></script> <script type="text/javascript" id="wp_ulike-js-extra"> /* <![CDATA[ */ var wp_ulike_params = {"ajax_url":"https:\/\/developer-blogs.nvidia.com\/wp-admin\/admin-ajax.php","notifications":"0"}; var wp_ulike_params = {"ajax_url":"https:\/\/developer.nvidia.com\/blog\/wp-admin\/admin-ajax.php"}; /* ]]> */ </script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/wp-ulike/assets/js/wp-ulike.min.js?ver=4.7.6" id="wp_ulike-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/nv-language-switcher/js/nv-language-switcher.js" id="nv-language-switcher-js"></script> <script type="text/javascript" src="https://secure.gravatar.com/js/gprofiles.js?ver=202450" id="grofiles-cards-js"></script> <script type="text/javascript" id="wpgroho-js-extra"> /* <![CDATA[ */ var WPGroHo = {"my_hash":""}; /* ]]> */ </script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/jetpack/modules/wpgroho.js?ver=14.0" id="wpgroho-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/page-links-to/dist/new-tab.js?ver=3.3.5" id="page-links-to-js"></script> <script type="text/javascript" id="sage/main.js-js-extra"> /* <![CDATA[ */ var morePostsAjax = {"network_id":"1","site_url":"https:\/\/developer.nvidia.com\/blog\/wp-admin\/"}; /* ]]> */ </script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/themes/nvidia/dist/scripts/main_5b99443a.js" id="sage/main.js-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/nv-recommender/js/dist/index.js" id="sage/recommender.js-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-includes/js/dist/vendor/lodash.min.js?ver=4.17.21" id="lodash-js"></script> <script type="text/javascript" id="lodash-js-after"> /* <![CDATA[ */ window.lodash = _.noConflict(); /* ]]> */ </script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/ml-slider/assets/sliders/responsiveslides/responsiveslides.min.js" id="sage/flexslider.js-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/themes/nvidia/resources/assets/libs/nv-developer-menu/nv-developer-menu.js?ver=1.0.0" id="nv-developer-menu.js-js"></script> <script type="text/javascript" id="stbClient-js-extra"> /* <![CDATA[ */ var stbUserOptions = {"restData":{"root":"https:\/\/developer-blogs.nvidia.com\/wp-json\/","nonce":"e00aaf03e6"}}; /* ]]> */ </script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/wp-special-textboxes/js/client.js?ver=6.2.1" id="stbClient-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/advanced-responsive-video-embedder/build/main.js?ver=755e5bf2bfafc15e7cc1" id="arve-js" async="async" data-wp-strategy="async"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/ml-slider/assets/sliders/flexslider/jquery.flexslider.min.js?ver=3.60.1" id="metaslider-flex-slider-js"></script> <script type="text/javascript" id="metaslider-flex-slider-js-after"> /* <![CDATA[ */ var metaslider_56284 = function($) { $('#metaslider_56284').flexslider({ slideshowSpeed:3000, animation:"fade", controlNav:false, directionNav:false, pauseOnHover:true, direction:"horizontal", reverse:false, keyboard:false, animationSpeed:600, prevText:"<", nextText:">", smoothHeight:false, fadeFirstSlide:false, slideshow:true }); $(document).trigger('metaslider/initialized', '#metaslider_56284'); }; var timer_metaslider_56284 = function() { var slider = !window.jQuery ? window.setTimeout(timer_metaslider_56284, 100) : !jQuery.isReady ? window.setTimeout(timer_metaslider_56284, 1) : metaslider_56284(window.jQuery); }; timer_metaslider_56284(); /* ]]> */ </script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/ml-slider/assets/metaslider/script.min.js?ver=3.60.1" id="metaslider-script-js"></script> <script type="text/javascript" src="https://developer-blogs.nvidia.com/wp-content/plugins/ml-slider/themes/highway/v1.0.0/script.js?ver=1.0.0" id="metaslider_highway_theme_script-js"></script> <script> function b2a(a){var b,c=0,l=0,f="",g=[];if(!a)return a;do{var e=a.charCodeAt(c++);var h=a.charCodeAt(c++);var k=a.charCodeAt(c++);var d=e<<16|h<<8|k;e=63&d>>18;h=63&d>>12;k=63&d>>6;d&=63;g[l++]="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(e)+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(h)+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(k)+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(d)}while(c< a.length);return f=g.join(""),b=a.length%3,(b?f.slice(0,b-3):f)+"===".slice(b||3)}function a2b(a){var b,c,l,f={},g=0,e=0,h="",k=String.fromCharCode,d=a.length;for(b=0;64>b;b++)f["ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(b)]=b;for(c=0;d>c;c++)for(b=f[a.charAt(c)],g=(g<<6)+b,e+=6;8<=e;)((l=255&g>>>(e-=8))||d-2>c)&&(h+=k(l));return h}b64e=function(a){return btoa(encodeURIComponent(a).replace(/%([0-9A-F]{2})/g,function(b,a){return String.fromCharCode("0x"+a)}))}; b64d=function(a){return decodeURIComponent(atob(a).split("").map(function(a){return"%"+("00"+a.charCodeAt(0).toString(16)).slice(-2)}).join(""))}; /* <![CDATA[ */ ai_front = {"insertion_before":"BEFORE","insertion_after":"AFTER","insertion_prepend":"PREPEND CONTENT","insertion_append":"APPEND CONTENT","insertion_replace_content":"REPLACE CONTENT","insertion_replace_element":"REPLACE ELEMENT","visible":"VISIBLE","hidden":"HIDDEN","fallback":"FALLBACK","automatically_placed":"Automatically placed by AdSense Auto ads code","cancel":"Cancel","use":"Use","add":"Add","parent":"Parent","cancel_element_selection":"Cancel element selection","select_parent_element":"Select parent element","css_selector":"CSS selector","use_current_selector":"Use current selector","element":"ELEMENT","path":"PATH","selector":"SELECTOR"}; /* ]]> */ var ai_cookie_js=!0,ai_block_class_def="code-block"; /* JavaScript Cookie v2.2.0 https://github.com/js-cookie/js-cookie Copyright 2006, 2015 Klaus Hartl & Fagner Brack Released under the MIT license */ "undefined"!==typeof ai_cookie_js&&(function(a){if("function"===typeof define&&define.amd){define(a);var c=!0}"object"===typeof exports&&(module.exports=a(),c=!0);if(!c){var d=window.Cookies,b=window.Cookies=a();b.noConflict=function(){window.Cookies=d;return b}}}(function(){function a(){for(var d=0,b={};d<arguments.length;d++){var f=arguments[d],e;for(e in f)b[e]=f[e]}return b}function c(d){function b(){}function f(h,k,g){if("undefined"!==typeof document){g=a({path:"/",sameSite:"Lax"},b.defaults, g);"number"===typeof g.expires&&(g.expires=new Date(1*new Date+864E5*g.expires));g.expires=g.expires?g.expires.toUTCString():"";try{var l=JSON.stringify(k);/^[\{\[]/.test(l)&&(k=l)}catch(p){}k=d.write?d.write(k,h):encodeURIComponent(String(k)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent);h=encodeURIComponent(String(h)).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent).replace(/[\(\)]/g,escape);l="";for(var n in g)g[n]&&(l+="; "+n,!0!==g[n]&&(l+="="+ g[n].split(";")[0]));return document.cookie=h+"="+k+l}}function e(h,k){if("undefined"!==typeof document){for(var g={},l=document.cookie?document.cookie.split("; "):[],n=0;n<l.length;n++){var p=l[n].split("="),m=p.slice(1).join("=");k||'"'!==m.charAt(0)||(m=m.slice(1,-1));try{var q=p[0].replace(/(%[0-9A-Z]{2})+/g,decodeURIComponent);m=(d.read||d)(m,q)||m.replace(/(%[0-9A-Z]{2})+/g,decodeURIComponent);if(k)try{m=JSON.parse(m)}catch(r){}g[q]=m;if(h===q)break}catch(r){}}return h?g[h]:g}}b.set=f;b.get= function(h){return e(h,!1)};b.getJSON=function(h){return e(h,!0)};b.remove=function(h,k){f(h,"",a(k,{expires:-1}))};b.defaults={};b.withConverter=c;return b}return c(function(){})}),AiCookies=Cookies.noConflict(),ai_check_block=function(a){if(null==a)return!0;var c=AiCookies.getJSON("aiBLOCKS");ai_debug_cookie_status="";null==c&&(c={});"undefined"!==typeof ai_delay_showing_pageviews&&(c.hasOwnProperty(a)||(c[a]={}),c[a].hasOwnProperty("d")||(c[a].d=ai_delay_showing_pageviews));if(c.hasOwnProperty(a)){for(var d in c[a]){if("x"== d){var b="",f=document.querySelectorAll('span[data-ai-block="'+a+'"]')[0];"aiHash"in f.dataset&&(b=f.dataset.aiHash);f="";c[a].hasOwnProperty("h")&&(f=c[a].h);var e=new Date;e=c[a][d]-Math.round(e.getTime()/1E3);if(0<e&&f==b)return ai_debug_cookie_status=a="closed for "+e+" s = "+Math.round(1E4*e/3600/24)/1E4+" days",!1;ai_set_cookie(a,"x","");c[a].hasOwnProperty("i")||c[a].hasOwnProperty("c")||ai_set_cookie(a,"h","")}else if("d"==d){if(0!=c[a][d])return ai_debug_cookie_status=a="delayed for "+c[a][d]+ " pageviews",!1}else if("i"==d){b="";f=document.querySelectorAll('span[data-ai-block="'+a+'"]')[0];"aiHash"in f.dataset&&(b=f.dataset.aiHash);f="";c[a].hasOwnProperty("h")&&(f=c[a].h);if(0==c[a][d]&&f==b)return ai_debug_cookie_status=a="max impressions reached",!1;if(0>c[a][d]&&f==b){e=new Date;e=-c[a][d]-Math.round(e.getTime()/1E3);if(0<e)return ai_debug_cookie_status=a="max imp. reached ("+Math.round(1E4*e/24/3600)/1E4+" days = "+e+" s)",!1;ai_set_cookie(a,"i","");c[a].hasOwnProperty("c")||c[a].hasOwnProperty("x")|| ai_set_cookie(a,"h","")}}if("ipt"==d&&0==c[a][d]&&(e=new Date,b=Math.round(e.getTime()/1E3),e=c[a].it-b,0<e))return ai_debug_cookie_status=a="max imp. per time reached ("+Math.round(1E4*e/24/3600)/1E4+" days = "+e+" s)",!1;if("c"==d){b="";f=document.querySelectorAll('span[data-ai-block="'+a+'"]')[0];"aiHash"in f.dataset&&(b=f.dataset.aiHash);f="";c[a].hasOwnProperty("h")&&(f=c[a].h);if(0==c[a][d]&&f==b)return ai_debug_cookie_status=a="max clicks reached",!1;if(0>c[a][d]&&f==b){e=new Date;e=-c[a][d]- Math.round(e.getTime()/1E3);if(0<e)return ai_debug_cookie_status=a="max clicks reached ("+Math.round(1E4*e/24/3600)/1E4+" days = "+e+" s)",!1;ai_set_cookie(a,"c","");c[a].hasOwnProperty("i")||c[a].hasOwnProperty("x")||ai_set_cookie(a,"h","")}}if("cpt"==d&&0==c[a][d]&&(e=new Date,b=Math.round(e.getTime()/1E3),e=c[a].ct-b,0<e))return ai_debug_cookie_status=a="max clicks per time reached ("+Math.round(1E4*e/24/3600)/1E4+" days = "+e+" s)",!1}if(c.hasOwnProperty("G")&&c.G.hasOwnProperty("cpt")&&0==c.G.cpt&& (e=new Date,b=Math.round(e.getTime()/1E3),e=c.G.ct-b,0<e))return ai_debug_cookie_status=a="max global clicks per time reached ("+Math.round(1E4*e/24/3600)/1E4+" days = "+e+" s)",!1}ai_debug_cookie_status="OK";return!0},ai_check_and_insert_block=function(a,c){if(null==a)return!0;var d=document.getElementsByClassName(c);if(d.length){d=d[0];var b=d.closest("."+ai_block_class_def),f=ai_check_block(a);!f&&0!=parseInt(d.getAttribute("limits-fallback"))&&d.hasAttribute("data-fallback-code")&&(d.setAttribute("data-code", d.getAttribute("data-fallback-code")),null!=b&&b.hasAttribute("data-ai")&&d.hasAttribute("fallback-tracking")&&d.hasAttribute("fallback_level")&&b.setAttribute("data-ai-"+d.getAttribute("fallback_level"),d.getAttribute("fallback-tracking")),f=!0);d.removeAttribute("data-selector");if(f)ai_insert_code(d),b&&(f=b.querySelectorAll(".ai-debug-block"),f.length&&(b.classList.remove("ai-list-block"),b.classList.remove("ai-list-block-ip"),b.classList.remove("ai-list-block-filter"),b.style.visibility="",b.classList.contains("ai-remove-position")&& (b.style.position="")));else{f=d.closest("div[data-ai]");if(null!=f&&"undefined"!=typeof f.getAttribute("data-ai")){var e=JSON.parse(b64d(f.getAttribute("data-ai")));"undefined"!==typeof e&&e.constructor===Array&&(e[1]="",f.setAttribute("data-ai",b64e(JSON.stringify(e))))}b&&(f=b.querySelectorAll(".ai-debug-block"),f.length&&(b.classList.remove("ai-list-block"),b.classList.remove("ai-list-block-ip"),b.classList.remove("ai-list-block-filter"),b.style.visibility="",b.classList.contains("ai-remove-position")&& (b.style.position="")))}d.classList.remove(c)}d=document.querySelectorAll("."+c+"-dbg");b=0;for(f=d.length;b<f;b++)e=d[b],e.querySelector(".ai-status").textContent=ai_debug_cookie_status,e.querySelector(".ai-cookie-data").textContent=ai_get_cookie_text(a),e.classList.remove(c+"-dbg")},ai_load_cookie=function(){var a=AiCookies.getJSON("aiBLOCKS");null==a&&(a={});return a},ai_set_cookie=function(a,c,d){var b=ai_load_cookie();if(""===d){if(b.hasOwnProperty(a)){delete b[a][c];a:{c=b[a];for(f in c)if(c.hasOwnProperty(f)){var f= !1;break a}f=!0}f&&delete b[a]}}else b.hasOwnProperty(a)||(b[a]={}),b[a][c]=d;0===Object.keys(b).length&&b.constructor===Object?AiCookies.remove("aiBLOCKS"):AiCookies.set("aiBLOCKS",b,{expires:365,path:"/"});return b},ai_get_cookie_text=function(a){var c=AiCookies.getJSON("aiBLOCKS");null==c&&(c={});var d="";c.hasOwnProperty("G")&&(d="G["+JSON.stringify(c.G).replace(/"/g,"").replace("{","").replace("}","")+"] ");var b="";c.hasOwnProperty(a)&&(b=JSON.stringify(c[a]).replace(/"/g,"").replace("{","").replace("}", ""));return d+b}); var ai_insertion_js=!0,ai_block_class_def="code-block"; if("undefined"!=typeof ai_insertion_js){ai_insert=function(a,h,l){if(-1!=h.indexOf(":eq("))if(window.jQuery&&window.jQuery.fn)var n=jQuery(h);else{console.error("AI INSERT USING jQuery QUERIES:",h,"- jQuery not found");return}else n=document.querySelectorAll(h);for(var u=0,y=n.length;u<y;u++){var d=n[u];selector_string=d.hasAttribute("id")?"#"+d.getAttribute("id"):d.hasAttribute("class")?"."+d.getAttribute("class").replace(RegExp(" ","g"),"."):"";var w=document.createElement("div");w.innerHTML=l; var m=w.getElementsByClassName("ai-selector-counter")[0];null!=m&&(m.innerText=u+1);m=w.getElementsByClassName("ai-debug-name ai-main")[0];if(null!=m){var r=a.toUpperCase();"undefined"!=typeof ai_front&&("before"==a?r=ai_front.insertion_before:"after"==a?r=ai_front.insertion_after:"prepend"==a?r=ai_front.insertion_prepend:"append"==a?r=ai_front.insertion_append:"replace-content"==a?r=ai_front.insertion_replace_content:"replace-element"==a&&(r=ai_front.insertion_replace_element));-1==selector_string.indexOf(".ai-viewports")&& (m.innerText=r+" "+h+" ("+d.tagName.toLowerCase()+selector_string+")")}m=document.createRange();try{var v=m.createContextualFragment(w.innerHTML)}catch(t){}"before"==a?d.parentNode.insertBefore(v,d):"after"==a?d.parentNode.insertBefore(v,d.nextSibling):"prepend"==a?d.insertBefore(v,d.firstChild):"append"==a?d.insertBefore(v,null):"replace-content"==a?(d.innerHTML="",d.insertBefore(v,null)):"replace-element"==a&&(d.parentNode.insertBefore(v,d),d.parentNode.removeChild(d));z()}};ai_insert_code=function(a){function h(m, r){return null==m?!1:m.classList?m.classList.contains(r):-1<(" "+m.className+" ").indexOf(" "+r+" ")}function l(m,r){null!=m&&(m.classList?m.classList.add(r):m.className+=" "+r)}function n(m,r){null!=m&&(m.classList?m.classList.remove(r):m.className=m.className.replace(new RegExp("(^|\\b)"+r.split(" ").join("|")+"(\\b|$)","gi")," "))}if("undefined"!=typeof a){var u=!1;if(h(a,"no-visibility-check")||a.offsetWidth||a.offsetHeight||a.getClientRects().length){u=a.getAttribute("data-code");var y=a.getAttribute("data-insertion-position"), d=a.getAttribute("data-selector");if(null!=u)if(null!=y&&null!=d){if(-1!=d.indexOf(":eq(")?window.jQuery&&window.jQuery.fn&&jQuery(d).length:document.querySelectorAll(d).length)ai_insert(y,d,b64d(u)),n(a,"ai-viewports")}else{y=document.createRange();try{var w=y.createContextualFragment(b64d(u))}catch(m){}a.parentNode.insertBefore(w,a.nextSibling);n(a,"ai-viewports")}u=!0}else w=a.previousElementSibling,h(w,"ai-debug-bar")&&h(w,"ai-debug-script")&&(n(w,"ai-debug-script"),l(w,"ai-debug-viewport-invisible")), n(a,"ai-viewports");return u}};ai_insert_list_code=function(a){var h=document.getElementsByClassName(a)[0];if("undefined"!=typeof h){var l=ai_insert_code(h),n=h.closest("div."+ai_block_class_def);if(n){l||n.removeAttribute("data-ai");var u=n.querySelectorAll(".ai-debug-block");n&&u.length&&(n.classList.remove("ai-list-block"),n.classList.remove("ai-list-block-ip"),n.classList.remove("ai-list-block-filter"),n.style.visibility="",n.classList.contains("ai-remove-position")&&(n.style.position=""))}h.classList.remove(a); l&&z()}};ai_insert_viewport_code=function(a){var h=document.getElementsByClassName(a)[0];if("undefined"!=typeof h){var l=ai_insert_code(h);h.classList.remove(a);l&&(a=h.closest("div."+ai_block_class_def),null!=a&&(l=h.getAttribute("style"),null!=l&&a.setAttribute("style",a.getAttribute("style")+" "+l)));setTimeout(function(){h.removeAttribute("style")},2);z()}};ai_insert_adsense_fallback_codes=function(a){a.style.display="none";var h=a.closest(".ai-fallback-adsense"),l=h.nextElementSibling;l.getAttribute("data-code")? ai_insert_code(l)&&z():l.style.display="block";h.classList.contains("ai-empty-code")&&null!=a.closest("."+ai_block_class_def)&&(a=a.closest("."+ai_block_class_def).getElementsByClassName("code-block-label"),0!=a.length&&(a[0].style.display="none"))};ai_insert_code_by_class=function(a){var h=document.getElementsByClassName(a)[0];"undefined"!=typeof h&&(ai_insert_code(h),h.classList.remove(a))};ai_insert_client_code=function(a,h){var l=document.getElementsByClassName(a)[0];if("undefined"!=typeof l){var n= l.getAttribute("data-code");null!=n&&ai_check_block()&&(l.setAttribute("data-code",n.substring(Math.floor(h/19))),ai_insert_code_by_class(a),l.remove())}};ai_process_elements_active=!1;function z(){ai_process_elements_active||setTimeout(function(){ai_process_elements_active=!1;"function"==typeof ai_process_rotations&&ai_process_rotations();"function"==typeof ai_process_lists&&ai_process_lists();"function"==typeof ai_process_ip_addresses&&ai_process_ip_addresses();"function"==typeof ai_process_filter_hooks&& ai_process_filter_hooks();"function"==typeof ai_adb_process_blocks&&ai_adb_process_blocks();"function"==typeof ai_process_impressions&&1==ai_tracking_finished&&ai_process_impressions();"function"==typeof ai_install_click_trackers&&1==ai_tracking_finished&&ai_install_click_trackers();"function"==typeof ai_install_close_buttons&&ai_install_close_buttons(document);"function"==typeof ai_process_wait_for_interaction&&ai_process_wait_for_interaction();"function"==typeof ai_process_delayed_blocks&&ai_process_delayed_blocks()}, 5);ai_process_elements_active=!0}const B=document.querySelector("body");(new MutationObserver(function(a,h){for(const l of a)"attributes"===l.type&&"data-ad-status"==l.attributeName&&"unfilled"==l.target.dataset.adStatus&&l.target.closest(".ai-fallback-adsense")&&ai_insert_adsense_fallback_codes(l.target)})).observe(B,{attributes:!0,childList:!1,subtree:!0});var Arrive=function(a,h,l){function n(t,c,e){d.addMethod(c,e,t.unbindEvent);d.addMethod(c,e,t.unbindEventWithSelectorOrCallback);d.addMethod(c, e,t.unbindEventWithSelectorAndCallback)}function u(t){t.arrive=r.bindEvent;n(r,t,"unbindArrive");t.leave=v.bindEvent;n(v,t,"unbindLeave")}if(a.MutationObserver&&"undefined"!==typeof HTMLElement){var y=0,d=function(){var t=HTMLElement.prototype.matches||HTMLElement.prototype.webkitMatchesSelector||HTMLElement.prototype.mozMatchesSelector||HTMLElement.prototype.msMatchesSelector;return{matchesSelector:function(c,e){return c instanceof HTMLElement&&t.call(c,e)},addMethod:function(c,e,f){var b=c[e];c[e]= function(){if(f.length==arguments.length)return f.apply(this,arguments);if("function"==typeof b)return b.apply(this,arguments)}},callCallbacks:function(c,e){e&&e.options.onceOnly&&1==e.firedElems.length&&(c=[c[0]]);for(var f=0,b;b=c[f];f++)b&&b.callback&&b.callback.call(b.elem,b.elem);e&&e.options.onceOnly&&1==e.firedElems.length&&e.me.unbindEventWithSelectorAndCallback.call(e.target,e.selector,e.callback)},checkChildNodesRecursively:function(c,e,f,b){for(var g=0,k;k=c[g];g++)f(k,e,b)&&b.push({callback:e.callback, elem:k}),0<k.childNodes.length&&d.checkChildNodesRecursively(k.childNodes,e,f,b)},mergeArrays:function(c,e){var f={},b;for(b in c)c.hasOwnProperty(b)&&(f[b]=c[b]);for(b in e)e.hasOwnProperty(b)&&(f[b]=e[b]);return f},toElementsArray:function(c){"undefined"===typeof c||"number"===typeof c.length&&c!==a||(c=[c]);return c}}}(),w=function(){var t=function(){this._eventsBucket=[];this._beforeRemoving=this._beforeAdding=null};t.prototype.addEvent=function(c,e,f,b){c={target:c,selector:e,options:f,callback:b, firedElems:[]};this._beforeAdding&&this._beforeAdding(c);this._eventsBucket.push(c);return c};t.prototype.removeEvent=function(c){for(var e=this._eventsBucket.length-1,f;f=this._eventsBucket[e];e--)c(f)&&(this._beforeRemoving&&this._beforeRemoving(f),(f=this._eventsBucket.splice(e,1))&&f.length&&(f[0].callback=null))};t.prototype.beforeAdding=function(c){this._beforeAdding=c};t.prototype.beforeRemoving=function(c){this._beforeRemoving=c};return t}(),m=function(t,c){var e=new w,f=this,b={fireOnAttributesModification:!1}; e.beforeAdding(function(g){var k=g.target;if(k===a.document||k===a)k=document.getElementsByTagName("html")[0];var p=new MutationObserver(function(x){c.call(this,x,g)});var q=t(g.options);p.observe(k,q);g.observer=p;g.me=f});e.beforeRemoving(function(g){g.observer.disconnect()});this.bindEvent=function(g,k,p){k=d.mergeArrays(b,k);for(var q=d.toElementsArray(this),x=0;x<q.length;x++)e.addEvent(q[x],g,k,p)};this.unbindEvent=function(){var g=d.toElementsArray(this);e.removeEvent(function(k){for(var p= 0;p<g.length;p++)if(this===l||k.target===g[p])return!0;return!1})};this.unbindEventWithSelectorOrCallback=function(g){var k=d.toElementsArray(this);e.removeEvent("function"===typeof g?function(p){for(var q=0;q<k.length;q++)if((this===l||p.target===k[q])&&p.callback===g)return!0;return!1}:function(p){for(var q=0;q<k.length;q++)if((this===l||p.target===k[q])&&p.selector===g)return!0;return!1})};this.unbindEventWithSelectorAndCallback=function(g,k){var p=d.toElementsArray(this);e.removeEvent(function(q){for(var x= 0;x<p.length;x++)if((this===l||q.target===p[x])&&q.selector===g&&q.callback===k)return!0;return!1})};return this},r=new function(){function t(f,b,g){return d.matchesSelector(f,b.selector)&&(f._id===l&&(f._id=y++),-1==b.firedElems.indexOf(f._id))?(b.firedElems.push(f._id),!0):!1}var c={fireOnAttributesModification:!1,onceOnly:!1,existing:!1};r=new m(function(f){var b={attributes:!1,childList:!0,subtree:!0};f.fireOnAttributesModification&&(b.attributes=!0);return b},function(f,b){f.forEach(function(g){var k= g.addedNodes,p=g.target,q=[];null!==k&&0<k.length?d.checkChildNodesRecursively(k,b,t,q):"attributes"===g.type&&t(p,b,q)&&q.push({callback:b.callback,elem:p});d.callCallbacks(q,b)})});var e=r.bindEvent;r.bindEvent=function(f,b,g){"undefined"===typeof g?(g=b,b=c):b=d.mergeArrays(c,b);var k=d.toElementsArray(this);if(b.existing){for(var p=[],q=0;q<k.length;q++)for(var x=k[q].querySelectorAll(f),A=0;A<x.length;A++)p.push({callback:g,elem:x[A]});if(b.onceOnly&&p.length)return g.call(p[0].elem,p[0].elem); setTimeout(d.callCallbacks,1,p)}e.call(this,f,b,g)};return r},v=new function(){function t(f,b){return d.matchesSelector(f,b.selector)}var c={};v=new m(function(){return{childList:!0,subtree:!0}},function(f,b){f.forEach(function(g){g=g.removedNodes;var k=[];null!==g&&0<g.length&&d.checkChildNodesRecursively(g,b,t,k);d.callCallbacks(k,b)})});var e=v.bindEvent;v.bindEvent=function(f,b,g){"undefined"===typeof g?(g=b,b=c):b=d.mergeArrays(c,b);e.call(this,f,b,g)};return v};h&&u(h.fn);u(HTMLElement.prototype); u(NodeList.prototype);u(HTMLCollection.prototype);u(HTMLDocument.prototype);u(Window.prototype);h={};n(r,h,"unbindAllArrive");n(v,h,"unbindAllLeave");return h}}(window,"undefined"===typeof jQuery?null:jQuery,void 0)}; var ai_rotation_triggers=[],ai_block_class_def="code-block"; if("undefined"!=typeof ai_rotation_triggers){ai_process_rotation=function(b){var d="number"==typeof b.length;window.jQuery&&window.jQuery.fn&&b instanceof jQuery&&(b=d?Array.prototype.slice.call(b):b[0]);if(d){var e=!1;b.forEach((c,h)=>{if(c.classList.contains("ai-unprocessed")||c.classList.contains("ai-timer"))e=!0});if(!e)return;b.forEach((c,h)=>{c.classList.remove("ai-unprocessed");c.classList.remove("ai-timer")})}else{if(!b.classList.contains("ai-unprocessed")&&!b.classList.contains("ai-timer"))return; b.classList.remove("ai-unprocessed");b.classList.remove("ai-timer")}var a=!1;if(d?b[0].hasAttribute("data-info"):b.hasAttribute("data-info")){var f="div.ai-rotate.ai-"+(d?JSON.parse(atob(b[0].dataset.info)):JSON.parse(atob(b.dataset.info)))[0];ai_rotation_triggers.includes(f)&&(ai_rotation_triggers.splice(ai_rotation_triggers.indexOf(f),1),a=!0)}if(d)for(d=0;d<b.length;d++)0==d?ai_process_single_rotation(b[d],!0):ai_process_single_rotation(b[d],!1);else ai_process_single_rotation(b,!a)};ai_process_single_rotation= function(b,d){var e=[];Array.from(b.children).forEach((g,p)=>{g.matches(".ai-rotate-option")&&e.push(g)});if(0!=e.length){e.forEach((g,p)=>{g.style.display="none"});if(b.hasAttribute("data-next")){k=parseInt(b.getAttribute("data-next"));var a=e[k];if(a.hasAttribute("data-code")){var f=document.createRange(),c=!0;try{var h=f.createContextualFragment(b64d(a.dataset.code))}catch(g){c=!1}c&&(a=h)}0!=a.querySelectorAll("span[data-ai-groups]").length&&0!=document.querySelectorAll(".ai-rotation-groups").length&& setTimeout(function(){B()},5)}else if(e[0].hasAttribute("data-group")){var k=-1,u=[];document.querySelectorAll("span[data-ai-groups]").forEach((g,p)=>{(g.offsetWidth||g.offsetHeight||g.getClientRects().length)&&u.push(g)});1<=u.length&&(timed_groups=[],groups=[],u.forEach(function(g,p){active_groups=JSON.parse(b64d(g.dataset.aiGroups));var r=!1;g=g.closest(".ai-rotate");null!=g&&g.classList.contains("ai-timed-rotation")&&(r=!0);active_groups.forEach(function(t,v){groups.push(t);r&&timed_groups.push(t)})}), groups.forEach(function(g,p){-1==k&&e.forEach((r,t)=>{var v=b64d(r.dataset.group);option_group_items=v.split(",");option_group_items.forEach(function(C,E){-1==k&&C.trim()==g&&(k=t,timed_groups.includes(v)&&b.classList.add("ai-timed-rotation"))})})}))}else if(b.hasAttribute("data-shares"))for(f=JSON.parse(atob(b.dataset.shares)),a=Math.round(100*Math.random()),c=0;c<f.length&&(k=c,0>f[c]||!(a<=f[c]));c++);else f=b.classList.contains("ai-unique"),a=new Date,f?("number"!=typeof ai_rotation_seed&&(ai_rotation_seed= (Math.floor(1E3*Math.random())+a.getMilliseconds())%e.length),f=ai_rotation_seed,f>e.length&&(f%=e.length),a=parseInt(b.dataset.counter),a<=e.length?(k=parseInt(f+a-1),k>=e.length&&(k-=e.length)):k=e.length):(k=Math.floor(Math.random()*e.length),a.getMilliseconds()%2&&(k=e.length-k-1));if(b.classList.contains("ai-rotation-scheduling"))for(k=-1,f=0;f<e.length;f++)if(a=e[f],a.hasAttribute("data-scheduling")){c=b64d(a.dataset.scheduling);a=!0;0==c.indexOf("^")&&(a=!1,c=c.substring(1));var q=c.split("="), m=-1!=c.indexOf("%")?q[0].split("%"):[q[0]];c=m[0].trim().toLowerCase();m="undefined"!=typeof m[1]?m[1].trim():0;q=q[1].replace(" ","");var n=(new Date).getTime();n=new Date(n);var l=0;switch(c){case "s":l=n.getSeconds();break;case "i":l=n.getMinutes();break;case "h":l=n.getHours();break;case "d":l=n.getDate();break;case "m":l=n.getMonth();break;case "y":l=n.getFullYear();break;case "w":l=n.getDay(),l=0==l?6:l-1}c=0!=m?l%m:l;m=q.split(",");q=!a;for(n=0;n<m.length;n++)if(l=m[n],-1!=l.indexOf("-")){if(l= l.split("-"),c>=l[0]&&c<=l[1]){q=a;break}}else if(c==l){q=a;break}if(q){k=f;break}}if(!(0>k||k>=e.length)){a=e[k];var z="",w=b.classList.contains("ai-timed-rotation");e.forEach((g,p)=>{g.hasAttribute("data-time")&&(w=!0)});if(a.hasAttribute("data-time")){f=atob(a.dataset.time);if(0==f&&1<e.length){c=k;do{c++;c>=e.length&&(c=0);m=e[c];if(!m.hasAttribute("data-time")){k=c;a=e[k];f=0;break}m=atob(m.dataset.time)}while(0==m&&c!=k);0!=f&&(k=c,a=e[k],f=atob(a.dataset.time))}if(0<f&&(c=k+1,c>=e.length&& (c=0),b.hasAttribute("data-info"))){m=JSON.parse(atob(b.dataset.info))[0];b.setAttribute("data-next",c);var x="div.ai-rotate.ai-"+m;ai_rotation_triggers.includes(x)&&(d=!1);d&&(ai_rotation_triggers.push(x),setTimeout(function(){var g=document.querySelectorAll(x);g.forEach((p,r)=>{p.classList.add("ai-timer")});ai_process_rotation(g)},1E3*f));z=" ("+f+" s)"}}else a.hasAttribute("data-group")||e.forEach((g,p)=>{p!=k&&g.remove()});a.style.display="";a.style.visibility="";a.style.position="";a.style.width= "";a.style.height="";a.style.top="";a.style.left="";a.classList.remove("ai-rotate-hidden");a.classList.remove("ai-rotate-hidden-2");b.style.position="";if(a.hasAttribute("data-code")){e.forEach((g,p)=>{g.innerText=""});d=b64d(a.dataset.code);f=document.createRange();c=!0;try{h=f.createContextualFragment(d)}catch(g){c=!1}a.append(h);D()}f=parseInt(a.dataset.index);var y=b64d(a.dataset.name);d=b.closest(".ai-debug-block");if(null!=d){h=d.querySelectorAll("kbd.ai-option-name");d=d.querySelectorAll(".ai-debug-block"); if(0!=d.length){var A=[];d.forEach((g,p)=>{g.querySelectorAll("kbd.ai-option-name").forEach((r,t)=>{A.push(r)})});h=Array.from(h);h=h.slice(0,h.length-A.length)}0!=h.length&&(separator=h[0].hasAttribute("data-separator")?h[0].dataset.separator:"",h.forEach((g,p)=>{g.innerText=separator+y+z}))}d=!1;a=b.closest(".ai-adb-show");null!=a&&a.hasAttribute("data-ai-tracking")&&(h=JSON.parse(b64d(a.getAttribute("data-ai-tracking"))),"undefined"!==typeof h&&h.constructor===Array&&(h[1]=f,h[3]=y,a.setAttribute("data-ai-tracking", b64e(JSON.stringify(h))),a.classList.add("ai-track"),w&&ai_tracking_finished&&a.classList.add("ai-no-pageview"),d=!0));d||(d=b.closest("div[data-ai]"),null!=d&&d.hasAttribute("data-ai")&&(h=JSON.parse(b64d(d.getAttribute("data-ai"))),"undefined"!==typeof h&&h.constructor===Array&&(h[1]=f,h[3]=y,d.setAttribute("data-ai",b64e(JSON.stringify(h))),d.classList.add("ai-track"),w&&ai_tracking_finished&&d.classList.add("ai-no-pageview"))))}}};ai_process_rotations=function(){document.querySelectorAll("div.ai-rotate").forEach((b, d)=>{ai_process_rotation(b)})};function B(){document.querySelectorAll("div.ai-rotate.ai-rotation-groups").forEach((b,d)=>{b.classList.add("ai-timer");ai_process_rotation(b)})}ai_process_rotations_in_element=function(b){null!=b&&b.querySelectorAll("div.ai-rotate").forEach((d,e)=>{ai_process_rotation(d)})};(function(b){"complete"===document.readyState||"loading"!==document.readyState&&!document.documentElement.doScroll?b():document.addEventListener("DOMContentLoaded",b)})(function(){setTimeout(function(){ai_process_rotations()}, 10)});ai_process_elements_active=!1;function D(){ai_process_elements_active||setTimeout(function(){ai_process_elements_active=!1;"function"==typeof ai_process_rotations&&ai_process_rotations();"function"==typeof ai_process_lists&&ai_process_lists();"function"==typeof ai_process_ip_addresses&&ai_process_ip_addresses();"function"==typeof ai_process_filter_hooks&&ai_process_filter_hooks();"function"==typeof ai_adb_process_blocks&&ai_adb_process_blocks();"function"==typeof ai_process_impressions&&1== ai_tracking_finished&&ai_process_impressions();"function"==typeof ai_install_click_trackers&&1==ai_tracking_finished&&ai_install_click_trackers();"function"==typeof ai_install_close_buttons&&ai_install_close_buttons(document)},5);ai_process_elements_active=!0}}; ;!function(a,b){a(function(){"use strict";function a(a,b){return null!=a&&null!=b&&a.toLowerCase()===b.toLowerCase()}function c(a,b){var c,d,e=a.length;if(!e||!b)return!1;for(c=b.toLowerCase(),d=0;d<e;++d)if(c===a[d].toLowerCase())return!0;return!1}function d(a){for(var b in a)i.call(a,b)&&(a[b]=new RegExp(a[b],"i"))}function e(a){return(a||"").substr(0,500)}function f(a,b){this.ua=e(a),this._cache={},this.maxPhoneWidth=b||600}var g={};g.mobileDetectRules={phones:{iPhone:"\\biPhone\\b|\\biPod\\b",BlackBerry:"BlackBerry|\\bBB10\\b|rim[0-9]+|\\b(BBA100|BBB100|BBD100|BBE100|BBF100|STH100)\\b-[0-9]+",Pixel:"; \\bPixel\\b",HTC:"HTC|HTC.*(Sensation|Evo|Vision|Explorer|6800|8100|8900|A7272|S510e|C110e|Legend|Desire|T8282)|APX515CKT|Qtek9090|APA9292KT|HD_mini|Sensation.*Z710e|PG86100|Z715e|Desire.*(A8181|HD)|ADR6200|ADR6400L|ADR6425|001HT|Inspire 4G|Android.*\\bEVO\\b|T-Mobile G1|Z520m|Android [0-9.]+; Pixel",Nexus:"Nexus One|Nexus S|Galaxy.*Nexus|Android.*Nexus.*Mobile|Nexus 4|Nexus 5|Nexus 5X|Nexus 6",Dell:"Dell[;]? (Streak|Aero|Venue|Venue Pro|Flash|Smoke|Mini 3iX)|XCD28|XCD35|\\b001DL\\b|\\b101DL\\b|\\bGS01\\b",Motorola:"Motorola|DROIDX|DROID BIONIC|\\bDroid\\b.*Build|Android.*Xoom|HRI39|MOT-|A1260|A1680|A555|A853|A855|A953|A955|A956|Motorola.*ELECTRIFY|Motorola.*i1|i867|i940|MB200|MB300|MB501|MB502|MB508|MB511|MB520|MB525|MB526|MB611|MB612|MB632|MB810|MB855|MB860|MB861|MB865|MB870|ME501|ME502|ME511|ME525|ME600|ME632|ME722|ME811|ME860|ME863|ME865|MT620|MT710|MT716|MT720|MT810|MT870|MT917|Motorola.*TITANIUM|WX435|WX445|XT300|XT301|XT311|XT316|XT317|XT319|XT320|XT390|XT502|XT530|XT531|XT532|XT535|XT603|XT610|XT611|XT615|XT681|XT701|XT702|XT711|XT720|XT800|XT806|XT860|XT862|XT875|XT882|XT883|XT894|XT901|XT907|XT909|XT910|XT912|XT928|XT926|XT915|XT919|XT925|XT1021|\\bMoto E\\b|XT1068|XT1092|XT1052",Samsung:"\\bSamsung\\b|SM-G950F|SM-G955F|SM-G9250|GT-19300|SGH-I337|BGT-S5230|GT-B2100|GT-B2700|GT-B2710|GT-B3210|GT-B3310|GT-B3410|GT-B3730|GT-B3740|GT-B5510|GT-B5512|GT-B5722|GT-B6520|GT-B7300|GT-B7320|GT-B7330|GT-B7350|GT-B7510|GT-B7722|GT-B7800|GT-C3010|GT-C3011|GT-C3060|GT-C3200|GT-C3212|GT-C3212I|GT-C3262|GT-C3222|GT-C3300|GT-C3300K|GT-C3303|GT-C3303K|GT-C3310|GT-C3322|GT-C3330|GT-C3350|GT-C3500|GT-C3510|GT-C3530|GT-C3630|GT-C3780|GT-C5010|GT-C5212|GT-C6620|GT-C6625|GT-C6712|GT-E1050|GT-E1070|GT-E1075|GT-E1080|GT-E1081|GT-E1085|GT-E1087|GT-E1100|GT-E1107|GT-E1110|GT-E1120|GT-E1125|GT-E1130|GT-E1160|GT-E1170|GT-E1175|GT-E1180|GT-E1182|GT-E1200|GT-E1210|GT-E1225|GT-E1230|GT-E1390|GT-E2100|GT-E2120|GT-E2121|GT-E2152|GT-E2220|GT-E2222|GT-E2230|GT-E2232|GT-E2250|GT-E2370|GT-E2550|GT-E2652|GT-E3210|GT-E3213|GT-I5500|GT-I5503|GT-I5700|GT-I5800|GT-I5801|GT-I6410|GT-I6420|GT-I7110|GT-I7410|GT-I7500|GT-I8000|GT-I8150|GT-I8160|GT-I8190|GT-I8320|GT-I8330|GT-I8350|GT-I8530|GT-I8700|GT-I8703|GT-I8910|GT-I9000|GT-I9001|GT-I9003|GT-I9010|GT-I9020|GT-I9023|GT-I9070|GT-I9082|GT-I9100|GT-I9103|GT-I9220|GT-I9250|GT-I9300|GT-I9305|GT-I9500|GT-I9505|GT-M3510|GT-M5650|GT-M7500|GT-M7600|GT-M7603|GT-M8800|GT-M8910|GT-N7000|GT-S3110|GT-S3310|GT-S3350|GT-S3353|GT-S3370|GT-S3650|GT-S3653|GT-S3770|GT-S3850|GT-S5210|GT-S5220|GT-S5229|GT-S5230|GT-S5233|GT-S5250|GT-S5253|GT-S5260|GT-S5263|GT-S5270|GT-S5300|GT-S5330|GT-S5350|GT-S5360|GT-S5363|GT-S5369|GT-S5380|GT-S5380D|GT-S5560|GT-S5570|GT-S5600|GT-S5603|GT-S5610|GT-S5620|GT-S5660|GT-S5670|GT-S5690|GT-S5750|GT-S5780|GT-S5830|GT-S5839|GT-S6102|GT-S6500|GT-S7070|GT-S7200|GT-S7220|GT-S7230|GT-S7233|GT-S7250|GT-S7500|GT-S7530|GT-S7550|GT-S7562|GT-S7710|GT-S8000|GT-S8003|GT-S8500|GT-S8530|GT-S8600|SCH-A310|SCH-A530|SCH-A570|SCH-A610|SCH-A630|SCH-A650|SCH-A790|SCH-A795|SCH-A850|SCH-A870|SCH-A890|SCH-A930|SCH-A950|SCH-A970|SCH-A990|SCH-I100|SCH-I110|SCH-I400|SCH-I405|SCH-I500|SCH-I510|SCH-I515|SCH-I600|SCH-I730|SCH-I760|SCH-I770|SCH-I830|SCH-I910|SCH-I920|SCH-I959|SCH-LC11|SCH-N150|SCH-N300|SCH-R100|SCH-R300|SCH-R351|SCH-R400|SCH-R410|SCH-T300|SCH-U310|SCH-U320|SCH-U350|SCH-U360|SCH-U365|SCH-U370|SCH-U380|SCH-U410|SCH-U430|SCH-U450|SCH-U460|SCH-U470|SCH-U490|SCH-U540|SCH-U550|SCH-U620|SCH-U640|SCH-U650|SCH-U660|SCH-U700|SCH-U740|SCH-U750|SCH-U810|SCH-U820|SCH-U900|SCH-U940|SCH-U960|SCS-26UC|SGH-A107|SGH-A117|SGH-A127|SGH-A137|SGH-A157|SGH-A167|SGH-A177|SGH-A187|SGH-A197|SGH-A227|SGH-A237|SGH-A257|SGH-A437|SGH-A517|SGH-A597|SGH-A637|SGH-A657|SGH-A667|SGH-A687|SGH-A697|SGH-A707|SGH-A717|SGH-A727|SGH-A737|SGH-A747|SGH-A767|SGH-A777|SGH-A797|SGH-A817|SGH-A827|SGH-A837|SGH-A847|SGH-A867|SGH-A877|SGH-A887|SGH-A897|SGH-A927|SGH-B100|SGH-B130|SGH-B200|SGH-B220|SGH-C100|SGH-C110|SGH-C120|SGH-C130|SGH-C140|SGH-C160|SGH-C170|SGH-C180|SGH-C200|SGH-C207|SGH-C210|SGH-C225|SGH-C230|SGH-C417|SGH-C450|SGH-D307|SGH-D347|SGH-D357|SGH-D407|SGH-D415|SGH-D780|SGH-D807|SGH-D980|SGH-E105|SGH-E200|SGH-E315|SGH-E316|SGH-E317|SGH-E335|SGH-E590|SGH-E635|SGH-E715|SGH-E890|SGH-F300|SGH-F480|SGH-I200|SGH-I300|SGH-I320|SGH-I550|SGH-I577|SGH-I600|SGH-I607|SGH-I617|SGH-I627|SGH-I637|SGH-I677|SGH-I700|SGH-I717|SGH-I727|SGH-i747M|SGH-I777|SGH-I780|SGH-I827|SGH-I847|SGH-I857|SGH-I896|SGH-I897|SGH-I900|SGH-I907|SGH-I917|SGH-I927|SGH-I937|SGH-I997|SGH-J150|SGH-J200|SGH-L170|SGH-L700|SGH-M110|SGH-M150|SGH-M200|SGH-N105|SGH-N500|SGH-N600|SGH-N620|SGH-N625|SGH-N700|SGH-N710|SGH-P107|SGH-P207|SGH-P300|SGH-P310|SGH-P520|SGH-P735|SGH-P777|SGH-Q105|SGH-R210|SGH-R220|SGH-R225|SGH-S105|SGH-S307|SGH-T109|SGH-T119|SGH-T139|SGH-T209|SGH-T219|SGH-T229|SGH-T239|SGH-T249|SGH-T259|SGH-T309|SGH-T319|SGH-T329|SGH-T339|SGH-T349|SGH-T359|SGH-T369|SGH-T379|SGH-T409|SGH-T429|SGH-T439|SGH-T459|SGH-T469|SGH-T479|SGH-T499|SGH-T509|SGH-T519|SGH-T539|SGH-T559|SGH-T589|SGH-T609|SGH-T619|SGH-T629|SGH-T639|SGH-T659|SGH-T669|SGH-T679|SGH-T709|SGH-T719|SGH-T729|SGH-T739|SGH-T746|SGH-T749|SGH-T759|SGH-T769|SGH-T809|SGH-T819|SGH-T839|SGH-T919|SGH-T929|SGH-T939|SGH-T959|SGH-T989|SGH-U100|SGH-U200|SGH-U800|SGH-V205|SGH-V206|SGH-X100|SGH-X105|SGH-X120|SGH-X140|SGH-X426|SGH-X427|SGH-X475|SGH-X495|SGH-X497|SGH-X507|SGH-X600|SGH-X610|SGH-X620|SGH-X630|SGH-X700|SGH-X820|SGH-X890|SGH-Z130|SGH-Z150|SGH-Z170|SGH-ZX10|SGH-ZX20|SHW-M110|SPH-A120|SPH-A400|SPH-A420|SPH-A460|SPH-A500|SPH-A560|SPH-A600|SPH-A620|SPH-A660|SPH-A700|SPH-A740|SPH-A760|SPH-A790|SPH-A800|SPH-A820|SPH-A840|SPH-A880|SPH-A900|SPH-A940|SPH-A960|SPH-D600|SPH-D700|SPH-D710|SPH-D720|SPH-I300|SPH-I325|SPH-I330|SPH-I350|SPH-I500|SPH-I600|SPH-I700|SPH-L700|SPH-M100|SPH-M220|SPH-M240|SPH-M300|SPH-M305|SPH-M320|SPH-M330|SPH-M350|SPH-M360|SPH-M370|SPH-M380|SPH-M510|SPH-M540|SPH-M550|SPH-M560|SPH-M570|SPH-M580|SPH-M610|SPH-M620|SPH-M630|SPH-M800|SPH-M810|SPH-M850|SPH-M900|SPH-M910|SPH-M920|SPH-M930|SPH-N100|SPH-N200|SPH-N240|SPH-N300|SPH-N400|SPH-Z400|SWC-E100|SCH-i909|GT-N7100|GT-N7105|SCH-I535|SM-N900A|SGH-I317|SGH-T999L|GT-S5360B|GT-I8262|GT-S6802|GT-S6312|GT-S6310|GT-S5312|GT-S5310|GT-I9105|GT-I8510|GT-S6790N|SM-G7105|SM-N9005|GT-S5301|GT-I9295|GT-I9195|SM-C101|GT-S7392|GT-S7560|GT-B7610|GT-I5510|GT-S7582|GT-S7530E|GT-I8750|SM-G9006V|SM-G9008V|SM-G9009D|SM-G900A|SM-G900D|SM-G900F|SM-G900H|SM-G900I|SM-G900J|SM-G900K|SM-G900L|SM-G900M|SM-G900P|SM-G900R4|SM-G900S|SM-G900T|SM-G900V|SM-G900W8|SHV-E160K|SCH-P709|SCH-P729|SM-T2558|GT-I9205|SM-G9350|SM-J120F|SM-G920F|SM-G920V|SM-G930F|SM-N910C|SM-A310F|GT-I9190|SM-J500FN|SM-G903F|SM-J330F|SM-G610F|SM-G981B|SM-G892A|SM-A530F",LG:"\\bLG\\b;|LG[- ]?(C800|C900|E400|E610|E900|E-900|F160|F180K|F180L|F180S|730|855|L160|LS740|LS840|LS970|LU6200|MS690|MS695|MS770|MS840|MS870|MS910|P500|P700|P705|VM696|AS680|AS695|AX840|C729|E970|GS505|272|C395|E739BK|E960|L55C|L75C|LS696|LS860|P769BK|P350|P500|P509|P870|UN272|US730|VS840|VS950|LN272|LN510|LS670|LS855|LW690|MN270|MN510|P509|P769|P930|UN200|UN270|UN510|UN610|US670|US740|US760|UX265|UX840|VN271|VN530|VS660|VS700|VS740|VS750|VS910|VS920|VS930|VX9200|VX11000|AX840A|LW770|P506|P925|P999|E612|D955|D802|MS323|M257)|LM-G710",Sony:"SonyST|SonyLT|SonyEricsson|SonyEricssonLT15iv|LT18i|E10i|LT28h|LT26w|SonyEricssonMT27i|C5303|C6902|C6903|C6906|C6943|D2533|SOV34|601SO|F8332",Asus:"Asus.*Galaxy|PadFone.*Mobile",Xiaomi:"^(?!.*\\bx11\\b).*xiaomi.*$|POCOPHONE F1|MI 8|Redmi Note 9S|Redmi Note 5A Prime|N2G47H|M2001J2G|M2001J2I|M1805E10A|M2004J11G|M1902F1G|M2002J9G|M2004J19G|M2003J6A1G",NokiaLumia:"Lumia [0-9]{3,4}",Micromax:"Micromax.*\\b(A210|A92|A88|A72|A111|A110Q|A115|A116|A110|A90S|A26|A51|A35|A54|A25|A27|A89|A68|A65|A57|A90)\\b",Palm:"PalmSource|Palm",Vertu:"Vertu|Vertu.*Ltd|Vertu.*Ascent|Vertu.*Ayxta|Vertu.*Constellation(F|Quest)?|Vertu.*Monika|Vertu.*Signature",Pantech:"PANTECH|IM-A850S|IM-A840S|IM-A830L|IM-A830K|IM-A830S|IM-A820L|IM-A810K|IM-A810S|IM-A800S|IM-T100K|IM-A725L|IM-A780L|IM-A775C|IM-A770K|IM-A760S|IM-A750K|IM-A740S|IM-A730S|IM-A720L|IM-A710K|IM-A690L|IM-A690S|IM-A650S|IM-A630K|IM-A600S|VEGA PTL21|PT003|P8010|ADR910L|P6030|P6020|P9070|P4100|P9060|P5000|CDM8992|TXT8045|ADR8995|IS11PT|P2030|P6010|P8000|PT002|IS06|CDM8999|P9050|PT001|TXT8040|P2020|P9020|P2000|P7040|P7000|C790",Fly:"IQ230|IQ444|IQ450|IQ440|IQ442|IQ441|IQ245|IQ256|IQ236|IQ255|IQ235|IQ245|IQ275|IQ240|IQ285|IQ280|IQ270|IQ260|IQ250",Wiko:"KITE 4G|HIGHWAY|GETAWAY|STAIRWAY|DARKSIDE|DARKFULL|DARKNIGHT|DARKMOON|SLIDE|WAX 4G|RAINBOW|BLOOM|SUNSET|GOA(?!nna)|LENNY|BARRY|IGGY|OZZY|CINK FIVE|CINK PEAX|CINK PEAX 2|CINK SLIM|CINK SLIM 2|CINK +|CINK KING|CINK PEAX|CINK SLIM|SUBLIM",iMobile:"i-mobile (IQ|i-STYLE|idea|ZAA|Hitz)",SimValley:"\\b(SP-80|XT-930|SX-340|XT-930|SX-310|SP-360|SP60|SPT-800|SP-120|SPT-800|SP-140|SPX-5|SPX-8|SP-100|SPX-8|SPX-12)\\b",Wolfgang:"AT-B24D|AT-AS50HD|AT-AS40W|AT-AS55HD|AT-AS45q2|AT-B26D|AT-AS50Q",Alcatel:"Alcatel",Nintendo:"Nintendo (3DS|Switch)",Amoi:"Amoi",INQ:"INQ",OnePlus:"ONEPLUS",GenericPhone:"Tapatalk|PDA;|SAGEM|\\bmmp\\b|pocket|\\bpsp\\b|symbian|Smartphone|smartfon|treo|up.browser|up.link|vodafone|\\bwap\\b|nokia|Series40|Series60|S60|SonyEricsson|N900|MAUI.*WAP.*Browser"},tablets:{iPad:"iPad|iPad.*Mobile",NexusTablet:"Android.*Nexus[\\s]+(7|9|10)",GoogleTablet:"Android.*Pixel C",SamsungTablet:"SAMSUNG.*Tablet|Galaxy.*Tab|SC-01C|GT-P1000|GT-P1003|GT-P1010|GT-P3105|GT-P6210|GT-P6800|GT-P6810|GT-P7100|GT-P7300|GT-P7310|GT-P7500|GT-P7510|SCH-I800|SCH-I815|SCH-I905|SGH-I957|SGH-I987|SGH-T849|SGH-T859|SGH-T869|SPH-P100|GT-P3100|GT-P3108|GT-P3110|GT-P5100|GT-P5110|GT-P6200|GT-P7320|GT-P7511|GT-N8000|GT-P8510|SGH-I497|SPH-P500|SGH-T779|SCH-I705|SCH-I915|GT-N8013|GT-P3113|GT-P5113|GT-P8110|GT-N8010|GT-N8005|GT-N8020|GT-P1013|GT-P6201|GT-P7501|GT-N5100|GT-N5105|GT-N5110|SHV-E140K|SHV-E140L|SHV-E140S|SHV-E150S|SHV-E230K|SHV-E230L|SHV-E230S|SHW-M180K|SHW-M180L|SHW-M180S|SHW-M180W|SHW-M300W|SHW-M305W|SHW-M380K|SHW-M380S|SHW-M380W|SHW-M430W|SHW-M480K|SHW-M480S|SHW-M480W|SHW-M485W|SHW-M486W|SHW-M500W|GT-I9228|SCH-P739|SCH-I925|GT-I9200|GT-P5200|GT-P5210|GT-P5210X|SM-T311|SM-T310|SM-T310X|SM-T210|SM-T210R|SM-T211|SM-P600|SM-P601|SM-P605|SM-P900|SM-P901|SM-T217|SM-T217A|SM-T217S|SM-P6000|SM-T3100|SGH-I467|XE500|SM-T110|GT-P5220|GT-I9200X|GT-N5110X|GT-N5120|SM-P905|SM-T111|SM-T2105|SM-T315|SM-T320|SM-T320X|SM-T321|SM-T520|SM-T525|SM-T530NU|SM-T230NU|SM-T330NU|SM-T900|XE500T1C|SM-P605V|SM-P905V|SM-T337V|SM-T537V|SM-T707V|SM-T807V|SM-P600X|SM-P900X|SM-T210X|SM-T230|SM-T230X|SM-T325|GT-P7503|SM-T531|SM-T330|SM-T530|SM-T705|SM-T705C|SM-T535|SM-T331|SM-T800|SM-T700|SM-T537|SM-T807|SM-P907A|SM-T337A|SM-T537A|SM-T707A|SM-T807A|SM-T237|SM-T807P|SM-P607T|SM-T217T|SM-T337T|SM-T807T|SM-T116NQ|SM-T116BU|SM-P550|SM-T350|SM-T550|SM-T9000|SM-P9000|SM-T705Y|SM-T805|GT-P3113|SM-T710|SM-T810|SM-T815|SM-T360|SM-T533|SM-T113|SM-T335|SM-T715|SM-T560|SM-T670|SM-T677|SM-T377|SM-T567|SM-T357T|SM-T555|SM-T561|SM-T713|SM-T719|SM-T813|SM-T819|SM-T580|SM-T355Y?|SM-T280|SM-T817A|SM-T820|SM-W700|SM-P580|SM-T587|SM-P350|SM-P555M|SM-P355M|SM-T113NU|SM-T815Y|SM-T585|SM-T285|SM-T825|SM-W708|SM-T835|SM-T830|SM-T837V|SM-T720|SM-T510|SM-T387V|SM-P610|SM-T290|SM-T515|SM-T590|SM-T595|SM-T725|SM-T817P|SM-P585N0|SM-T395|SM-T295|SM-T865|SM-P610N|SM-P615|SM-T970|SM-T380|SM-T5950|SM-T905|SM-T231|SM-T500|SM-T860",Kindle:"Kindle|Silk.*Accelerated|Android.*\\b(KFOT|KFTT|KFJWI|KFJWA|KFOTE|KFSOWI|KFTHWI|KFTHWA|KFAPWI|KFAPWA|WFJWAE|KFSAWA|KFSAWI|KFASWI|KFARWI|KFFOWI|KFGIWI|KFMEWI)\\b|Android.*Silk/[0-9.]+ like Chrome/[0-9.]+ (?!Mobile)",SurfaceTablet:"Windows NT [0-9.]+; ARM;.*(Tablet|ARMBJS)",HPTablet:"HP Slate (7|8|10)|HP ElitePad 900|hp-tablet|EliteBook.*Touch|HP 8|Slate 21|HP SlateBook 10",AsusTablet:"^.*PadFone((?!Mobile).)*$|Transformer|TF101|TF101G|TF300T|TF300TG|TF300TL|TF700T|TF700KL|TF701T|TF810C|ME171|ME301T|ME302C|ME371MG|ME370T|ME372MG|ME172V|ME173X|ME400C|Slider SL101|\\bK00F\\b|\\bK00C\\b|\\bK00E\\b|\\bK00L\\b|TX201LA|ME176C|ME102A|\\bM80TA\\b|ME372CL|ME560CG|ME372CG|ME302KL| K010 | K011 | K017 | K01E |ME572C|ME103K|ME170C|ME171C|\\bME70C\\b|ME581C|ME581CL|ME8510C|ME181C|P01Y|PO1MA|P01Z|\\bP027\\b|\\bP024\\b|\\bP00C\\b",BlackBerryTablet:"PlayBook|RIM Tablet",HTCtablet:"HTC_Flyer_P512|HTC Flyer|HTC Jetstream|HTC-P715a|HTC EVO View 4G|PG41200|PG09410",MotorolaTablet:"xoom|sholest|MZ615|MZ605|MZ505|MZ601|MZ602|MZ603|MZ604|MZ606|MZ607|MZ608|MZ609|MZ615|MZ616|MZ617",NookTablet:"Android.*Nook|NookColor|nook browser|BNRV200|BNRV200A|BNTV250|BNTV250A|BNTV400|BNTV600|LogicPD Zoom2",AcerTablet:"Android.*; \\b(A100|A101|A110|A200|A210|A211|A500|A501|A510|A511|A700|A701|W500|W500P|W501|W501P|W510|W511|W700|G100|G100W|B1-A71|B1-710|B1-711|A1-810|A1-811|A1-830)\\b|W3-810|\\bA3-A10\\b|\\bA3-A11\\b|\\bA3-A20\\b|\\bA3-A30|A3-A40",ToshibaTablet:"Android.*(AT100|AT105|AT200|AT205|AT270|AT275|AT300|AT305|AT1S5|AT500|AT570|AT700|AT830)|TOSHIBA.*FOLIO",LGTablet:"\\bL-06C|LG-V909|LG-V900|LG-V700|LG-V510|LG-V500|LG-V410|LG-V400|LG-VK810\\b",FujitsuTablet:"Android.*\\b(F-01D|F-02F|F-05E|F-10D|M532|Q572)\\b",PrestigioTablet:"PMP3170B|PMP3270B|PMP3470B|PMP7170B|PMP3370B|PMP3570C|PMP5870C|PMP3670B|PMP5570C|PMP5770D|PMP3970B|PMP3870C|PMP5580C|PMP5880D|PMP5780D|PMP5588C|PMP7280C|PMP7280C3G|PMP7280|PMP7880D|PMP5597D|PMP5597|PMP7100D|PER3464|PER3274|PER3574|PER3884|PER5274|PER5474|PMP5097CPRO|PMP5097|PMP7380D|PMP5297C|PMP5297C_QUAD|PMP812E|PMP812E3G|PMP812F|PMP810E|PMP880TD|PMT3017|PMT3037|PMT3047|PMT3057|PMT7008|PMT5887|PMT5001|PMT5002",LenovoTablet:"Lenovo TAB|Idea(Tab|Pad)( A1|A10| K1|)|ThinkPad([ ]+)?Tablet|YT3-850M|YT3-X90L|YT3-X90F|YT3-X90X|Lenovo.*(S2109|S2110|S5000|S6000|K3011|A3000|A3500|A1000|A2107|A2109|A1107|A5500|A7600|B6000|B8000|B8080)(-|)(FL|F|HV|H|)|TB-X103F|TB-X304X|TB-X304F|TB-X304L|TB-X505F|TB-X505L|TB-X505X|TB-X605F|TB-X605L|TB-8703F|TB-8703X|TB-8703N|TB-8704N|TB-8704F|TB-8704X|TB-8704V|TB-7304F|TB-7304I|TB-7304X|Tab2A7-10F|Tab2A7-20F|TB2-X30L|YT3-X50L|YT3-X50F|YT3-X50M|YT-X705F|YT-X703F|YT-X703L|YT-X705L|YT-X705X|TB2-X30F|TB2-X30L|TB2-X30M|A2107A-F|A2107A-H|TB3-730F|TB3-730M|TB3-730X|TB-7504F|TB-7504X|TB-X704F|TB-X104F|TB3-X70F|TB-X705F|TB-8504F|TB3-X70L|TB3-710F|TB-X704L",DellTablet:"Venue 11|Venue 8|Venue 7|Dell Streak 10|Dell Streak 7",YarvikTablet:"Android.*\\b(TAB210|TAB211|TAB224|TAB250|TAB260|TAB264|TAB310|TAB360|TAB364|TAB410|TAB411|TAB420|TAB424|TAB450|TAB460|TAB461|TAB464|TAB465|TAB467|TAB468|TAB07-100|TAB07-101|TAB07-150|TAB07-151|TAB07-152|TAB07-200|TAB07-201-3G|TAB07-210|TAB07-211|TAB07-212|TAB07-214|TAB07-220|TAB07-400|TAB07-485|TAB08-150|TAB08-200|TAB08-201-3G|TAB08-201-30|TAB09-100|TAB09-211|TAB09-410|TAB10-150|TAB10-201|TAB10-211|TAB10-400|TAB10-410|TAB13-201|TAB274EUK|TAB275EUK|TAB374EUK|TAB462EUK|TAB474EUK|TAB9-200)\\b",MedionTablet:"Android.*\\bOYO\\b|LIFE.*(P9212|P9514|P9516|S9512)|LIFETAB",ArnovaTablet:"97G4|AN10G2|AN7bG3|AN7fG3|AN8G3|AN8cG3|AN7G3|AN9G3|AN7dG3|AN7dG3ST|AN7dG3ChildPad|AN10bG3|AN10bG3DT|AN9G2",IntensoTablet:"INM8002KP|INM1010FP|INM805ND|Intenso Tab|TAB1004",IRUTablet:"M702pro",MegafonTablet:"MegaFon V9|\\bZTE V9\\b|Android.*\\bMT7A\\b",EbodaTablet:"E-Boda (Supreme|Impresspeed|Izzycomm|Essential)",AllViewTablet:"Allview.*(Viva|Alldro|City|Speed|All TV|Frenzy|Quasar|Shine|TX1|AX1|AX2)",ArchosTablet:"\\b(101G9|80G9|A101IT)\\b|Qilive 97R|Archos5|\\bARCHOS (70|79|80|90|97|101|FAMILYPAD|)(b|c|)(G10| Cobalt| TITANIUM(HD|)| Xenon| Neon|XSK| 2| XS 2| PLATINUM| CARBON|GAMEPAD)\\b",AinolTablet:"NOVO7|NOVO8|NOVO10|Novo7Aurora|Novo7Basic|NOVO7PALADIN|novo9-Spark",NokiaLumiaTablet:"Lumia 2520",SonyTablet:"Sony.*Tablet|Xperia Tablet|Sony Tablet S|SO-03E|SGPT12|SGPT13|SGPT114|SGPT121|SGPT122|SGPT123|SGPT111|SGPT112|SGPT113|SGPT131|SGPT132|SGPT133|SGPT211|SGPT212|SGPT213|SGP311|SGP312|SGP321|EBRD1101|EBRD1102|EBRD1201|SGP351|SGP341|SGP511|SGP512|SGP521|SGP541|SGP551|SGP621|SGP641|SGP612|SOT31|SGP771|SGP611|SGP612|SGP712",PhilipsTablet:"\\b(PI2010|PI3000|PI3100|PI3105|PI3110|PI3205|PI3210|PI3900|PI4010|PI7000|PI7100)\\b",CubeTablet:"Android.*(K8GT|U9GT|U10GT|U16GT|U17GT|U18GT|U19GT|U20GT|U23GT|U30GT)|CUBE U8GT",CobyTablet:"MID1042|MID1045|MID1125|MID1126|MID7012|MID7014|MID7015|MID7034|MID7035|MID7036|MID7042|MID7048|MID7127|MID8042|MID8048|MID8127|MID9042|MID9740|MID9742|MID7022|MID7010",MIDTablet:"M9701|M9000|M9100|M806|M1052|M806|T703|MID701|MID713|MID710|MID727|MID760|MID830|MID728|MID933|MID125|MID810|MID732|MID120|MID930|MID800|MID731|MID900|MID100|MID820|MID735|MID980|MID130|MID833|MID737|MID960|MID135|MID860|MID736|MID140|MID930|MID835|MID733|MID4X10",MSITablet:"MSI \\b(Primo 73K|Primo 73L|Primo 81L|Primo 77|Primo 93|Primo 75|Primo 76|Primo 73|Primo 81|Primo 91|Primo 90|Enjoy 71|Enjoy 7|Enjoy 10)\\b",SMiTTablet:"Android.*(\\bMID\\b|MID-560|MTV-T1200|MTV-PND531|MTV-P1101|MTV-PND530)",RockChipTablet:"Android.*(RK2818|RK2808A|RK2918|RK3066)|RK2738|RK2808A",FlyTablet:"IQ310|Fly Vision",bqTablet:"Android.*(bq)?.*\\b(Elcano|Curie|Edison|Maxwell|Kepler|Pascal|Tesla|Hypatia|Platon|Newton|Livingstone|Cervantes|Avant|Aquaris ([E|M]10|M8))\\b|Maxwell.*Lite|Maxwell.*Plus",HuaweiTablet:"MediaPad|MediaPad 7 Youth|IDEOS S7|S7-201c|S7-202u|S7-101|S7-103|S7-104|S7-105|S7-106|S7-201|S7-Slim|M2-A01L|BAH-L09|BAH-W09|AGS-L09|CMR-AL19",NecTablet:"\\bN-06D|\\bN-08D",PantechTablet:"Pantech.*P4100",BronchoTablet:"Broncho.*(N701|N708|N802|a710)",VersusTablet:"TOUCHPAD.*[78910]|\\bTOUCHTAB\\b",ZyncTablet:"z1000|Z99 2G|z930|z990|z909|Z919|z900",PositivoTablet:"TB07STA|TB10STA|TB07FTA|TB10FTA",NabiTablet:"Android.*\\bNabi",KoboTablet:"Kobo Touch|\\bK080\\b|\\bVox\\b Build|\\bArc\\b Build",DanewTablet:"DSlide.*\\b(700|701R|702|703R|704|802|970|971|972|973|974|1010|1012)\\b",TexetTablet:"NaviPad|TB-772A|TM-7045|TM-7055|TM-9750|TM-7016|TM-7024|TM-7026|TM-7041|TM-7043|TM-7047|TM-8041|TM-9741|TM-9747|TM-9748|TM-9751|TM-7022|TM-7021|TM-7020|TM-7011|TM-7010|TM-7023|TM-7025|TM-7037W|TM-7038W|TM-7027W|TM-9720|TM-9725|TM-9737W|TM-1020|TM-9738W|TM-9740|TM-9743W|TB-807A|TB-771A|TB-727A|TB-725A|TB-719A|TB-823A|TB-805A|TB-723A|TB-715A|TB-707A|TB-705A|TB-709A|TB-711A|TB-890HD|TB-880HD|TB-790HD|TB-780HD|TB-770HD|TB-721HD|TB-710HD|TB-434HD|TB-860HD|TB-840HD|TB-760HD|TB-750HD|TB-740HD|TB-730HD|TB-722HD|TB-720HD|TB-700HD|TB-500HD|TB-470HD|TB-431HD|TB-430HD|TB-506|TB-504|TB-446|TB-436|TB-416|TB-146SE|TB-126SE",PlaystationTablet:"Playstation.*(Portable|Vita)",TrekstorTablet:"ST10416-1|VT10416-1|ST70408-1|ST702xx-1|ST702xx-2|ST80208|ST97216|ST70104-2|VT10416-2|ST10216-2A|SurfTab",PyleAudioTablet:"\\b(PTBL10CEU|PTBL10C|PTBL72BC|PTBL72BCEU|PTBL7CEU|PTBL7C|PTBL92BC|PTBL92BCEU|PTBL9CEU|PTBL9CUK|PTBL9C)\\b",AdvanTablet:"Android.* \\b(E3A|T3X|T5C|T5B|T3E|T3C|T3B|T1J|T1F|T2A|T1H|T1i|E1C|T1-E|T5-A|T4|E1-B|T2Ci|T1-B|T1-D|O1-A|E1-A|T1-A|T3A|T4i)\\b ",DanyTechTablet:"Genius Tab G3|Genius Tab S2|Genius Tab Q3|Genius Tab G4|Genius Tab Q4|Genius Tab G-II|Genius TAB GII|Genius TAB GIII|Genius Tab S1",GalapadTablet:"Android [0-9.]+; [a-z-]+; \\bG1\\b",MicromaxTablet:"Funbook|Micromax.*\\b(P250|P560|P360|P362|P600|P300|P350|P500|P275)\\b",KarbonnTablet:"Android.*\\b(A39|A37|A34|ST8|ST10|ST7|Smart Tab3|Smart Tab2)\\b",AllFineTablet:"Fine7 Genius|Fine7 Shine|Fine7 Air|Fine8 Style|Fine9 More|Fine10 Joy|Fine11 Wide",PROSCANTablet:"\\b(PEM63|PLT1023G|PLT1041|PLT1044|PLT1044G|PLT1091|PLT4311|PLT4311PL|PLT4315|PLT7030|PLT7033|PLT7033D|PLT7035|PLT7035D|PLT7044K|PLT7045K|PLT7045KB|PLT7071KG|PLT7072|PLT7223G|PLT7225G|PLT7777G|PLT7810K|PLT7849G|PLT7851G|PLT7852G|PLT8015|PLT8031|PLT8034|PLT8036|PLT8080K|PLT8082|PLT8088|PLT8223G|PLT8234G|PLT8235G|PLT8816K|PLT9011|PLT9045K|PLT9233G|PLT9735|PLT9760G|PLT9770G)\\b",YONESTablet:"BQ1078|BC1003|BC1077|RK9702|BC9730|BC9001|IT9001|BC7008|BC7010|BC708|BC728|BC7012|BC7030|BC7027|BC7026",ChangJiaTablet:"TPC7102|TPC7103|TPC7105|TPC7106|TPC7107|TPC7201|TPC7203|TPC7205|TPC7210|TPC7708|TPC7709|TPC7712|TPC7110|TPC8101|TPC8103|TPC8105|TPC8106|TPC8203|TPC8205|TPC8503|TPC9106|TPC9701|TPC97101|TPC97103|TPC97105|TPC97106|TPC97111|TPC97113|TPC97203|TPC97603|TPC97809|TPC97205|TPC10101|TPC10103|TPC10106|TPC10111|TPC10203|TPC10205|TPC10503",GUTablet:"TX-A1301|TX-M9002|Q702|kf026",PointOfViewTablet:"TAB-P506|TAB-navi-7-3G-M|TAB-P517|TAB-P-527|TAB-P701|TAB-P703|TAB-P721|TAB-P731N|TAB-P741|TAB-P825|TAB-P905|TAB-P925|TAB-PR945|TAB-PL1015|TAB-P1025|TAB-PI1045|TAB-P1325|TAB-PROTAB[0-9]+|TAB-PROTAB25|TAB-PROTAB26|TAB-PROTAB27|TAB-PROTAB26XL|TAB-PROTAB2-IPS9|TAB-PROTAB30-IPS9|TAB-PROTAB25XXL|TAB-PROTAB26-IPS10|TAB-PROTAB30-IPS10",OvermaxTablet:"OV-(SteelCore|NewBase|Basecore|Baseone|Exellen|Quattor|EduTab|Solution|ACTION|BasicTab|TeddyTab|MagicTab|Stream|TB-08|TB-09)|Qualcore 1027",HCLTablet:"HCL.*Tablet|Connect-3G-2.0|Connect-2G-2.0|ME Tablet U1|ME Tablet U2|ME Tablet G1|ME Tablet X1|ME Tablet Y2|ME Tablet Sync",DPSTablet:"DPS Dream 9|DPS Dual 7",VistureTablet:"V97 HD|i75 3G|Visture V4( HD)?|Visture V5( HD)?|Visture V10",CrestaTablet:"CTP(-)?810|CTP(-)?818|CTP(-)?828|CTP(-)?838|CTP(-)?888|CTP(-)?978|CTP(-)?980|CTP(-)?987|CTP(-)?988|CTP(-)?989",MediatekTablet:"\\bMT8125|MT8389|MT8135|MT8377\\b",ConcordeTablet:"Concorde([ ]+)?Tab|ConCorde ReadMan",GoCleverTablet:"GOCLEVER TAB|A7GOCLEVER|M1042|M7841|M742|R1042BK|R1041|TAB A975|TAB A7842|TAB A741|TAB A741L|TAB M723G|TAB M721|TAB A1021|TAB I921|TAB R721|TAB I720|TAB T76|TAB R70|TAB R76.2|TAB R106|TAB R83.2|TAB M813G|TAB I721|GCTA722|TAB I70|TAB I71|TAB S73|TAB R73|TAB R74|TAB R93|TAB R75|TAB R76.1|TAB A73|TAB A93|TAB A93.2|TAB T72|TAB R83|TAB R974|TAB R973|TAB A101|TAB A103|TAB A104|TAB A104.2|R105BK|M713G|A972BK|TAB A971|TAB R974.2|TAB R104|TAB R83.3|TAB A1042",ModecomTablet:"FreeTAB 9000|FreeTAB 7.4|FreeTAB 7004|FreeTAB 7800|FreeTAB 2096|FreeTAB 7.5|FreeTAB 1014|FreeTAB 1001 |FreeTAB 8001|FreeTAB 9706|FreeTAB 9702|FreeTAB 7003|FreeTAB 7002|FreeTAB 1002|FreeTAB 7801|FreeTAB 1331|FreeTAB 1004|FreeTAB 8002|FreeTAB 8014|FreeTAB 9704|FreeTAB 1003",VoninoTablet:"\\b(Argus[ _]?S|Diamond[ _]?79HD|Emerald[ _]?78E|Luna[ _]?70C|Onyx[ _]?S|Onyx[ _]?Z|Orin[ _]?HD|Orin[ _]?S|Otis[ _]?S|SpeedStar[ _]?S|Magnet[ _]?M9|Primus[ _]?94[ _]?3G|Primus[ _]?94HD|Primus[ _]?QS|Android.*\\bQ8\\b|Sirius[ _]?EVO[ _]?QS|Sirius[ _]?QS|Spirit[ _]?S)\\b",ECSTablet:"V07OT2|TM105A|S10OT1|TR10CS1",StorexTablet:"eZee[_']?(Tab|Go)[0-9]+|TabLC7|Looney Tunes Tab",VodafoneTablet:"SmartTab([ ]+)?[0-9]+|SmartTabII10|SmartTabII7|VF-1497|VFD 1400",EssentielBTablet:"Smart[ ']?TAB[ ]+?[0-9]+|Family[ ']?TAB2",RossMoorTablet:"RM-790|RM-997|RMD-878G|RMD-974R|RMT-705A|RMT-701|RME-601|RMT-501|RMT-711",iMobileTablet:"i-mobile i-note",TolinoTablet:"tolino tab [0-9.]+|tolino shine",AudioSonicTablet:"\\bC-22Q|T7-QC|T-17B|T-17P\\b",AMPETablet:"Android.* A78 ",SkkTablet:"Android.* (SKYPAD|PHOENIX|CYCLOPS)",TecnoTablet:"TECNO P9|TECNO DP8D",JXDTablet:"Android.* \\b(F3000|A3300|JXD5000|JXD3000|JXD2000|JXD300B|JXD300|S5800|S7800|S602b|S5110b|S7300|S5300|S602|S603|S5100|S5110|S601|S7100a|P3000F|P3000s|P101|P200s|P1000m|P200m|P9100|P1000s|S6600b|S908|P1000|P300|S18|S6600|S9100)\\b",iJoyTablet:"Tablet (Spirit 7|Essentia|Galatea|Fusion|Onix 7|Landa|Titan|Scooby|Deox|Stella|Themis|Argon|Unique 7|Sygnus|Hexen|Finity 7|Cream|Cream X2|Jade|Neon 7|Neron 7|Kandy|Scape|Saphyr 7|Rebel|Biox|Rebel|Rebel 8GB|Myst|Draco 7|Myst|Tab7-004|Myst|Tadeo Jones|Tablet Boing|Arrow|Draco Dual Cam|Aurix|Mint|Amity|Revolution|Finity 9|Neon 9|T9w|Amity 4GB Dual Cam|Stone 4GB|Stone 8GB|Andromeda|Silken|X2|Andromeda II|Halley|Flame|Saphyr 9,7|Touch 8|Planet|Triton|Unique 10|Hexen 10|Memphis 4GB|Memphis 8GB|Onix 10)",FX2Tablet:"FX2 PAD7|FX2 PAD10",XoroTablet:"KidsPAD 701|PAD[ ]?712|PAD[ ]?714|PAD[ ]?716|PAD[ ]?717|PAD[ ]?718|PAD[ ]?720|PAD[ ]?721|PAD[ ]?722|PAD[ ]?790|PAD[ ]?792|PAD[ ]?900|PAD[ ]?9715D|PAD[ ]?9716DR|PAD[ ]?9718DR|PAD[ ]?9719QR|PAD[ ]?9720QR|TelePAD1030|Telepad1032|TelePAD730|TelePAD731|TelePAD732|TelePAD735Q|TelePAD830|TelePAD9730|TelePAD795|MegaPAD 1331|MegaPAD 1851|MegaPAD 2151",ViewsonicTablet:"ViewPad 10pi|ViewPad 10e|ViewPad 10s|ViewPad E72|ViewPad7|ViewPad E100|ViewPad 7e|ViewSonic VB733|VB100a",VerizonTablet:"QTAQZ3|QTAIR7|QTAQTZ3|QTASUN1|QTASUN2|QTAXIA1",OdysTablet:"LOOX|XENO10|ODYS[ -](Space|EVO|Xpress|NOON)|\\bXELIO\\b|Xelio10Pro|XELIO7PHONETAB|XELIO10EXTREME|XELIOPT2|NEO_QUAD10",CaptivaTablet:"CAPTIVA PAD",IconbitTablet:"NetTAB|NT-3702|NT-3702S|NT-3702S|NT-3603P|NT-3603P|NT-0704S|NT-0704S|NT-3805C|NT-3805C|NT-0806C|NT-0806C|NT-0909T|NT-0909T|NT-0907S|NT-0907S|NT-0902S|NT-0902S",TeclastTablet:"T98 4G|\\bP80\\b|\\bX90HD\\b|X98 Air|X98 Air 3G|\\bX89\\b|P80 3G|\\bX80h\\b|P98 Air|\\bX89HD\\b|P98 3G|\\bP90HD\\b|P89 3G|X98 3G|\\bP70h\\b|P79HD 3G|G18d 3G|\\bP79HD\\b|\\bP89s\\b|\\bA88\\b|\\bP10HD\\b|\\bP19HD\\b|G18 3G|\\bP78HD\\b|\\bA78\\b|\\bP75\\b|G17s 3G|G17h 3G|\\bP85t\\b|\\bP90\\b|\\bP11\\b|\\bP98t\\b|\\bP98HD\\b|\\bG18d\\b|\\bP85s\\b|\\bP11HD\\b|\\bP88s\\b|\\bA80HD\\b|\\bA80se\\b|\\bA10h\\b|\\bP89\\b|\\bP78s\\b|\\bG18\\b|\\bP85\\b|\\bA70h\\b|\\bA70\\b|\\bG17\\b|\\bP18\\b|\\bA80s\\b|\\bA11s\\b|\\bP88HD\\b|\\bA80h\\b|\\bP76s\\b|\\bP76h\\b|\\bP98\\b|\\bA10HD\\b|\\bP78\\b|\\bP88\\b|\\bA11\\b|\\bA10t\\b|\\bP76a\\b|\\bP76t\\b|\\bP76e\\b|\\bP85HD\\b|\\bP85a\\b|\\bP86\\b|\\bP75HD\\b|\\bP76v\\b|\\bA12\\b|\\bP75a\\b|\\bA15\\b|\\bP76Ti\\b|\\bP81HD\\b|\\bA10\\b|\\bT760VE\\b|\\bT720HD\\b|\\bP76\\b|\\bP73\\b|\\bP71\\b|\\bP72\\b|\\bT720SE\\b|\\bC520Ti\\b|\\bT760\\b|\\bT720VE\\b|T720-3GE|T720-WiFi",OndaTablet:"\\b(V975i|Vi30|VX530|V701|Vi60|V701s|Vi50|V801s|V719|Vx610w|VX610W|V819i|Vi10|VX580W|Vi10|V711s|V813|V811|V820w|V820|Vi20|V711|VI30W|V712|V891w|V972|V819w|V820w|Vi60|V820w|V711|V813s|V801|V819|V975s|V801|V819|V819|V818|V811|V712|V975m|V101w|V961w|V812|V818|V971|V971s|V919|V989|V116w|V102w|V973|Vi40)\\b[\\s]+|V10 \\b4G\\b",JaytechTablet:"TPC-PA762",BlaupunktTablet:"Endeavour 800NG|Endeavour 1010",DigmaTablet:"\\b(iDx10|iDx9|iDx8|iDx7|iDxD7|iDxD8|iDsQ8|iDsQ7|iDsQ8|iDsD10|iDnD7|3TS804H|iDsQ11|iDj7|iDs10)\\b",EvolioTablet:"ARIA_Mini_wifi|Aria[ _]Mini|Evolio X10|Evolio X7|Evolio X8|\\bEvotab\\b|\\bNeura\\b",LavaTablet:"QPAD E704|\\bIvoryS\\b|E-TAB IVORY|\\bE-TAB\\b",AocTablet:"MW0811|MW0812|MW0922|MTK8382|MW1031|MW0831|MW0821|MW0931|MW0712",MpmanTablet:"MP11 OCTA|MP10 OCTA|MPQC1114|MPQC1004|MPQC994|MPQC974|MPQC973|MPQC804|MPQC784|MPQC780|\\bMPG7\\b|MPDCG75|MPDCG71|MPDC1006|MP101DC|MPDC9000|MPDC905|MPDC706HD|MPDC706|MPDC705|MPDC110|MPDC100|MPDC99|MPDC97|MPDC88|MPDC8|MPDC77|MP709|MID701|MID711|MID170|MPDC703|MPQC1010",CelkonTablet:"CT695|CT888|CT[\\s]?910|CT7 Tab|CT9 Tab|CT3 Tab|CT2 Tab|CT1 Tab|C820|C720|\\bCT-1\\b",WolderTablet:"miTab \\b(DIAMOND|SPACE|BROOKLYN|NEO|FLY|MANHATTAN|FUNK|EVOLUTION|SKY|GOCAR|IRON|GENIUS|POP|MINT|EPSILON|BROADWAY|JUMP|HOP|LEGEND|NEW AGE|LINE|ADVANCE|FEEL|FOLLOW|LIKE|LINK|LIVE|THINK|FREEDOM|CHICAGO|CLEVELAND|BALTIMORE-GH|IOWA|BOSTON|SEATTLE|PHOENIX|DALLAS|IN 101|MasterChef)\\b",MediacomTablet:"M-MPI10C3G|M-SP10EG|M-SP10EGP|M-SP10HXAH|M-SP7HXAH|M-SP10HXBH|M-SP8HXAH|M-SP8MXA",MiTablet:"\\bMI PAD\\b|\\bHM NOTE 1W\\b",NibiruTablet:"Nibiru M1|Nibiru Jupiter One",NexoTablet:"NEXO NOVA|NEXO 10|NEXO AVIO|NEXO FREE|NEXO GO|NEXO EVO|NEXO 3G|NEXO SMART|NEXO KIDDO|NEXO MOBI",LeaderTablet:"TBLT10Q|TBLT10I|TBL-10WDKB|TBL-10WDKBO2013|TBL-W230V2|TBL-W450|TBL-W500|SV572|TBLT7I|TBA-AC7-8G|TBLT79|TBL-8W16|TBL-10W32|TBL-10WKB|TBL-W100",UbislateTablet:"UbiSlate[\\s]?7C",PocketBookTablet:"Pocketbook",KocasoTablet:"\\b(TB-1207)\\b",HisenseTablet:"\\b(F5281|E2371)\\b",Hudl:"Hudl HT7S3|Hudl 2",TelstraTablet:"T-Hub2",GenericTablet:"Android.*\\b97D\\b|Tablet(?!.*PC)|BNTV250A|MID-WCDMA|LogicPD Zoom2|\\bA7EB\\b|CatNova8|A1_07|CT704|CT1002|\\bM721\\b|rk30sdk|\\bEVOTAB\\b|M758A|ET904|ALUMIUM10|Smartfren Tab|Endeavour 1010|Tablet-PC-4|Tagi Tab|\\bM6pro\\b|CT1020W|arc 10HD|\\bTP750\\b|\\bQTAQZ3\\b|WVT101|TM1088|KT107"},oss:{AndroidOS:"Android",BlackBerryOS:"blackberry|\\bBB10\\b|rim tablet os",PalmOS:"PalmOS|avantgo|blazer|elaine|hiptop|palm|plucker|xiino",SymbianOS:"Symbian|SymbOS|Series60|Series40|SYB-[0-9]+|\\bS60\\b",WindowsMobileOS:"Windows CE.*(PPC|Smartphone|Mobile|[0-9]{3}x[0-9]{3})|Windows Mobile|Windows Phone [0-9.]+|WCE;",WindowsPhoneOS:"Windows Phone 10.0|Windows Phone 8.1|Windows Phone 8.0|Windows Phone OS|XBLWP7|ZuneWP7|Windows NT 6.[23]; ARM;",iOS:"\\biPhone.*Mobile|\\biPod|\\biPad|AppleCoreMedia",iPadOS:"CPU OS 13",SailfishOS:"Sailfish",MeeGoOS:"MeeGo",MaemoOS:"Maemo",JavaOS:"J2ME/|\\bMIDP\\b|\\bCLDC\\b",webOS:"webOS|hpwOS",badaOS:"\\bBada\\b",BREWOS:"BREW"},uas:{Chrome:"\\bCrMo\\b|CriOS|Android.*Chrome/[.0-9]* (Mobile)?",Dolfin:"\\bDolfin\\b",Opera:"Opera.*Mini|Opera.*Mobi|Android.*Opera|Mobile.*OPR/[0-9.]+$|Coast/[0-9.]+",Skyfire:"Skyfire",Edge:"\\bEdgiOS\\b|Mobile Safari/[.0-9]* Edge",IE:"IEMobile|MSIEMobile",Firefox:"fennec|firefox.*maemo|(Mobile|Tablet).*Firefox|Firefox.*Mobile|FxiOS",Bolt:"bolt",TeaShark:"teashark",Blazer:"Blazer",Safari:"Version((?!\\bEdgiOS\\b).)*Mobile.*Safari|Safari.*Mobile|MobileSafari",WeChat:"\\bMicroMessenger\\b",UCBrowser:"UC.*Browser|UCWEB",baiduboxapp:"baiduboxapp",baidubrowser:"baidubrowser",DiigoBrowser:"DiigoBrowser",Mercury:"\\bMercury\\b",ObigoBrowser:"Obigo",NetFront:"NF-Browser",GenericBrowser:"NokiaBrowser|OviBrowser|OneBrowser|TwonkyBeamBrowser|SEMC.*Browser|FlyFlow|Minimo|NetFront|Novarra-Vision|MQQBrowser|MicroMessenger",PaleMoon:"Android.*PaleMoon|Mobile.*PaleMoon"},props:{Mobile:"Mobile/[VER]",Build:"Build/[VER]",Version:"Version/[VER]",VendorID:"VendorID/[VER]",iPad:"iPad.*CPU[a-z ]+[VER]",iPhone:"iPhone.*CPU[a-z ]+[VER]",iPod:"iPod.*CPU[a-z ]+[VER]",Kindle:"Kindle/[VER]",Chrome:["Chrome/[VER]","CriOS/[VER]","CrMo/[VER]"],Coast:["Coast/[VER]"],Dolfin:"Dolfin/[VER]",Firefox:["Firefox/[VER]","FxiOS/[VER]"],Fennec:"Fennec/[VER]",Edge:"Edge/[VER]",IE:["IEMobile/[VER];","IEMobile [VER]","MSIE [VER];","Trident/[0-9.]+;.*rv:[VER]"],NetFront:"NetFront/[VER]",NokiaBrowser:"NokiaBrowser/[VER]",Opera:[" OPR/[VER]","Opera Mini/[VER]","Version/[VER]"],"Opera Mini":"Opera Mini/[VER]","Opera Mobi":"Version/[VER]",UCBrowser:["UCWEB[VER]","UC.*Browser/[VER]"],MQQBrowser:"MQQBrowser/[VER]",MicroMessenger:"MicroMessenger/[VER]",baiduboxapp:"baiduboxapp/[VER]",baidubrowser:"baidubrowser/[VER]",SamsungBrowser:"SamsungBrowser/[VER]",Iron:"Iron/[VER]",Safari:["Version/[VER]","Safari/[VER]"],Skyfire:"Skyfire/[VER]",Tizen:"Tizen/[VER]",Webkit:"webkit[ /][VER]",PaleMoon:"PaleMoon/[VER]",SailfishBrowser:"SailfishBrowser/[VER]",Gecko:"Gecko/[VER]",Trident:"Trident/[VER]",Presto:"Presto/[VER]",Goanna:"Goanna/[VER]",iOS:" \\bi?OS\\b [VER][ ;]{1}",Android:"Android [VER]",Sailfish:"Sailfish [VER]",BlackBerry:["BlackBerry[\\w]+/[VER]","BlackBerry.*Version/[VER]","Version/[VER]"],BREW:"BREW [VER]",Java:"Java/[VER]","Windows Phone OS":["Windows Phone OS [VER]","Windows Phone [VER]"],"Windows Phone":"Windows Phone [VER]","Windows CE":"Windows CE/[VER]","Windows NT":"Windows NT [VER]",Symbian:["SymbianOS/[VER]","Symbian/[VER]"],webOS:["webOS/[VER]","hpwOS/[VER];"]},utils:{Bot:"Googlebot|facebookexternalhit|Google-AMPHTML|s~amp-validator|AdsBot-Google|Google Keyword Suggestion|Facebot|YandexBot|YandexMobileBot|bingbot|ia_archiver|AhrefsBot|Ezooms|GSLFbot|WBSearchBot|Twitterbot|TweetmemeBot|Twikle|PaperLiBot|Wotbox|UnwindFetchor|Exabot|MJ12bot|YandexImages|TurnitinBot|Pingdom|contentkingapp|AspiegelBot",MobileBot:"Googlebot-Mobile|AdsBot-Google-Mobile|YahooSeeker/M1A1-R2D2",DesktopMode:"WPDesktop",TV:"SonyDTV|HbbTV",WebKit:"(webkit)[ /]([\\w.]+)",Console:"\\b(Nintendo|Nintendo WiiU|Nintendo 3DS|Nintendo Switch|PLAYSTATION|Xbox)\\b",Watch:"SM-V700"}},g.detectMobileBrowsers={fullPattern:/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i, shortPattern:/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i,tabletPattern:/android|ipad|playbook|silk/i};var h,i=Object.prototype.hasOwnProperty;return g.FALLBACK_PHONE="UnknownPhone",g.FALLBACK_TABLET="UnknownTablet",g.FALLBACK_MOBILE="UnknownMobile",h="isArray"in Array?Array.isArray:function(a){return"[object Array]"===Object.prototype.toString.call(a)},function(){var a,b,c,e,f,j,k=g.mobileDetectRules;for(a in k.props)if(i.call(k.props,a)){for(b=k.props[a],h(b)||(b=[b]),f=b.length,e=0;e<f;++e)c=b[e],j=c.indexOf("[VER]"),j>=0&&(c=c.substring(0,j)+"([\\w._\\+]+)"+c.substring(j+5)),b[e]=new RegExp(c,"i");k.props[a]=b}d(k.oss),d(k.phones),d(k.tablets),d(k.uas),d(k.utils),k.oss0={WindowsPhoneOS:k.oss.WindowsPhoneOS,WindowsMobileOS:k.oss.WindowsMobileOS}}(),g.findMatch=function(a,b){for(var c in a)if(i.call(a,c)&&a[c].test(b))return c;return null},g.findMatches=function(a,b){var c=[];for(var d in a)i.call(a,d)&&a[d].test(b)&&c.push(d);return c},g.getVersionStr=function(a,b){var c,d,e,f,h=g.mobileDetectRules.props;if(i.call(h,a))for(c=h[a],e=c.length,d=0;d<e;++d)if(f=c[d].exec(b),null!==f)return f[1];return null},g.getVersion=function(a,b){var c=g.getVersionStr(a,b);return c?g.prepareVersionNo(c):NaN},g.prepareVersionNo=function(a){var b;return b=a.split(/[a-z._ \/\-]/i),1===b.length&&(a=b[0]),b.length>1&&(a=b[0]+".",b.shift(),a+=b.join("")),Number(a)},g.isMobileFallback=function(a){return g.detectMobileBrowsers.fullPattern.test(a)||g.detectMobileBrowsers.shortPattern.test(a.substr(0,4))},g.isTabletFallback=function(a){return g.detectMobileBrowsers.tabletPattern.test(a)},g.prepareDetectionCache=function(a,c,d){if(a.mobile===b){var e,h,i;return(h=g.findMatch(g.mobileDetectRules.tablets,c))?(a.mobile=a.tablet=h,void(a.phone=null)):(e=g.findMatch(g.mobileDetectRules.phones,c))?(a.mobile=a.phone=e,void(a.tablet=null)):void(g.isMobileFallback(c)?(i=f.isPhoneSized(d),i===b?(a.mobile=g.FALLBACK_MOBILE,a.tablet=a.phone=null):i?(a.mobile=a.phone=g.FALLBACK_PHONE,a.tablet=null):(a.mobile=a.tablet=g.FALLBACK_TABLET,a.phone=null)):g.isTabletFallback(c)?(a.mobile=a.tablet=g.FALLBACK_TABLET,a.phone=null):a.mobile=a.tablet=a.phone=null)}},g.mobileGrade=function(a){var b=null!==a.mobile();return a.os("iOS")&&a.version("iPad")>=4.3||a.os("iOS")&&a.version("iPhone")>=3.1||a.os("iOS")&&a.version("iPod")>=3.1||a.version("Android")>2.1&&a.is("Webkit")||a.version("Windows Phone OS")>=7||a.is("BlackBerry")&&a.version("BlackBerry")>=6||a.match("Playbook.*Tablet")||a.version("webOS")>=1.4&&a.match("Palm|Pre|Pixi")||a.match("hp.*TouchPad")||a.is("Firefox")&&a.version("Firefox")>=12||a.is("Chrome")&&a.is("AndroidOS")&&a.version("Android")>=4||a.is("Skyfire")&&a.version("Skyfire")>=4.1&&a.is("AndroidOS")&&a.version("Android")>=2.3||a.is("Opera")&&a.version("Opera Mobi")>11&&a.is("AndroidOS")||a.is("MeeGoOS")||a.is("Tizen")||a.is("Dolfin")&&a.version("Bada")>=2||(a.is("UC Browser")||a.is("Dolfin"))&&a.version("Android")>=2.3||a.match("Kindle Fire")||a.is("Kindle")&&a.version("Kindle")>=3||a.is("AndroidOS")&&a.is("NookTablet")||a.version("Chrome")>=11&&!b||a.version("Safari")>=5&&!b||a.version("Firefox")>=4&&!b||a.version("MSIE")>=7&&!b||a.version("Opera")>=10&&!b?"A":a.os("iOS")&&a.version("iPad")<4.3||a.os("iOS")&&a.version("iPhone")<3.1||a.os("iOS")&&a.version("iPod")<3.1||a.is("Blackberry")&&a.version("BlackBerry")>=5&&a.version("BlackBerry")<6||a.version("Opera Mini")>=5&&a.version("Opera Mini")<=6.5&&(a.version("Android")>=2.3||a.is("iOS"))||a.match("NokiaN8|NokiaC7|N97.*Series60|Symbian/3")||a.version("Opera Mobi")>=11&&a.is("SymbianOS")?"B":(a.version("BlackBerry")<5||a.match("MSIEMobile|Windows CE.*Mobile")||a.version("Windows Mobile")<=5.2,"C")},g.detectOS=function(a){return g.findMatch(g.mobileDetectRules.oss0,a)||g.findMatch(g.mobileDetectRules.oss,a)},g.getDeviceSmallerSide=function(){return window.screen.width<window.screen.height?window.screen.width:window.screen.height},f.prototype={constructor:f,mobile:function(){return g.prepareDetectionCache(this._cache,this.ua,this.maxPhoneWidth),this._cache.mobile},phone:function(){return g.prepareDetectionCache(this._cache,this.ua,this.maxPhoneWidth),this._cache.phone},tablet:function(){return g.prepareDetectionCache(this._cache,this.ua,this.maxPhoneWidth),this._cache.tablet},userAgent:function(){return this._cache.userAgent===b&&(this._cache.userAgent=g.findMatch(g.mobileDetectRules.uas,this.ua)),this._cache.userAgent},userAgents:function(){return this._cache.userAgents===b&&(this._cache.userAgents=g.findMatches(g.mobileDetectRules.uas,this.ua)),this._cache.userAgents},os:function(){return this._cache.os===b&&(this._cache.os=g.detectOS(this.ua)),this._cache.os},version:function(a){return g.getVersion(a,this.ua)},versionStr:function(a){return g.getVersionStr(a,this.ua)},is:function(b){return c(this.userAgents(),b)||a(b,this.os())||a(b,this.phone())||a(b,this.tablet())||c(g.findMatches(g.mobileDetectRules.utils,this.ua),b)},match:function(a){return a instanceof RegExp||(a=new RegExp(a,"i")),a.test(this.ua)},isPhoneSized:function(a){return f.isPhoneSized(a||this.maxPhoneWidth)},mobileGrade:function(){return this._cache.grade===b&&(this._cache.grade=g.mobileGrade(this)),this._cache.grade}},"undefined"!=typeof window&&window.screen?f.isPhoneSized=function(a){return a<0?b:g.getDeviceSmallerSide()<=a}:f.isPhoneSized=function(){},f._impl=g,f.version="1.4.5 2021-03-13",f})}(function(a){if("undefined"!=typeof module&&module.exports)return function(a){module.exports=a()};if("function"==typeof define&&define.amd)return define;if("undefined"!=typeof window)return function(a){window.MobileDetect=a()};throw new Error("unknown environment")}());var ai_lists=!0,ai_block_class_def="code-block"; if("undefined"!=typeof ai_lists){function X(b,e){for(var p=[];b=b.previousElementSibling;)("undefined"==typeof e||b.matches(e))&&p.push(b);return p}function fa(b,e){for(var p=[];b=b.nextElementSibling;)("undefined"==typeof e||b.matches(e))&&p.push(b);return p}var host_regexp=RegExp(":\\/\\/(.[^/:]+)","i");function ha(b){b=b.match(host_regexp);return null!=b&&1<b.length&&"string"===typeof b[1]&&0<b[1].length?b[1].toLowerCase():null}function Q(b){return b.includes(":")?(b=b.split(":"),1E3*(3600*parseInt(b[0])+ 60*parseInt(b[1])+parseInt(b[2]))):null}function Y(b){try{var e=Date.parse(b);isNaN(e)&&(e=null)}catch(p){e=null}if(null==e&&b.includes(" ")){b=b.split(" ");try{e=Date.parse(b[0]),e+=Q(b[1]),isNaN(e)&&(e=null)}catch(p){e=null}}return e}function Z(){null==document.querySelector("#ai-iab-tcf-bar")&&null==document.querySelector(".ai-list-manual")||"function"!=typeof __tcfapi||"function"!=typeof ai_load_blocks||"undefined"!=typeof ai_iab_tcf_callback_installed||(__tcfapi("addEventListener",2,function(b, e){e&&"useractioncomplete"===b.eventStatus&&(ai_tcData=b,ai_load_blocks(),b=document.querySelector("#ai-iab-tcf-status"),null!=b&&(b.textContent="IAB TCF 2.0 DATA LOADED"),b=document.querySelector("#ai-iab-tcf-bar"),null!=b&&(b.classList.remove("status-error"),b.classList.add("status-ok")))}),ai_iab_tcf_callback_installed=!0)}ai_process_lists=function(b){function e(a,d,k){if(0==a.length){if("!@!"==k)return!0;d!=k&&("true"==k.toLowerCase()?k=!0:"false"==k.toLowerCase()&&(k=!1));return d==k}if("object"!= typeof d&&"array"!=typeof d)return!1;var l=a[0];a=a.slice(1);if("*"==l)for(let [,n]of Object.entries(d)){if(e(a,n,k))return!0}else if(l in d)return e(a,d[l],k);return!1}function p(a,d,k){if("object"!=typeof a||-1==d.indexOf("["))return!1;d=d.replace(/]| /gi,"").split("[");return e(d,a,k)}function z(){if("function"==typeof __tcfapi){var a=document.querySelector("#ai-iab-tcf-status"),d=document.querySelector("#ai-iab-tcf-bar");null!=a&&(a.textContent="IAB TCF 2.0 DETECTED");__tcfapi("getTCData",2,function(k, l){l?(null!=d&&d.classList.add("status-ok"),"tcloaded"==k.eventStatus||"useractioncomplete"==k.eventStatus)?(ai_tcData=k,k.gdprApplies?null!=a&&(a.textContent="IAB TCF 2.0 DATA LOADED"):null!=a&&(a.textContent="IAB TCF 2.0 GDPR DOES NOT APPLY"),null!=d&&(d.classList.remove("status-error"),d.classList.add("status-ok")),setTimeout(function(){ai_process_lists()},10)):"cmpuishown"==k.eventStatus&&(ai_cmpuishown=!0,null!=a&&(a.textContent="IAB TCF 2.0 CMP UI SHOWN"),null!=d&&(d.classList.remove("status-error"), d.classList.add("status-ok"))):(null!=a&&(a.textContent="IAB TCF 2.0 __tcfapi getTCData failed"),null!=d&&(d.classList.remove("status-ok"),d.classList.add("status-error")))})}}function C(a){"function"==typeof __tcfapi?(ai_tcfapi_found=!0,"undefined"==typeof ai_iab_tcf_callback_installed&&Z(),"undefined"==typeof ai_tcData_requested&&(ai_tcData_requested=!0,z(),cookies_need_tcData=!0)):a&&("undefined"==typeof ai_tcfapi_found&&(ai_tcfapi_found=!1,setTimeout(function(){ai_process_lists()},10)),a=document.querySelector("#ai-iab-tcf-status"), null!=a&&(a.textContent="IAB TCF 2.0 MISSING: __tcfapi function not found"),a=document.querySelector("#ai-iab-tcf-bar"),null!=a&&(a.classList.remove("status-ok"),a.classList.add("status-error")))}if(null==b)b=document.querySelectorAll("div.ai-list-data, meta.ai-list-data");else{window.jQuery&&window.jQuery.fn&&b instanceof jQuery&&(b=Array.prototype.slice.call(b));var x=[];b.forEach((a,d)=>{a.matches(".ai-list-data")?x.push(a):(a=a.querySelectorAll(".ai-list-data"),a.length&&a.forEach((k,l)=>{x.push(k)}))}); b=x}if(b.length){b.forEach((a,d)=>{a.classList.remove("ai-list-data")});var L=ia(window.location.search);if(null!=L.referrer)var A=L.referrer;else A=document.referrer,""!=A&&(A=ha(A));var R=window.navigator.userAgent,S=R.toLowerCase(),aa=navigator.language,M=aa.toLowerCase();if("undefined"!==typeof MobileDetect)var ba=new MobileDetect(R);b.forEach((a,d)=>{var k=document.cookie.split(";");k.forEach(function(f,h){k[h]=f.trim()});d=a.closest("div."+ai_block_class_def);var l=!0;if(a.hasAttribute("referer-list")){var n= a.getAttribute("referer-list");n=b64d(n).split(",");var v=a.getAttribute("referer-list-type"),E=!1;n.every((f,h)=>{f=f.trim();if(""==f)return!0;if("*"==f.charAt(0))if("*"==f.charAt(f.length-1)){if(f=f.substr(1,f.length-2),-1!=A.indexOf(f))return E=!0,!1}else{if(f=f.substr(1),A.substr(-f.length)==f)return E=!0,!1}else if("*"==f.charAt(f.length-1)){if(f=f.substr(0,f.length-1),0==A.indexOf(f))return E=!0,!1}else if("#"==f){if(""==A)return E=!0,!1}else if(f==A)return E=!0,!1;return!0});var r=E;switch(v){case "B":r&& (l=!1);break;case "W":r||(l=!1)}}if(l&&a.hasAttribute("client-list")&&"undefined"!==typeof ba)switch(n=a.getAttribute("client-list"),n=b64d(n).split(","),v=a.getAttribute("client-list-type"),r=!1,n.every((f,h)=>{if(""==f.trim())return!0;f.split("&&").every((c,t)=>{t=!0;var w=!1;for(c=c.trim();"!!"==c.substring(0,2);)t=!t,c=c.substring(2);"language:"==c.substring(0,9)&&(w=!0,c=c.substring(9).toLowerCase());var q=!1;w?"*"==c.charAt(0)?"*"==c.charAt(c.length-1)?(c=c.substr(1,c.length-2).toLowerCase(), -1!=M.indexOf(c)&&(q=!0)):(c=c.substr(1).toLowerCase(),M.substr(-c.length)==c&&(q=!0)):"*"==c.charAt(c.length-1)?(c=c.substr(0,c.length-1).toLowerCase(),0==M.indexOf(c)&&(q=!0)):c==M&&(q=!0):"*"==c.charAt(0)?"*"==c.charAt(c.length-1)?(c=c.substr(1,c.length-2).toLowerCase(),-1!=S.indexOf(c)&&(q=!0)):(c=c.substr(1).toLowerCase(),S.substr(-c.length)==c&&(q=!0)):"*"==c.charAt(c.length-1)?(c=c.substr(0,c.length-1).toLowerCase(),0==S.indexOf(c)&&(q=!0)):ba.is(c)&&(q=!0);return(r=q?t:!t)?!0:!1});return r? !1:!0}),v){case "B":r&&(l=!1);break;case "W":r||(l=!1)}var N=n=!1;for(v=1;2>=v;v++)if(l){switch(v){case 1:var g=a.getAttribute("cookie-list");break;case 2:g=a.getAttribute("parameter-list")}if(null!=g){g=b64d(g);switch(v){case 1:var y=a.getAttribute("cookie-list-type");break;case 2:y=a.getAttribute("parameter-list-type")}g=g.replace("tcf-gdpr","tcf-v2[gdprApplies]=true");g=g.replace("tcf-no-gdpr","tcf-v2[gdprApplies]=false");g=g.replace("tcf-google","tcf-v2[vendor][consents][755]=true && tcf-v2[purpose][consents][1]=true"); g=g.replace("tcf-no-google","!!tcf-v2[vendor][consents][755]");g=g.replace("tcf-media.net","tcf-v2[vendor][consents][142]=true && tcf-v2[purpose][consents][1]=true");g=g.replace("tcf-no-media.net","!!tcf-v2[vendor][consents][142]");g=g.replace("tcf-amazon","tcf-v2[vendor][consents][793]=true && tcf-v2[purpose][consents][1]=true");g=g.replace("tcf-no-amazon","!!tcf-v2[vendor][consents][793]");g=g.replace("tcf-ezoic","tcf-v2[vendor][consents][347]=true && tcf-v2[purpose][consents][1]=true");g=g.replace("tcf-no-ezoic", "!!tcf-v2[vendor][consents][347]");var F=g.split(","),ca=[];k.forEach(function(f){f=f.split("=");try{var h=JSON.parse(decodeURIComponent(f[1]))}catch(c){h=decodeURIComponent(f[1])}ca[f[0]]=h});r=!1;var I=a;F.every((f,h)=>{f.split("&&").every((c,t)=>{t=!0;for(c=c.trim();"!!"==c.substring(0,2);)t=!t,c=c.substring(2);var w=c,q="!@!",T="tcf-v2"==w&&"!@!"==q,B=-1!=c.indexOf("["),J=0==c.indexOf("tcf-v2")||0==c.indexOf("euconsent-v2");J=J&&(B||T);-1!=c.indexOf("=")&&(q=c.split("="),w=q[0],q=q[1],B=-1!=w.indexOf("["), J=(J=0==w.indexOf("tcf-v2")||0==w.indexOf("euconsent-v2"))&&(B||T));if(J)document.querySelector("#ai-iab-tcf-status"),B=document.querySelector("#ai-iab-tcf-bar"),null!=B&&(B.style.display="block"),T&&"boolean"==typeof ai_tcfapi_found?r=ai_tcfapi_found?t:!t:"object"==typeof ai_tcData?(null!=B&&B.classList.add("status-ok"),w=w.replace(/]| /gi,"").split("["),w.shift(),r=(w=e(w,ai_tcData,q))?t:!t):"undefined"==typeof ai_tcfapi_found&&(I.classList.add("ai-list-data"),N=!0,"function"==typeof __tcfapi?C(!1): "undefined"==typeof ai_tcData_retrying&&(ai_tcData_retrying=!0,setTimeout(function(){"function"==typeof __tcfapi?C(!1):setTimeout(function(){"function"==typeof __tcfapi?C(!1):setTimeout(function(){C(!0)},3E3)},1E3)},600)));else if(B)r=(w=p(ca,w,q))?t:!t;else{var U=!1;"!@!"==q?k.every(function(ja){return ja.split("=")[0]==c?(U=!0,!1):!0}):U=-1!=k.indexOf(c);r=U?t:!t}return r?!0:!1});return r?!1:!0});r&&(N=!1,I.classList.remove("ai-list-data"));switch(y){case "B":r&&(l=!1);break;case "W":r||(l=!1)}}}a.classList.contains("ai-list-manual")&& (l?(I.classList.remove("ai-list-data"),I.classList.remove("ai-list-manual")):(n=!0,I.classList.add("ai-list-data")));(l||!n&&!N)&&a.hasAttribute("data-debug-info")&&(g=document.querySelector("."+a.dataset.debugInfo),null!=g&&(g=g.parentElement,null!=g&&g.classList.contains("ai-debug-info")&&g.remove()));y=X(a,".ai-debug-bar.ai-debug-lists");var ka=""==A?"#":A;0!=y.length&&y.forEach((f,h)=>{h=f.querySelector(".ai-debug-name.ai-list-info");null!=h&&(h.textContent=ka,h.title=R+"\n"+aa);h=f.querySelector(".ai-debug-name.ai-list-status"); null!=h&&(h.textContent=l?ai_front.visible:ai_front.hidden)});g=!1;if(l&&a.hasAttribute("scheduling-start")&&a.hasAttribute("scheduling-end")&&a.hasAttribute("scheduling-days")){var u=a.getAttribute("scheduling-start");v=a.getAttribute("scheduling-end");y=a.getAttribute("scheduling-days");g=!0;u=b64d(u);F=b64d(v);var V=parseInt(a.getAttribute("scheduling-fallback")),O=parseInt(a.getAttribute("gmt"));if(u.includes("-")||F.includes("-"))P=Y(u)+O,K=Y(F)+O;else var P=Q(u),K=Q(F);P??=0;K??=0;var W=b64d(y).split(","); y=a.getAttribute("scheduling-type");var D=(new Date).getTime()+O;v=new Date(D);var G=v.getDay();0==G?G=6:G--;u.includes("-")||F.includes("-")||(u=(new Date(v.getFullYear(),v.getMonth(),v.getDate())).getTime()+O,D-=u,0>D&&(D+=864E5));scheduling_start_date_ok=D>=P;scheduling_end_date_ok=0==K||D<K;u=scheduling_start_date_ok&&scheduling_end_date_ok&&W.includes(G.toString());switch(y){case "B":u=!u}u||(l=!1);var la=v.toISOString().split(".")[0].replace("T"," ");y=X(a,".ai-debug-bar.ai-debug-scheduling"); 0!=y.length&&y.forEach((f,h)=>{h=f.querySelector(".ai-debug-name.ai-scheduling-info");null!=h&&(h.textContent=la+" "+G+" current_time: "+Math.floor(D.toString()/1E3)+" start_date:"+Math.floor(P/1E3).toString()+"=>"+scheduling_start_date_ok.toString()+" end_date:"+Math.floor(K/1E3).toString()+"=>"+scheduling_end_date_ok.toString()+" days:"+W.toString()+"=>"+W.includes(G.toString()).toString());h=f.querySelector(".ai-debug-name.ai-scheduling-status");null!=h&&(h.textContent=l?ai_front.visible:ai_front.hidden); l||0==V||(f.classList.remove("ai-debug-scheduling"),f.classList.add("ai-debug-fallback"),h=f.querySelector(".ai-debug-name.ai-scheduling-status"),null!=h&&(h.textContent=ai_front.fallback+" = "+V))})}if(n||!l&&N)return!0;a.style.visibility="";a.style.position="";a.style.width="";a.style.height="";a.style.zIndex="";if(l){if(null!=d&&(d.style.visibility="",d.classList.contains("ai-remove-position")&&(d.style.position="")),a.hasAttribute("data-code")){n=b64d(a.dataset.code);u=document.createRange(); g=!0;try{H=u.createContextualFragment(n)}catch(f){g=!1}g&&(null!=a.closest("head")?(a.parentNode.insertBefore(H,a.nextSibling),a.remove()):a.append(H));da(a)}}else if(g&&!u&&0!=V){null!=d&&(d.style.visibility="",d.classList.contains("ai-remove-position")&&d.css({position:""}));n=fa(a,".ai-fallback");0!=n.length&&n.forEach((f,h)=>{f.classList.remove("ai-fallback")});if(a.hasAttribute("data-fallback-code")){n=b64d(a.dataset.fallbackCode);u=document.createRange();g=!0;try{var H=u.createContextualFragment(n)}catch(f){g= !1}g&&a.append(H);da(a)}else a.style.display="none",null!=d&&null==d.querySelector(".ai-debug-block")&&d.hasAttribute("style")&&-1==d.getAttribute("style").indexOf("height:")&&(d.style.display="none");null!=d&&d.hasAttribute("data-ai")&&(d.getAttribute("data-ai"),a.hasAttribute("fallback-tracking")&&(H=a.getAttribute("fallback-tracking"),d.setAttribute("data-ai-"+a.getAttribute("fallback_level"),H)))}else a.style.display="none",null!=d&&(d.removeAttribute("data-ai"),d.classList.remove("ai-track"), null!=d.querySelector(".ai-debug-block")?(d.style.visibility="",d.classList.remove("ai-close"),d.classList.contains("ai-remove-position")&&(d.style.position="")):d.hasAttribute("style")&&-1==d.getAttribute("style").indexOf("height:")&&(d.style.display="none"));a.setAttribute("data-code","");a.setAttribute("data-fallback-code","");null!=d&&d.classList.remove("ai-list-block")})}};function ea(b){b=`; ${document.cookie}`.split(`; ${b}=`);if(2===b.length)return b.pop().split(";").shift()}function ma(b, e,p){ea(b)&&(document.cookie=b+"="+(e?";path="+e:"")+(p?";domain="+p:"")+";expires=Thu, 01 Jan 1970 00:00:01 GMT")}function m(b){ea(b)&&(ma(b,"/",window.location.hostname),document.cookie=b+"=; Path=/; Expires=Thu, 01 Jan 1970 00:00:01 GMT;")}(function(b){"complete"===document.readyState||"loading"!==document.readyState&&!document.documentElement.doScroll?b():document.addEventListener("DOMContentLoaded",b)})(function(){setTimeout(function(){ai_process_lists();setTimeout(function(){Z();if("function"== typeof ai_load_blocks){document.addEventListener("cmplzEnableScripts",e);document.addEventListener("cmplz_event_marketing",e);function e(p){"cmplzEnableScripts"!=p.type&&"all"!==p.consentLevel||ai_load_blocks()}}},50);var b=document.querySelector(".ai-debug-page-type");null!=b&&b.addEventListener("dblclick",e=>{e=document.querySelector("#ai-iab-tcf-status");null!=e&&(e.textContent="CONSENT COOKIES");e=document.querySelector("#ai-iab-tcf-bar");null!=e&&(e.style.display="block")});b=document.querySelector("#ai-iab-tcf-bar"); null!=b&&b.addEventListener("click",e=>{m("euconsent-v2");m("__lxG__consent__v2");m("__lxG__consent__v2_daisybit");m("__lxG__consent__v2_gdaisybit");m("CookieLawInfoConsent");m("cookielawinfo-checkbox-advertisement");m("cookielawinfo-checkbox-analytics");m("cookielawinfo-checkbox-necessary");m("complianz_policy_id");m("complianz_consent_status");m("cmplz_marketing");m("cmplz_consent_status");m("cmplz_preferences");m("cmplz_statistics-anonymous");m("cmplz_choice");m("cmplz_banner-status");m("cmplz_functional"); m("cmplz_policy_id");m("cmplz_statistics");m("moove_gdpr_popup");m("real_cookie_banner-blog:1-tcf");m("real_cookie_banner-blog:1");e=document.querySelector("#ai-iab-tcf-status");null!=e&&(e.textContent="CONSENT COOKIES DELETED")})},5)});function da(b){setTimeout(function(){"function"==typeof ai_process_rotations_in_element&&ai_process_rotations_in_element(b);"function"==typeof ai_process_lists&&ai_process_lists();"function"==typeof ai_process_ip_addresses&&ai_process_ip_addresses();"function"==typeof ai_process_filter_hooks&& ai_process_filter_hooks();"function"==typeof ai_adb_process_blocks&&ai_adb_process_blocks(b);"function"==typeof ai_process_impressions&&1==ai_tracking_finished&&ai_process_impressions();"function"==typeof ai_install_click_trackers&&1==ai_tracking_finished&&ai_install_click_trackers();"function"==typeof ai_install_close_buttons&&ai_install_close_buttons(document)},5)}function ia(b){var e=b?b.split("?")[1]:window.location.search.slice(1);b={};if(e){e=e.split("#")[0];e=e.split("&");for(var p=0;p<e.length;p++){var z= e[p].split("="),C=void 0,x=z[0].replace(/\[\d*\]/,function(L){C=L.slice(1,-1);return""});z="undefined"===typeof z[1]?"":z[1];x=x.toLowerCase();z=z.toLowerCase();b[x]?("string"===typeof b[x]&&(b[x]=[b[x]]),"undefined"===typeof C?b[x].push(z):b[x][C]=z):b[x]=z}}return b}}; ai_run_404462233036 = function(){ ai_document_write=document.write;document.write=function(a){"interactive"==document.readyState?(console.error("document.write called after page load: ",a),"undefined"!=typeof ai_js_errors&&ai_js_errors.push(["document.write called after page load",a,0])):ai_document_write.call(document,a)}; ai_insert ('before', '#nv-footer', b64d ('PGRpdiBjbGFzcz0nY29kZS1ibG9jayBjb2RlLWJsb2NrLTEnIHN0eWxlPSdtYXJnaW46IDhweCAwOyBjbGVhcjogYm90aDsnPgo8ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kOiAjZWZlZmVmIDAlIDAlIG5vLXJlcGVhdCBwYWRkaW5nLWJveDttYXJnaW4tdG9wOiAtOHB4O21hcmdpbi1ib3R0b206IC04cHg7Ym9yZGVyLXRvcDoxcHggc29saWQgI2NjYztib3JkZXItYm90dG9tOjFweCBzb2xpZCAjY2NjOyI+PGRpdiBzdHlsZT0ibWF4LXdpZHRoOjEzNjBweDttYXJnaW46YXV0bzsiPjxkaXYgaWQ9Im1ldGFzbGlkZXItaWQtNTYyODQiIHN0eWxlPSJ3aWR0aDogMTAwJTsgbWFyZ2luOiAwIGF1dG87IiBjbGFzcz0ibWwtc2xpZGVyLTMtNjAtMSBtZXRhc2xpZGVyIG1ldGFzbGlkZXItZmxleCBtZXRhc2xpZGVyLTU2Mjg0IG1sLXNsaWRlciBtcy10aGVtZS1oaWdod2F5IG5hdi1oaWRkZW4iIHJvbGU9InJlZ2lvbiIgYXJpYS1yb2xlZGVzY3JpcHRpb249IlNsaWRlc2hvdyIgYXJpYS1sYWJlbD0iYm90dG9tIGJhbm5lciI+CiAgICA8ZGl2IGlkPSJtZXRhc2xpZGVyX2NvbnRhaW5lcl81NjI4NCI+CiAgICAgICAgPGRpdiBpZD0ibWV0YXNsaWRlcl81NjI4NCIgY2xhc3M9ImZsZXhzbGlkZXIiPgogICAgICAgICAgICA8dWwgYXJpYS1saXZlPSJwb2xpdGUiIGNsYXNzPSJzbGlkZXMiPgogICAgICAgICAgICAgICAgPGxpIHN0eWxlPSJkaXNwbGF5OiBibG9jazsgd2lkdGg6IDEwMCU7IiBjbGFzcz0ic2xpZGUtOTMzODYgbXMtaW1hZ2UiIGFyaWEtcm9sZWRlc2NyaXB0aW9uPSJzbGlkZSIgYXJpYS1sYWJlbD0ic2xpZGUtOTMzODYiPjxhIGhyZWY9Imh0dHBzOi8vd3d3Lm52aWRpYS5jb20vZ3RjLz9udmlkPW52LWludC1ibnItNDYzNTgzIiB0YXJnZXQ9Il9ibGFuayI+PGltZyB3aWR0aD0iMTMyOCIgaGVpZ2h0PSIxODAiIHNyYz0iaHR0cHM6Ly9kZXZlbG9wZXItYmxvZ3MubnZpZGlhLmNvbS93cC1jb250ZW50L3VwbG9hZHMvMjAyNC8xMi9ndGMyNS13ZWItZHJtay1lbWFpbC1mb290ZXItMTM2MHgxODAtcDEuanBnIiBjbGFzcz0ic2xpZGVyLTU2Mjg0IHNsaWRlLTkzMzg2IiBhbHQ9IiIgcmVsPSIiIHRpdGxlPSJndGMyNS13ZWItZHJtay1lbWFpbC1mb290ZXItMTM2MHgxODAtcDEiIGRlY29kaW5nPSJhc3luYyIgbG9hZGluZz0ibGF6eSIgc3Jjc2V0PSJodHRwczovL2RldmVsb3Blci1ibG9ncy5udmlkaWEuY29tL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI0LzEyL2d0YzI1LXdlYi1kcm1rLWVtYWlsLWZvb3Rlci0xMzYweDE4MC1wMS5qcGcgMTMyOHcsIGh0dHBzOi8vZGV2ZWxvcGVyLWJsb2dzLm52aWRpYS5jb20vd3AtY29udGVudC91cGxvYWRzLzIwMjQvMTIvZ3RjMjUtd2ViLWRybWstZW1haWwtZm9vdGVyLTEzNjB4MTgwLXAxLTMwMHg0MS5qcGcgMzAwdywgaHR0cHM6Ly9kZXZlbG9wZXItYmxvZ3MubnZpZGlhLmNvbS93cC1jb250ZW50L3VwbG9hZHMvMjAyNC8xMi9ndGMyNS13ZWItZHJtay1lbWFpbC1mb290ZXItMTM2MHgxODAtcDEtNjI1eDg1LmpwZyA2MjV3LCBodHRwczovL2RldmVsb3Blci1ibG9ncy5udmlkaWEuY29tL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI0LzEyL2d0YzI1LXdlYi1kcm1rLWVtYWlsLWZvb3Rlci0xMzYweDE4MC1wMS0xNzl4MjQuanBnIDE3OXcsIGh0dHBzOi8vZGV2ZWxvcGVyLWJsb2dzLm52aWRpYS5jb20vd3AtY29udGVudC91cGxvYWRzLzIwMjQvMTIvZ3RjMjUtd2ViLWRybWstZW1haWwtZm9vdGVyLTEzNjB4MTgwLXAxLTc2OHgxMDQuanBnIDc2OHcsIGh0dHBzOi8vZGV2ZWxvcGVyLWJsb2dzLm52aWRpYS5jb20vd3AtY29udGVudC91cGxvYWRzLzIwMjQvMTIvZ3RjMjUtd2ViLWRybWstZW1haWwtZm9vdGVyLTEzNjB4MTgwLXAxLTY0NXg4Ny5qcGcgNjQ1dywgaHR0cHM6Ly9kZXZlbG9wZXItYmxvZ3MubnZpZGlhLmNvbS93cC1jb250ZW50L3VwbG9hZHMvMjAyNC8xMi9ndGMyNS13ZWItZHJtay1lbWFpbC1mb290ZXItMTM2MHgxODAtcDEtNTAweDY4LmpwZyA1MDB3LCBodHRwczovL2RldmVsb3Blci1ibG9ncy5udmlkaWEuY29tL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI0LzEyL2d0YzI1LXdlYi1kcm1rLWVtYWlsLWZvb3Rlci0xMzYweDE4MC1wMS0xNjB4MjIuanBnIDE2MHcsIGh0dHBzOi8vZGV2ZWxvcGVyLWJsb2dzLm52aWRpYS5jb20vd3AtY29udGVudC91cGxvYWRzLzIwMjQvMTIvZ3RjMjUtd2ViLWRybWstZW1haWwtZm9vdGVyLTEzNjB4MTgwLXAxLTM2Mng0OS5qcGcgMzYydywgaHR0cHM6Ly9kZXZlbG9wZXItYmxvZ3MubnZpZGlhLmNvbS93cC1jb250ZW50L3VwbG9hZHMvMjAyNC8xMi9ndGMyNS13ZWItZHJtay1lbWFpbC1mb290ZXItMTM2MHgxODAtcDEtODEyeDExMC5qcGcgODEydywgaHR0cHM6Ly9kZXZlbG9wZXItYmxvZ3MubnZpZGlhLmNvbS93cC1jb250ZW50L3VwbG9hZHMvMjAyNC8xMi9ndGMyNS13ZWItZHJtay1lbWFpbC1mb290ZXItMTM2MHgxODAtcDEtMTAyNHgxMzkuanBnIDEwMjR3IiBzaXplcz0iKG1heC13aWR0aDogMTMyOHB4KSAxMDB2dywgMTMyOHB4IiAvPjwvYT48L2xpPgogICAgICAgICAgICA8L3VsPgogICAgICAgIDwvZGl2PgogICAgICAgIAogICAgPC9kaXY+CjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2Pgo=')); }; if (document.readyState === 'complete' || (document.readyState !== 'loading' && !document.documentElement.doScroll)) ai_run_404462233036 (); else document.addEventListener ('DOMContentLoaded', ai_run_404462233036); ai_js_code = true; </script> <div class="sticky-share-buttons"> <ul class="entry-meta-social-links-list"> <li><a data-wpel-link="external" href="https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fdeveloper.nvidia.com%2Fblog%2Fcreate-design-and-deploy-robotics-applications-using-new-nvidia-isaac-foundation-models-and-workflows%2F" class="for-linkedin" target="_blank" rel="follow external noopener">L</a></li> <li><a data-wpel-link="external" href="https://twitter.com/intent/tweet?text=Create%2C+Design%2C+and+Deploy+Robotics+Applications+Using+New+NVIDIA+Isaac+Foundation+Models+and+Workflows+%7C+NVIDIA+Technical+Blog+https%3A%2F%2Fdeveloper.nvidia.com%2Fblog%2Fcreate-design-and-deploy-robotics-applications-using-new-nvidia-isaac-foundation-models-and-workflows%2F" class="for-twitter" target="_blank" rel="follow external noopener">T</a></li> <li><a data-wpel-link="external" href="https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fdeveloper.nvidia.com%2Fblog%2Fcreate-design-and-deploy-robotics-applications-using-new-nvidia-isaac-foundation-models-and-workflows%2F" class="for-facebook" target="_blank" rel="follow external noopener">F</a></li> <li><a data-wpel-link="external" href="https://www.reddit.com/submit?url=https%3A%2F%2Fdeveloper.nvidia.com%2Fblog%2Fcreate-design-and-deploy-robotics-applications-using-new-nvidia-isaac-foundation-models-and-workflows%2F&title=Create%2C+Design%2C+and+Deploy+Robotics+Applications+Using+New+NVIDIA+Isaac+Foundation+Models+and+Workflows+%7C+NVIDIA+Technical+Blog" class="for-reddit" target="_blank" rel="follow external noopener">R</a></li> <li><a href="mailto:?subject=I'd like to share a link with you&body=https%3A%2F%2Fdeveloper.nvidia.com%2Fblog%2Fcreate-design-and-deploy-robotics-applications-using-new-nvidia-isaac-foundation-models-and-workflows%2F" class="for-mail">E</a></li> </ul> </div> </body> </html>