{
  "account_id": "f00000000063367", 
  "date_published": 1755207261263, 
  "key": "-0", 
  "is_universal_capsule_enabled": "true", 
  "capsule_version": "1.0.0.0", 
  "engine_version": "1.0.0.0", 
  "version": 2, 
  "date_created": 1755207261263, 
  "nodes": [
    {
      "feature_group": "_body_open", 
      "script_content": "   \n", 
      "engine_version": "1.0.0.0", 
      "content": "   \n", 
      "date_published": 1755207261263, 
      "non_script_content": "", 
      "date_created": 1755207263543, 
      "type": "bodystr", 
      "publishing_engine": "link-block"
    }, 
    {
      "feature_group": "_head_open", 
      "script_content": "", 
      "engine_version": "1.0.0.0", 
      "content": "<script type='text/javascript'>\nif (window.BEJSSDKObserver === undefined) {\n  (function(BEJSSDKObserver, $, undefined) {\n    var observer = void 0;\n    var listeners = [];\n    var readySet = [];\n    var doc = window.document;\n    var MutationObserver = window.MutationObserver || window.WebKitMutationObserver;\n\n    function checkSelector(selector, fn, indexList) {\n      var elements = doc.querySelectorAll(selector);\n  /**\n    issues on IE @see https://www.codesd.com/item/javascript-es6-not-a-function-error.html\n    elements = Array.from(elements);\n\n    */\n    for (var i = 0, len = elements.length; i < len; i++) {\n      /* -1 means all instances */\n      if (indexList != -1 && !(i in indexList)) {\n        continue;\n      }\n      var element = elements[i];\n      for (var j = 0; j < readySet.length; j++) {\n        if (readySet[j] == element.className || readySet[j] == element.id) {\n          return;\n        }\n      }\n      if (element.className) {\n        readySet.push(element.className);\n      }\n      if (element.id) {\n        readySet.push(element.id);\n      }\n\n      if (!element.ready || MutationObserver==null) {\n        element.ready = true;\n        fn.call(element, element);\n      }\n    }\n  }\n\n  function checkListeners() {\n    listeners.forEach(function (listener) {\n      return checkSelector(listener.selector, listener.fn, listener.indexList);\n    });\n  }\n\n  function removeListener(selector, fn) {\n    var i = listeners.length;\n    while (i--) {\n      var listener = listeners[i];\n      if (listener.selector === selector && listener.fn === fn) {\n        listeners.splice(i, 1);\n        if (!listeners.length && observer) {\n          observer.disconnect();\n          observer = null;\n        }\n      }\n    }\n  }\n\n/**\n * Fire event on first js selector\n * @param selector string to watch on\n * @param fn       callback function\n * @param index_list can be undefined which means only first one\n *                   or -1 which means all\n *                   or a list of allowable indexes\n */\n BEJSSDKObserver.jsElementReady = function(selector, fn, index_list) {\n  if (index_list === undefined) {\n    index_list = [];\n    index_list.push(0);\n  }\n\n  if (MutationObserver != null) {\n    if (!observer) {\n      observer = new MutationObserver(checkListeners);\n      observer.observe(doc.documentElement, {\n        childList: true,\n        subtree: true\n      });\n    }\n    listeners.push({ selector: selector, fn: fn, indexList: index_list });\n  } else {\n    /* <= IE8 */\n    if (!document.addEventListener) {\n      /* log(\"<=IE8 attachEvent assignment\"); */\n      document.addEventListener = document.attachEvent;\n    }\n    document.addEventListener(\"DOMContentLoaded\", function(event) {\n      var elements = doc.querySelectorAll(selector);\n      for (var i = 0, len = elements.length; i < len; i++) {\n        /* -1 means all instances */\n        if (index_list != -1 && !(i in index_list)) {\n          continue;\n        }\n        var element = elements[i];\n        element.ready = true;\n        fn.call(element, element);\n      }\n    });\n  }\n\n  checkSelector(selector, fn, index_list);\n  return function () {\n    return removeListener(selector, fn);\n  };\n};\n}(window.BEJSSDKObserver = window.BEJSSDKObserver || {}));\n}\nvar jsElementReady = window.BEJSSDKObserver.jsElementReady;\n\nif (window.BELinkBlockGenerator === undefined) {\n  (function(BELinkBlockGenerator, $, undefined) {\n    BELinkBlockGenerator.MAXIMUM_HEADLINE_LENGTH = 100;\n    BELinkBlockGenerator.MAXIMUM_DESC_LENGTH = 200;\n\n    BELinkBlockGenerator.IND_LINK_BLOCK_TYPE_URL_TYPE = 0;\n    BELinkBlockGenerator.IND_LINK_BLOCK_TYPE_HEADLINE_TYPE = 1;\n    BELinkBlockGenerator.IND_LINK_BLOCK_TYPE_DESCRIPTION_TYPE = 2;\n    BELinkBlockGenerator.IND_LINK_BLOCK_TYPE_IMAGE_TYPE = 3;\n\n    BELinkBlockGenerator.REPLACEMENT_STRATEGY_OVERWRITE = 0;\n    BELinkBlockGenerator.REPLACEMENT_STRATEGY_POST_APPEND_ELEMENT = 1;\n    BELinkBlockGenerator.REPLACEMENT_STRATEGY_PRE_APPEND_ELEMENT = 2;\n    BELinkBlockGenerator.REPLACEMENT_STRATEGY_PRE_APPEND_PARENT = 3;\n\n    BELinkBlockGenerator.setMaximumHeadlineLength = function(length) {\n      BELinkBlockGenerator.MAXIMUM_HEADLINE_LENGTH = length;\n    };\n\n    BELinkBlockGenerator.setMaximumDescriptionLength = function(length) {\n      BELinkBlockGenerator.MAXIMUM_DESC_LENGTH = length;\n    };\n\n    BELinkBlockGenerator.generateIndividualLinks = function(parentElement, linkStructure, link) {\n      var link_level_element_tag = linkStructure[0];\n      var link_level_element = document.createElement(link_level_element_tag);\n      var link_attribute_dictionary = linkStructure[1];\n      var allowable_elements = linkStructure[2];\n      var children_link_structures = linkStructure[3];\n      for (var link_attribute_key in link_attribute_dictionary) {\n        link_level_element.setAttribute(link_attribute_key, link_attribute_dictionary[link_attribute_key]);\n      }\n\n      var added_something = false;\n      if (allowable_elements.indexOf(BELinkBlockGenerator.IND_LINK_BLOCK_TYPE_URL_TYPE)>=0) {\n        link_level_element.setAttribute('href', link.url);\n        added_something = true;\n      }\n      if (allowable_elements.indexOf(BELinkBlockGenerator.IND_LINK_BLOCK_TYPE_HEADLINE_TYPE)>=0 && link.h1) {\n        var headline_text = link.h1;\n        if (headline_text.length > BELinkBlockGenerator.MAXIMUM_HEADLINE_LENGTH) {\n          headline_text = headline_text.substring(0, BELinkBlockGenerator.MAXIMUM_HEADLINE_LENGTH) + '...';\n        }\n        var text_node = document.createTextNode(headline_text);\n        link_level_element.appendChild(text_node);\n        added_something = true;\n      }\n      if (allowable_elements.indexOf(BELinkBlockGenerator.IND_LINK_BLOCK_TYPE_DESCRIPTION_TYPE)>=0 && link.desc) {\n        var desc_text = link.desc;\n        if (desc_text.length > BELinkBlockGenerator.MAXIMUM_DESC_LENGTH) {\n          desc_text = desc_text.substring(0, BELinkBlockGenerator.MAXIMUM_DESC_LENGTH) + '...';\n        }\n        var text_node = document.createTextNode(desc_text);\n        link_level_element.appendChild(text_node);\n        added_something = true;\n      }\n      if (allowable_elements.indexOf(BELinkBlockGenerator.IND_LINK_BLOCK_TYPE_IMAGE_TYPE)>=0 && link.image) {\n        link_level_element.setAttribute('src', link.image);\n        added_something = true;\n      }\n/**\n    don't emit for empty links, desc, headline, image\n    except for parent structures where allowable_length=0\n    */\n    if (!added_something && allowable_elements.length != 0) {\n\n      return;\n    }\n    /* go depth first */\n    for (var childrenIndex=0; childrenIndex<children_link_structures.length; childrenIndex++) {\n      var childLinkStructure = children_link_structures[childrenIndex];\n      BELinkBlockGenerator.generateIndividualLinks(link_level_element, childLinkStructure, link);\n    }\n    parentElement.appendChild(link_level_element);\n  };\n\n  BELinkBlockGenerator.insertLinkBlocks = function(targetElement, replacementStrategy, overallStructure, linkStructure, links,\n                                                   titleStructure) {\n    if (targetElement == null) {\n      return;\n    }\n\n    if (replacementStrategy == BELinkBlockGenerator.REPLACEMENT_STRATEGY_OVERWRITE) {\n      while (targetElement.firstChild) {\n        targetElement.removeChild(targetElement.firstChild);\n      }\n    }\n\n    var previousElement = targetElement;\n    for (var i=0;i<overallStructure.length;i++) {\n      var level_definition = overallStructure[i];\n      var level_element_tag = level_definition[0];\n      var level_element = document.createElement(level_element_tag);\n      var attribute_dictionary = level_definition[1];\n      for (var attribute_key in attribute_dictionary) {\n        level_element.setAttribute(attribute_key, attribute_dictionary[attribute_key]);\n      }\n\n      /* need to place title structure */\n      if (titleStructure && titleStructure[0] == i) {\n        var title_element_tag = titleStructure[1];\n        var title_element = document.createElement(title_element_tag);\n        var title_attribute_dictionary = titleStructure[2];\n        var title_text_content = titleStructure[3];\n        for (var title_attribute_key in title_attribute_dictionary) {\n          title_element.setAttribute(title_attribute_key, title_attribute_dictionary[title_attribute_key]);\n        }\n\n        var title_text_node = document.createTextNode(title_text_content);\n        title_element.appendChild(title_text_node);\n\n\n        level_element.appendChild(title_element);\n      }\n\n      /* last level place links */\n      if (i == overallStructure.length-1) {\n        for (var link_i=0; link_i < links.length; link_i++) {\n          var link = links[link_i];\n          for (var linkStructureIndex=0;linkStructureIndex < linkStructure.length; linkStructureIndex++) {\n            BELinkBlockGenerator.generateIndividualLinks(level_element, linkStructure[linkStructureIndex], link)\n          }\n        }\n      }\n\n      /* first level child we need to check placement */\n      if (previousElement == targetElement) {\n        if (replacementStrategy == BELinkBlockGenerator.REPLACEMENT_STRATEGY_PRE_APPEND_ELEMENT) {\n          /* 2 means insert right before */\n          previousElement.insertBefore(level_element, targetElement.firstChild);\n        } else if (replacementStrategy == BELinkBlockGenerator.REPLACEMENT_STRATEGY_PRE_APPEND_PARENT) {\n          /* 3 means insert right before at parent level */\n          var parentElement = previousElement.parentElement;\n          parentElement.insertBefore(level_element, previousElement);\n        } else {\n          previousElement.appendChild(level_element);\n        }\n      } else {\n        previousElement.appendChild(level_element);\n      }\n      previousElement = level_element;\n    }\n  };\n}(window.BELinkBlockGenerator = window.BELinkBlockGenerator || {}))\n};\n</script>\n\n<style>\n.be-ix-link-block{background-color:#e7eaeb;position:relative}\n.be-ix-link-block .be-related-link-container{padding:15px 33px;font-family:'lato',Arial,Helvetica,sans-serif}\n.be-ix-link-block .be-related-link-container .be-label{margin:0;font-size:16px;font-weight:800;color:#666}\n.be-ix-link-block .be-related-link-container .be-list{list-style:none;margin:0;padding:0;font-size:16px}\n.be-ix-link-block .be-related-link-container .be-list .be-list-item{display:inline-block;margin-right:20px;font-size:16px}\n.be-ix-link-block .be-related-link-container .be-list .be-list-item:last-child{margin-right:0}\n.be-ix-link-block .be-related-link-container .be-list .be-list-item a{display:inline-block;color:#000;text-decoration:none;font-weight:700;padding:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;transition:color 200ms cubic-bezier(0.35,0,0.25,1),background-color 200ms cubic-bezier(0.35,0,0.25,1)}\n.be-ix-link-block .be-related-link-container .be-list .be-list-item a:hover{color:#6b991a}\n@media (max-width: 767px) {\n.be-ix-link-block .be-related-link-container .be-label{width:100%;text-align:left}\n.be-ix-link-block .be-related-link-container .be-list{display:block;width:100%}\n.be-ix-link-block .be-related-link-container .be-list .be-list-item{display:block;text-align:left;width:100%;margin:16px 0}\n.be-ix-link-block .be-related-link-container .be-list .be-list-item:last-child{margin:0}\n}\n@media (min-width: 768px) {\n.be-ix-link-block .be-related-link-container{display:flex;max-width:1440px;margin:auto}\n.be-ix-link-block .be-related-link-container .be-label{display:inline-block;margin-right:20px;white-space:nowrap;flex-basis:150px;flex-grow:0;flex-shrink:0}\n.be-ix-link-block .be-related-link-container .be-list{width:auto}\n}\n</style>\n", 
      "date_published": 1755207261263, 
      "non_script_content": "<style>\n.be-ix-link-block{background-color:#e7eaeb;position:relative}\n.be-ix-link-block .be-related-link-container{padding:15px 33px;font-family:'lato',Arial,Helvetica,sans-serif}\n.be-ix-link-block .be-related-link-container .be-label{margin:0;font-size:16px;font-weight:800;color:#666}\n.be-ix-link-block .be-related-link-container .be-list{list-style:none;margin:0;padding:0;font-size:16px}\n.be-ix-link-block .be-related-link-container .be-list .be-list-item{display:inline-block;margin-right:20px;font-size:16px}\n.be-ix-link-block .be-related-link-container .be-list .be-list-item:last-child{margin-right:0}\n.be-ix-link-block .be-related-link-container .be-list .be-list-item a{display:inline-block;color:#000;text-decoration:none;font-weight:700;padding:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;transition:color 200ms cubic-bezier(0.35,0,0.25,1),background-color 200ms cubic-bezier(0.35,0,0.25,1)}\n.be-ix-link-block .be-related-link-container .be-list .be-list-item a:hover{color:#6b991a}\n@media (max-width: 767px) {\n.be-ix-link-block .be-related-link-container .be-label{width:100%;text-align:left}\n.be-ix-link-block .be-related-link-container .be-list{display:block;width:100%}\n.be-ix-link-block .be-related-link-container .be-list .be-list-item{display:block;text-align:left;width:100%;margin:16px 0}\n.be-ix-link-block .be-related-link-container .be-list .be-list-item:last-child{margin:0}\n}\n@media (min-width: 768px) {\n.be-ix-link-block .be-related-link-container{display:flex;max-width:1440px;margin:auto}\n.be-ix-link-block .be-related-link-container .be-label{display:inline-block;margin-right:20px;white-space:nowrap;flex-basis:150px;flex-grow:0;flex-shrink:0}\n.be-ix-link-block .be-related-link-container .be-list{width:auto}\n}\n</style>\n", 
      "date_created": 1755207263545, 
      "type": "headstr", 
      "publishing_engine": "pixel"
    }
  ], 
  "config": {
    "page_groups": [
      {
        "priority": 1, 
        "include_rules": [
          "https\\:\\/\\/www\\.juniper\\.net\\/us\\/en\\/(products|solutions|services|research-topics|how-to-buy|it-networking|security|cloud-operator|service-provider).*", 
          "https\\:\\/\\/www\\.juniper\\.net\\/us\\/en\\/the-feed.*", 
          "https\\:\\/\\/www\\.juniper\\.net\\/us\\/en\\/(products|solutions|services|research-topics|how-to-buy|it-networking|security|cloud-operator|service-provider|industry)\\.html"
        ], 
        "name": "US - Marketing (New URLs)", 
        "exclude_rules": [
          "www\\.juniper\\.net\\/us\\/en\\.html", 
          ".*juniper\\.net\\/us\\/en\\/how\\-to\\-buy\\/gb.*", 
          ".*juniper\\.net\\/us\\/en\\/how\\-to\\-buy\\/guided.*", 
          "www\\.juniper\\.net\\/us\\/en\\/executive\\-insights", 
          "https\\:\\/\\/www\\.juniper\\.net\\/us\\/en\\/reports.*", 
          "www\\.juniper\\.net\\/us\\/en\\/the\\-now\\-way\\-to\\-network\\.html", 
          "https\\:\\/\\/www\\.juniper\\.net\\/us\\/en\\/(dm|training|forms|partners|legal-notice|try|feedback|privacy-policy|supplier|company|customers|tools|events)\\.html"
        ]
      }, 
      {
        "priority": 2, 
        "include_rules": [
          "https://www\\.juniper\\.net/documentation/[^/]+/us/en/"
        ], 
        "name": "Documentation", 
        "exclude_rules": [
          "www\\.juniper\\.net\\/documentation\\/en\\_US\\/", 
          "www\\.juniper\\.net\\/documentation\\/hardware", 
          "www\\.juniper\\.net\\/documentation\\/software"
        ]
      }, 
      {
        "priority": 3, 
        "include_rules": [
          "juniper\\.net\\/DisableAllURLs"
        ], 
        "name": "Global Settings", 
        "exclude_rules": []
      }
    ]
  }, 
  "publishing_engine": "ixf-compiler", 
  "page_group_nodes": {
    "excluded_config": [
      {
        "feature_group": "_body_open", 
        "script_content": "   \n", 
        "engine_version": "1.0.0.0", 
        "content": "   \n", 
        "date_published": 1755207261263, 
        "non_script_content": "", 
        "date_created": 1755207263543, 
        "type": "bodystr", 
        "publishing_engine": "link-block"
      }
    ], 
    "US - Marketing (New URLs)": [
      {
        "feature_group": "_body_open", 
        "script_content": "   \n        function positionLinkBlock(targetContainer) {\n            if (targetContainer != null) {\n                var strLinkBlock = '<div class=\"be-related-link-container\"><div class=\"be-label\">Related Information</div><ul class=\"be-list\"><li class=\"be-list-item\"><a class=\"be-related-link\" href=\"https://www.juniper.net/us/en/research-topics/what-is-ai-data-center-networking.html\">What is AI DC networking?</a></li><li class=\"be-list-item\"><a class=\"be-related-link\" href=\"https://www.juniper.net/us/en/products/access-points.html\">Wireless &amp; WiFi Access Points &amp; Edge | HPE...</a></li><li class=\"be-list-item\"><a class=\"be-related-link\" href=\"https://www.juniper.net/us/en/products/sdn-and-orchestration.html\">SDN and Orchestration</a></li></ul></div>';\n                targetContainer.insertAdjacentHTML('afterbegin', strLinkBlock);\n            }\n        }\n    \n        jsElementReady('.be-ix-link-block', positionLinkBlock)\n    \n    \n", 
        "engine_version": "1.0.0.0", 
        "content": "   <script type='text/javascript'>\n        function positionLinkBlock(targetContainer) {\n            if (targetContainer != null) {\n                var strLinkBlock = '<div class=\"be-related-link-container\"><div class=\"be-label\">Related Information</div><ul class=\"be-list\"><li class=\"be-list-item\"><a class=\"be-related-link\" href=\"https://www.juniper.net/us/en/research-topics/what-is-ai-data-center-networking.html\">What is AI DC networking?</a></li><li class=\"be-list-item\"><a class=\"be-related-link\" href=\"https://www.juniper.net/us/en/products/access-points.html\">Wireless &amp; WiFi Access Points &amp; Edge | HPE...</a></li><li class=\"be-list-item\"><a class=\"be-related-link\" href=\"https://www.juniper.net/us/en/products/sdn-and-orchestration.html\">SDN and Orchestration</a></li></ul></div>';\n                targetContainer.insertAdjacentHTML('afterbegin', strLinkBlock);\n            }\n        }\n    \n        jsElementReady('.be-ix-link-block', positionLinkBlock)\n    \n    </script>\n", 
        "date_published": 1755207261263, 
        "non_script_content": "", 
        "date_created": 1755207263543, 
        "type": "bodystr", 
        "publishing_engine": "link-block"
      }
    ], 
    "Documentation": [
      {
        "feature_group": "_body_open", 
        "script_content": "   \n        function positionLinkBlock(targetContainer) {\n            if (targetContainer != null) {\n                var strLinkBlock = '<div class=\"be-related-link-container\"><div class=\"be-label\">Related Information</div><ul class=\"be-list\"><li class=\"be-list-item\"><a class=\"be-related-link\" href=\"https://www.juniper.net/documentation/quickstart/us/en/quick-start/\">Quick Start</a></li><li class=\"be-list-item\"><a class=\"be-related-link\" href=\"https://www.juniper.net/documentation/product/us/en/mist/\">Mist Documentation</a></li></ul></div>';\n                targetContainer.insertAdjacentHTML('afterbegin', strLinkBlock);\n            }\n        }\n    \n        jsElementReady('.be-ix-link-block', positionLinkBlock)\n    \n    \n", 
        "engine_version": "1.0.0.0", 
        "content": "   <script type='text/javascript'>\n        function positionLinkBlock(targetContainer) {\n            if (targetContainer != null) {\n                var strLinkBlock = '<div class=\"be-related-link-container\"><div class=\"be-label\">Related Information</div><ul class=\"be-list\"><li class=\"be-list-item\"><a class=\"be-related-link\" href=\"https://www.juniper.net/documentation/quickstart/us/en/quick-start/\">Quick Start</a></li><li class=\"be-list-item\"><a class=\"be-related-link\" href=\"https://www.juniper.net/documentation/product/us/en/mist/\">Mist Documentation</a></li></ul></div>';\n                targetContainer.insertAdjacentHTML('afterbegin', strLinkBlock);\n            }\n        }\n    \n        jsElementReady('.be-ix-link-block', positionLinkBlock)\n    \n    </script>\n", 
        "date_published": 1755207261263, 
        "non_script_content": "", 
        "date_created": 1755207263543, 
        "type": "bodystr", 
        "publishing_engine": "link-block"
      }
    ], 
    "Global Settings": [
      {
        "feature_group": "_body_open", 
        "script_content": "   \n        function positionLinkBlock(targetContainer) {\n            if (targetContainer != null) {\n                var strLinkBlock = '<div class=\"be-related-link-container\"><div class=\"be-label\">Related Information</div><ul class=\"be-list\"><li class=\"be-list-item\"><a class=\"be-related-link\" href=\"https://www.juniper.net/us/en/research-topics/what-is-5g.html\">What is 5G? | HPE Juniper Networking US</a></li><li class=\"be-list-item\"><a class=\"be-related-link\" href=\"https://www.juniper.net/documentation/us/en/software/junos-pyez/junos-pyez-developer/index.html\">Junos PyEZ Developer Guide</a></li><li class=\"be-list-item\"><a class=\"be-related-link\" href=\"https://www.juniper.net/documentation/us/en/software/junos-ansible/ansible/topics/concept/junos-ansible-modules-overview.html\">Understanding the Ansible for Junos OS...</a></li></ul></div>';\n                targetContainer.insertAdjacentHTML('afterbegin', strLinkBlock);\n            }\n        }\n    \n        jsElementReady('.be-ix-link-block', positionLinkBlock)\n    \n    \n", 
        "engine_version": "1.0.0.0", 
        "content": "   <script type='text/javascript'>\n        function positionLinkBlock(targetContainer) {\n            if (targetContainer != null) {\n                var strLinkBlock = '<div class=\"be-related-link-container\"><div class=\"be-label\">Related Information</div><ul class=\"be-list\"><li class=\"be-list-item\"><a class=\"be-related-link\" href=\"https://www.juniper.net/us/en/research-topics/what-is-5g.html\">What is 5G? | HPE Juniper Networking US</a></li><li class=\"be-list-item\"><a class=\"be-related-link\" href=\"https://www.juniper.net/documentation/us/en/software/junos-pyez/junos-pyez-developer/index.html\">Junos PyEZ Developer Guide</a></li><li class=\"be-list-item\"><a class=\"be-related-link\" href=\"https://www.juniper.net/documentation/us/en/software/junos-ansible/ansible/topics/concept/junos-ansible-modules-overview.html\">Understanding the Ansible for Junos OS...</a></li></ul></div>';\n                targetContainer.insertAdjacentHTML('afterbegin', strLinkBlock);\n            }\n        }\n    \n        jsElementReady('.be-ix-link-block', positionLinkBlock)\n    \n    </script>\n", 
        "date_published": 1755207261263, 
        "non_script_content": "", 
        "date_created": 1755207263543, 
        "type": "bodystr", 
        "publishing_engine": "link-block"
      }
    ]
  }
}